es_sfgtools.pride_tools.pride_file_config module

class es_sfgtools.pride_tools.pride_file_config.AmbiguityFixingOptions(*, ambiguity_co_var: str = 'Default', ambiguity_duration: int = 600, ai_ambiguity_validation: str = 'YES', cutoff_elevation: int = 15, pco_on_wide_lane: str = 'YES', widelane_decision: List[float] = None, narrowlane_decision: List[float] = None, critical_search: List[float] = None, truncate_at_midnight: str = 'Default', verbose_output: str = 'NO')

Bases: BaseModel

ai_ambiguity_validation: str
ambiguity_co_var: str
ambiguity_duration: int
cutoff_elevation: int
model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'ai_ambiguity_validation': FieldInfo(annotation=str, required=False, default='YES'), 'ambiguity_co_var': FieldInfo(annotation=str, required=False, default='Default'), 'ambiguity_duration': FieldInfo(annotation=int, required=False, default=600), 'critical_search': FieldInfo(annotation=List[float], required=False, default_factory=<lambda>), 'cutoff_elevation': FieldInfo(annotation=int, required=False, default=15), 'narrowlane_decision': FieldInfo(annotation=List[float], required=False, default_factory=<lambda>), 'pco_on_wide_lane': FieldInfo(annotation=str, required=False, default='YES'), 'truncate_at_midnight': FieldInfo(annotation=str, required=False, default='Default'), 'verbose_output': FieldInfo(annotation=str, required=False, default='NO'), 'widelane_decision': FieldInfo(annotation=List[float], required=False, default_factory=<lambda>)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

narrowlane_decision: List[float]
pco_on_wide_lane: str
truncate_at_midnight: str
verbose_output: str
widelane_decision: List[float]
class es_sfgtools.pride_tools.pride_file_config.DataProcessingStrategies(*, strict_editing: str = 'Default', rck_model: str = 'Default', isb_model: str = 'Default', ztd_model: str = 'Default', htg_model: str = 'Default', iono_2nd: str = 'Default', tides: str = 'SOLID/OCEAN/POLE', multipath: str = 'Default')

Bases: BaseModel

htg_model: str
iono_2nd: str
isb_model: str
model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'htg_model': FieldInfo(annotation=str, required=False, default='Default'), 'iono_2nd': FieldInfo(annotation=str, required=False, default='Default'), 'isb_model': FieldInfo(annotation=str, required=False, default='Default'), 'multipath': FieldInfo(annotation=str, required=False, default='Default'), 'rck_model': FieldInfo(annotation=str, required=False, default='Default'), 'strict_editing': FieldInfo(annotation=str, required=False, default='Default'), 'tides': FieldInfo(annotation=str, required=False, default='SOLID/OCEAN/POLE'), 'ztd_model': FieldInfo(annotation=str, required=False, default='Default')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

multipath: str
rck_model: str
strict_editing: str
tides: str
ztd_model: str
class es_sfgtools.pride_tools.pride_file_config.ObservationConfig(*, table_directory: str, frequency_combination: str = 'Default', interval: str = 'Default', time_window: float = 0.01, session_time: datetime | str = '-YYYY- -MM- -DD- -HH- -MI- -SS- -SE-')

Bases: BaseModel

frequency_combination: str
interval: str
model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'frequency_combination': FieldInfo(annotation=str, required=False, default='Default'), 'interval': FieldInfo(annotation=str, required=False, default='Default'), 'session_time': FieldInfo(annotation=Union[datetime, str], required=False, default='-YYYY- -MM- -DD- -HH- -MI- -SS- -SE-'), 'table_directory': FieldInfo(annotation=str, required=True), 'time_window': FieldInfo(annotation=float, required=False, default=0.01)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

session_time: datetime | str
table_directory: str
time_window: float
class es_sfgtools.pride_tools.pride_file_config.PRIDEPPPFileConfig(*, observation: ObservationConfig, satellite_products: SatelliteProducts, processing: DataProcessingStrategies = None, ambiguity: AmbiguityFixingOptions = None, satellites: SatelliteList = None, station_used: List[StationUsed] = None)

Bases: BaseModel

ambiguity: AmbiguityFixingOptions
classmethod load_default() PRIDEPPPFileConfig

Loads a default PRIDE PPP configuration with predefined values.

Returns:

A PRIDEPPPFileConfig instance.

Return type:

PRIDEPPPFileConfig

model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'ambiguity': FieldInfo(annotation=AmbiguityFixingOptions, required=False, default_factory=<lambda>, description='Options for ambiguity fixing in the processing.'), 'observation': FieldInfo(annotation=ObservationConfig, required=True, description='Observation configuration for the PRIDE PPP processing.'), 'processing': FieldInfo(annotation=DataProcessingStrategies, required=False, default_factory=<lambda>, description='Data processing strategies for the PRIDE PPP configuration.'), 'satellite_products': FieldInfo(annotation=SatelliteProducts, required=True, description='Satellite product configuration for the PRIDE PPP processing.'), 'satellites': FieldInfo(annotation=SatelliteList, required=False, default_factory=<lambda>, description='List of satellites used in the processing.'), 'station_used': FieldInfo(annotation=List[StationUsed], required=False, default_factory=<lambda>, description='List of stations used in the processing, each with its own configuration.')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

observation: ObservationConfig
processing: DataProcessingStrategies
classmethod read_config_file(file_path: str) PRIDEPPPFileConfig

Reads a PRIDE PPP configuration file.

Returns:

A PRIDEPPPConfig instance.

Return type:

PRIDEPPPFileConfig

satellite_products: SatelliteProducts
satellites: SatelliteList
station_used: List[StationUsed]
write_config_file(filepath: str | Path)

Write the PRIDE PPP configuration to a file.

Parameters:

filepath (str | Path) – The path to the file.

class es_sfgtools.pride_tools.pride_file_config.SatelliteList(*, satellites: Dict[str, int] = None)

Bases: BaseModel

model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'satellites': FieldInfo(annotation=Dict[str, int], required=False, default_factory=<lambda>, description="Dictionary of satellites with their respective codes and PRN variances. Keys are satellite codes (e.g., 'G01', 'R01') and values are their PRN variances (e.g., 1, 2, 3).")}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

satellites: Dict[str, int]
class es_sfgtools.pride_tools.pride_file_config.SatelliteProducts(*, product_directory: str | None = 'Default', satellite_orbit: Annotated[str | None, _PydanticGeneralMetadata(pattern='^(Default|.*\\.SP3)$')] = 'Default', satellite_clock: Annotated[str | None, _PydanticGeneralMetadata(pattern='^(Default|.*\\.CLK)$')] = 'Default', erp: Annotated[str | None, _PydanticGeneralMetadata(pattern='^(Default|.*\\.ERP)$')] = 'Default', quaternions: Annotated[str | None, _PydanticGeneralMetadata(pattern='^(Default|.*\\.OBX)$')] = 'Default', code_phase_bias: Annotated[str | None, _PydanticGeneralMetadata(pattern='^(Default|.*\\.BIA)$')] = 'Default', leo_quaternions: str | None = 'Default')

Bases: BaseModel

code_phase_bias: str | None
erp: str | None
leo_quaternions: str | None
model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'code_phase_bias': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of code/phase bias file', metadata=[_PydanticGeneralMetadata(pattern='^(Default|.*\\.BIA)$')]), 'erp': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of ERP file', metadata=[_PydanticGeneralMetadata(pattern='^(Default|.*\\.ERP)$')]), 'leo_quaternions': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of LEO quaternions file'), 'product_directory': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='Directory for satellite products'), 'quaternions': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of quaternions file', metadata=[_PydanticGeneralMetadata(pattern='^(Default|.*\\.OBX)$')]), 'satellite_clock': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of CLK file', metadata=[_PydanticGeneralMetadata(pattern='^(Default|.*\\.CLK)$')]), 'satellite_orbit': FieldInfo(annotation=Union[str, NoneType], required=False, default='Default', description='File name of SP3 file', metadata=[_PydanticGeneralMetadata(pattern='^(Default|.*\\.SP3)$')])}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

classmethod override_patternmatch(value: str, field: Field) str
product_directory: str | None
quaternions: str | None
satellite_clock: str | None
satellite_orbit: str | None
class es_sfgtools.pride_tools.pride_file_config.StationUsed(*, name: str = 'xxxx', tp: str = 'X', map: str = 'XXX', clkm: int = 9000, podm: str = 'xxxxx', ev: str = 'xx', ztdm: float = 0.2, htgm: float = 0.005, ragm: float = 0.3, phsc: float = 0.01, polns: str = 'xxxxx', poxem: float = 10.0, poynm: float = 10.0, pozhm: float = 10.0)

Bases: BaseModel

clkm: int
ev: str
htgm: float
map: str
model_computed_fields = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields = {'clkm': FieldInfo(annotation=int, required=False, default=9000, description='CLKM value'), 'ev': FieldInfo(annotation=str, required=False, default='xx', description='EV value'), 'htgm': FieldInfo(annotation=float, required=False, default=0.005, description='HTGM value'), 'map': FieldInfo(annotation=str, required=False, default='XXX', description='MAP value'), 'name': FieldInfo(annotation=str, required=False, default='xxxx', description='Station name'), 'phsc': FieldInfo(annotation=float, required=False, default=0.01, description='PHSC value'), 'podm': FieldInfo(annotation=str, required=False, default='xxxxx', description='PODM value'), 'polns': FieldInfo(annotation=str, required=False, default='xxxxx', description='POLNS value'), 'poxem': FieldInfo(annotation=float, required=False, default=10.0, description='POXEM value'), 'poynm': FieldInfo(annotation=float, required=False, default=10.0, description='POYNM value'), 'pozhm': FieldInfo(annotation=float, required=False, default=10.0, description='POZHM value'), 'ragm': FieldInfo(annotation=float, required=False, default=0.3, description='RAGM value'), 'tp': FieldInfo(annotation=str, required=False, default='X', description='TP value'), 'ztdm': FieldInfo(annotation=float, required=False, default=0.2, description='ZTDM value')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

name: str
phsc: float
podm: str
polns: str
poxem: float
poynm: float
pozhm: float
ragm: float
tp: str
ztdm: float