es_sfgtools.pride_tools.gnss_product_schemas module

class es_sfgtools.pride_tools.gnss_product_schemas.CLSIGS

Bases: object

daily_gps_dir = 'pub/igs/data'
daily_products_dir = 'pub/igs/products/mgex'
ftpserver = 'ftp://igs.ign.fr'
classmethod get_product_bias(date: date) RemoteResourceFTP

Generates a bias GNSS product remote resource for a given date. :param date: The date for which to retrieve the product bias. :type date: datetime.date

Returns:

An object representing the remote resource for the product bias.

Return type:

RemoteResource

classmethod get_product_clk(date: date) RemoteResourceFTP

Generates a clock GNSS product remote resource for a given date.

Parameters:

date (datetime.date) – The date for which to retrieve the clock product.

Returns:

An object representing the remote resource for the clock product.

Return type:

RemoteResource

classmethod get_product_erp(date: date) RemoteResourceFTP

Generates a Earth Rotation Parameters (ERP) GNSS product remote resource for a given date. :param date: The date for which to retrieve the ERP product. :type date: datetime.date

Returns:

An object representing the remote resource for the ERP product.

Return type:

RemoteResource

classmethod get_product_obx(date: date) RemoteResourceFTP

Generates a OBX GNSS product remote resource for a given date. :param date: The date for which to retrieve the OBX product. :type date: datetime.date

Returns:

An object representing the remote resource for the OBX product.

Return type:

RemoteResource

classmethod get_product_sp3(date: date) RemoteResourceFTP

Generates a SP3 GNSS product remote resource for a given date.

Parameters:

date (datetime.date) – The date for which to retrieve the SP3 product.

Returns:

An object representing the remote resource for the SP3 product.

Return type:

RemoteResource

classmethod get_rinex_2_nav(date: date, constellation: Literal['gps', 'glonass'] = 'gps') RemoteResourceFTP

Generates a RINEX 2 navigation file remote resource for a given date and constellation. :param date: The date for which to retrieve the RINEX 2 navigation file. :type date: datetime.date :param constellation: The satellite constellation to use.

Defaults to “gps”.

Returns:

An object representing the remote resource for the RINEX 2 navigation file.

Return type:

RemoteResource

Raises:

AssertionError – If the provided constellation is not recognized.

classmethod get_rinex_3_nav(date: <module 'datetime' from '/home/docs/checkouts/readthedocs.org/user_builds/es-sfgtools/conda/latest/lib/python3.11/datetime.py'>) RemoteResourceFTP

Generates a RINEX 3 navigation file remote resource for a given date. :param date: The date for which to retrieve the RINEX 3 navigation file. :type date: datetime

Returns:

An object representing the remote resource for the RINEX 3 navigation file.

Return type:

RemoteResource

class es_sfgtools.pride_tools.gnss_product_schemas.GSSC

Bases: object

A class to interact with the GNSS Service Center (GSSC) FTP server for retrieving RINEX navigation files.

ftpserver

The FTP server URL for GSSC.

Type:

str

daily_gps_dir

The directory path for daily GPS data on the FTP server.

Type:

str

constellation_tag

A dictionary mapping constellation names to their respective tags.

Type:

dict

get_rinex_2_nav(date

datetime.date, constellation: Literal[“gps”, “glonass”] = “gps”) -> RemoteResource: Generates a RINEX 2 navigation file remote resource for the specified date and constellation.

get_rinex_3_nav(date

datetime) -> RemoteResource: Generates a RINEX 3 navigation file remote resource for the specified date.

constellation_tag = {'glonass': 'g', 'gps': 'n'}
daily_gps_dir = 'gnss/data/daily'
ftpserver = 'ftp://gssc.esa.int'
classmethod get_rinex_2_nav(date: date, constellation: Literal['gps', 'glonass'] = 'gps') RemoteResourceFTP

Generates a RINEX 2 navigation file remote resource for a given date and constellation. :param date: The date for which to retrieve the RINEX 2 navigation file. :type date: datetime.date :param constellation: The satellite constellation to use.

Defaults to “gps”.

Returns:

An object representing the remote resource for the RINEX 2 navigation file.

Return type:

RemoteResource

Raises:

AssertionError – If the provided constellation is not recognized.

classmethod get_rinex_3_nav(date: <module 'datetime' from '/home/docs/checkouts/readthedocs.org/user_builds/es-sfgtools/conda/latest/lib/python3.11/datetime.py'>) RemoteResourceFTP

Generates a RINEX 3 navigation file remote resource for a given date. :param date: The date for which to retrieve the RINEX 3 navigation file. :type date: datetime

Returns:

An object representing the remote resource for the RINEX 3 navigation file.

Return type:

RemoteResource

class es_sfgtools.pride_tools.gnss_product_schemas.Potsdam

Bases: object

daily_products_dir = 'gnss/products/final'
ftpserver = 'ftp://isdcftp.gfz-potsdam.de'
class es_sfgtools.pride_tools.gnss_product_schemas.RemoteQuery(pattern: Pattern, sort_order: List[str] = [])

Bases: object

A class used to create and manage remote query regex patterns for GNSS resources.

pattern

re.Pattern The compiled regular expression pattern used for searching.

sort_order

List[str] The order in which search results should be sorted, based on the first match in this list. This order is based on the product type, including “Final” (FIN), “Rapid” (RAP), and “Real time Streaming” (RTS).

sp3(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for SP3 files based on the given date.

obx(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for OBX files based on the given date.

clk(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for CLK files based on the given date.

sum(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for SUM files based on the given date.

bias(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for BIA files based on the given date.

erp(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for ERP files based on the given date.

rnx3(date

datetime.date) -> RemoteQuery Creates a RemoteQuery instance for RNX3 files based on the given date.

rnx2(date

datetime.date, constellation: Literal[“gps”, “glonass”]) -> RemoteQuery Creates a RemoteQuery instance for RNX2 files based on the given date and constellation.

classmethod bias(date: date) RemoteQuery

Creates a RemoteQuery object to search for GNSS bias files based on the given date. :param date: The date for which to search for GNSS bias files. :type date: datetime.date

Returns:

An object configured to search for GNSS bias files matching the specified date.

Return type:

RemoteQuery

classmethod clk(date: date) RemoteQuery

Create a RemoteQuery object to search for GNSS clock files for a given date. :param date: The date for which to search GNSS clock files. :type date: datetime.date

Returns:

An instance of RemoteQuery initialized with the search pattern and order.

Return type:

RemoteQuery

classmethod erp(date: date) RemoteQuery

Creates a RemoteQuery object to search for Earth Rotation Parameters (ERP) files based on the given date. :param date: The date for which to search ERP files. :type date: datetime.date

Returns:

An instance of RemoteQuery initialized with the search pattern and order for ERP files.

Return type:

RemoteQuery

classmethod obx(date: date) RemoteQuery

Create a RemoteQuery object to search for OBX files based on the given date. :param date: The date for which to search OBX files. :type date: datetime.date

Returns:

An instance of RemoteQuery initialized with a pattern to match OBX files

and a predefined search order.

Return type:

RemoteQuery

classmethod rnx2(date: date, constellation: Literal['gps', 'glonass']) RemoteQuery

Generate a RemoteQuery object for RINEX files based on the given date and GNSS constellation. :param date: The date for which to generate the query. :type date: datetime.date :param constellation: The GNSS constellation to query.

Must be either “gps” or “glonass”.

Returns:

An object representing the query for the specified RINEX files.

Return type:

RemoteQuery

Raises:

KeyError – If the provided constellation is not “gps” or “glonass”.

classmethod rnx3(date: date) RemoteQuery

Generate a RemoteQuery object for RINEX 3 files based on the given date. :param date: The date for which to generate the query. :type date: datetime.date

Returns:

An instance of RemoteQuery with a pattern matching RINEX 3 files for the specified date.

Return type:

RemoteQuery

classmethod sp3(date: date) RemoteQuery

Creates a RemoteQuery object to search for SP3 files based on the given date. :param date: The date for which to search SP3 files. :type date: datetime.date

Returns:

An instance of RemoteQuery configured with the search pattern

and search order for SP3 files.

Return type:

RemoteQuery

classmethod sum(date: date) RemoteQuery

Create a RemoteQuery instance to find GNSS sum files for a given date. :param date: The date for which to find the GNSS sum files. :type date: datetime.date

Returns:

An instance of RemoteQuery initialized with a pattern to match

GNSS sum files for the specified date and a search order.

Return type:

RemoteQuery

class es_sfgtools.pride_tools.gnss_product_schemas.RemoteResourceFTP(ftpserver: str, directory: str, remote_query: RemoteQuery, file_name: str | None = None)

Bases: object

A class to represent a remote resource accessed via FTP.

ftpserver

The FTP server address.

Type:

str

directory

The directory on the FTP server.

Type:

str

remote_query

The query object to interact with the remote resource.

Type:

RemoteQuery

file_name

The name of the file on the FTP server (default is None).

Type:

Optional[str]

__str__()

Returns a string representation of the remote resource.

directory: str
file_name: str | None = None
ftpserver: str
remote_query: RemoteQuery
class es_sfgtools.pride_tools.gnss_product_schemas.WuhanIGS

Bases: object

The WuhanIGS class provides methods to retrieve various GNSS (Global Navigation Satellite System) remote resources from the Wuhan IGS (International GNSS Service) FTP server. The class includes methods to get RINEX 2 and 3 navigation files, as well as various GNSS products such as SP3, OBX, clock, sum, bias, and ERP (Earth Rotation Parameters).

ftpserver

The FTP server URL for Wuhan IGS.

Type:

str

daily_gps_dir

The directory path for daily GPS data.

Type:

str

daily_product_dir

The directory path for daily GNSS products.

Type:

str

constellation_tag

A dictionary mapping satellite constellations to their respective tags.

Type:

dict

get_rinex_2_nav(date

datetime.date, constellation: Literal[“gps”, “glonass”] = “gps”) -> RemoteResource:

get_rinex_3_nav(date

datetime) -> RemoteResource: Retrieve the RINEX 3 navigation file remote resource for a given date.

get_product_sp3(date

datetime.date) -> RemoteResource: Retrieve the SP3 GNSS product remote resource for a given date.

get_product_obx(date

datetime.date) -> RemoteResource: Retrieve the OBX GNSS product remote resource for a given date.

get_product_clk(date

datetime.date) -> RemoteResource: Retrieve the clock GNSS product remote resource for a given date.

get_product_sum(date

datetime.date) -> RemoteResource: Retrieve the sum GNSS product remote resource for a given date.

get_product_bias(date

datetime.date) -> RemoteResource:

get_product_erp(date

datetime.date) -> RemoteResource: Retrieve the Earth Rotation Parameters (ERP) GNSS product remote resource for a given date.

constellation_tag = {'glonass': 'g', 'gps': 'n'}
daily_gps_dir = 'pub/gps/data/daily'
daily_product_dir = 'pub/whu/phasebias'
ftpserver = 'ftp://igs.gnsswhu.cn'
classmethod get_product_bias(date: date) RemoteResourceFTP

Retrieve the bias GNSS product remote resource for a given date. :param date: The date for which to retrieve the product bias. :type date: datetime.date

Returns:

An object representing the remote resource containing the product bias.

Return type:

RemoteResource

classmethod get_product_clk(date: date) RemoteResourceFTP

Generates the clock GNSS product remote resource for a given date. :param date: The date for which to retrieve the clock product. :type date: datetime.date

Returns:

An object representing the remote resource for the clock product.

Return type:

RemoteResource

classmethod get_product_erp(date: date) RemoteResourceFTP

Generates the Earth Rotation Parameters (ERP) GNSS product remote resource for a given date. :param date: The date for which to retrieve the ERP product. :type date: datetime.date

Returns:

An object representing the remote resource containing the ERP product.

Return type:

RemoteResource

classmethod get_product_obx(date: date) RemoteResourceFTP

Generates the OBX GNSS product remote resource for a given date. :param date: The date for which to retrieve the OBX product. :type date: datetime.date

Returns:

An object representing the remote resource for the OBX product.

Return type:

RemoteResource

classmethod get_product_sp3(date: date) RemoteResourceFTP

Generates the SP3 GNSS product remote resource for a given date. :param date: The date for which to retrieve the SP3 product. :type date: datetime.date

Returns:

An object representing the remote resource for the SP3 product.

Return type:

RemoteResource

classmethod get_product_sum(date: date) RemoteResourceFTP

Generates the sum GNSS product remote resource for a given date. :param date: The date for which to retrieve the GNSS product sum. :type date: datetime.date

Returns:

An object representing the remote resource containing the GNSS product sum.

Return type:

RemoteResource

classmethod get_rinex_2_nav(date: date, constellation: Literal['gps', 'glonass'] = 'gps') RemoteResourceFTP

Retrieve RINEX 2 navigation file remote resource for a given date and constellation. :param date: The date for which to retrieve the RINEX 2 navigation file. :type date: datetime.date :param constellation: The satellite constellation to use.

Defaults to “gps”.

Returns:

An object representing the remote resource for the RINEX 2 navigation file.

Return type:

RemoteResource

Raises:

AssertionError – If the provided constellation is not recognized.

classmethod get_rinex_3_nav(date: <module 'datetime' from '/home/docs/checkouts/readthedocs.org/user_builds/es-sfgtools/conda/latest/lib/python3.11/datetime.py'>) RemoteResourceFTP

Generates the RINEX 3 navigation file remote resource for a given date. :param date: The date for which to retrieve the RINEX 3 navigation file. :type date: datetime

Returns:

An object representing the remote resource for the RINEX 3 navigation file.

Return type:

RemoteResource