es_sfgtools.tiledb_tools.tiledb_operations module

es_sfgtools.tiledb_tools.tiledb_operations.tile2rinex(gnss_obs_tdb: Path, settings: Path, writedir: Path, time_interval: int = 1, processing_year: int = 0) List[Path]

Converts GNSS observation tileDB data to RINEX format using the TILE2RINEX binary.

Parameters:
  • gnss_obs_tdb (Path) – Path to the GNSS tiledb array.

  • settings (Path) – Path to the RINEX settings file.

  • writedir (Path) – Directory where the generated RINEX files will be written.

  • time_interval (int, optional) – Time interval (hours) of GNSS epochs loaded into memory from the tiledb array found at gnss_obs_tdb.

  • processing_year (int, optional) – Year of GNSS observations used to generate RINEX files from the tiledb array found at gnss_obs_tdb. Defaults to 0.

Returns:

A list of Paths representing the generated RINEX files.

Return type:

List[Path]

Raises:

subprocess.CalledProcessError – If the TILE2RINEX command fails during execution.

Notes

  • The function uses a temporary directory to ensure only newly created RINEX files are returned.

  • Logs are captured from the TILE2RINEX binary’s stdout and stderr for debugging and informational purposes.

  • The generated RINEX files are moved to the specified writedir and metadata is extracted for each file.

  • time_interval is used to control the tradeoff between memory usage and speed. The larger the time_interval, the more memory is used, but the faster the generation.

  • processing_year is used to prevent RINEX generation from years outside of a given campaign. When set to 0, all found observations are used to generate daily RINEX files.