readGLONASSNavigationRINEX: Read a RINEX navigation file for GLONASS satellites

View source: R/fileParsers.R

readGLONASSNavigationRINEXR Documentation

Read a RINEX navigation file for GLONASS satellites

Description

RINEX (Receiver Independent Exchange Format) is one of the most widely used formats for providing data of satellite navigation systems. The RINEX standard defines several structured text file types, among which navigation files are used to distribute positional information of the satellites. The exact information provided in a RINEX navigation file varies for each satellite navigation system. This function reads RINEX navigation files for satellites of the GLONASS constellation, operated by Russia.

Usage

readGLONASSNavigationRINEX(filename)

Arguments

filename

Path to the GLONASS RINEX navigation file.

Value

A list with two elements. The first element, named header, is a list with the following elements:

rinexVersion

Version of the RINEX format used in the file

rinexFileType

Type of RINEX file

generatorProgram

Program used to generate the RINEX file

generatorEntity

Individual or organization that generated the file

fileCreationDateString

Date-time string indicating when the file was created

refYear

Reference year for system time correction

refMonth

Reference month for system time correction

refDay

Reference day for system time correction

sysTimeCorrection

Correction to system time scale to fine-tune GLONASS time to UTC in seconds. Since GLONASS time is linked to UTC, it should be a very small amount

leapSeconds

Leap seconds introduced since 1980. Useful to convert to GPS time

comments

Miscellaneous comments found in the header of the RINEX file

The second element is named messages, and it contains one element for each navigation message found in the RINEX file. Each of these elements is a list with the following elements that provide information about the position of the GLONASS satellite:

satelliteNumber

Slot number of the satellite within the GLONASS constellation. It can be converted to a PRN code by adding 37 to it

epochYearShort

Epoch year in 2-digit format. If lower than 80, the meaning should be taken as 20XX, while if larger than 80, it refers to 19XX.

epochMonth

Epoch month

epochDay

Epoch day

epochHour

Epoch hour

epochMinute

Epoch minute

epochSecond

Epoch second

ephemerisUTCTime

A nanotime object indicating the time corresponding to the reported position (ephemeris) in the present message. The time is in UTC, obtained by applying the individual clock bias of the particular satellite (clockBias field of each message) and the latest global GLONASS time bias with respect to UTC (sysTimeCorrection field of the header) to the uncorrected ephemeris time, given by the previous time fields. Corrections are performed as described in the GLONASS system specifications (https://russianspacesystems.ru/wp-content/uploads/2016/08/ICD_GLONASS_eng_v5.1.pdf)

clockBias

Clock bias (i.e., constant offset) that should be applied to the satellite time in order to obtain an even more accurate UTC time. In seconds

relativeFreqBias

Clock drift of the satellite clock that should be applied in combination with the time difference to the reference time in order to obtain an even more accurate UTC time. In seconds per second

messageFrameTime

Second of the UTC day when the message was transmitted

positionX

X coordinate of the position of the satellite in km, in the ITRF system of coordinates

positionY

Y coordinate of the position of the satellite in km, in the ITRF system of coordinates

positionZ

Z coordinate of the position of the satellite in km, in the ITRF system of coordinates

velocityX

X component of the velocity of the satellite in km/s, in the ITRF system of coordinates

velocityY

Y component of the velocity of the satellite in km/s, in the ITRF system of coordinates

velocityZ

Z component of the velocity of the satellite in km/s, in the ITRF system of coordinates

accelX

X component of the accel of the satellite in km/s, in the ITRF system of coordinates

accelY

Y component of the accel of the satellite in km/s, in the ITRF system of coordinates

accelZ

Z component of the accel of the satellite in km/s, in the ITRF system of coordinates

satelliteHealthCode

Code indicating the health of the satellite. 0 if healthy

freqNumber

Frequency number (k) of the GLONASS satellite. The two frequencies in MHz, f1 and f2, used by the satellite to transmit data can be calculated as follows: f1 = 1602 + k*9/16 and f2 = 1246 + k*7/16

informationAge

Age in days of the observation data used to generate the provided ephemeris

References

https://gage.upc.edu/gFD/ https://www.navcen.uscg.gov/pubs/gps/rinex/rinex.txt ftp://www.ngs.noaa.gov/cors/RINEX211.txt http://acc.igs.org/misc/rinex304.pdf https://russianspacesystems.ru/wp-content/uploads/2016/08/ICD_GLONASS_eng_v5.1.pdf

Examples

# The file testGLONASSRINEX.txt provided with the package includes 5 navigation
# messages from 4 GLONASS satellites

testGLONASSnav <- readGLONASSNavigationRINEX(paste0(path.package("asteRisk"), 
"/testGLONASSRINEX.txt"))
testGLONASSnav$header
testGLONASSnav$messages

asteRisk documentation built on Jan. 14, 2023, 5:07 p.m.