GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
Gnss_Ephemeris Class Reference

Base class for GNSS ephemeris storage. More...

#include <gnss_ephemeris.h>

Inheritance diagram for Gnss_Ephemeris:
Beidou_Dnav_Ephemeris Galileo_Ephemeris Gps_CNAV_Ephemeris Gps_Ephemeris

Public Member Functions

double sv_clock_drift (double transmitTime)
 Sets (satClkDrift) and (dtr), and returns the clock drift in seconds according to the User Algorithm for SV Clock Correction (IS-GPS-200M, 20.3.3.3.3.1, and Galileo OS SIS ICD, 5.1.4).
double predicted_doppler (double rx_time_s, double lat, double lon, double h, double ve, double vn, double vu, int band) const
 Computes prediction of the Doppler shift for a given time and receiver's position and velocity.
void satellitePosition (double transmitTime)
 Computes the ECEF SV coordinates and ECEF velocity.

Public Attributes

uint32_t PRN {}
 SV ID.
double M_0 {}
 Mean anomaly at reference time [rad].
double delta_n {}
 Mean motion difference from computed value [rad/sec].
double ecc {}
 Eccentricity.
double sqrtA {}
 Square root of the semi-major axis [meters^1/2].
double OMEGA_0 {}
 Longitude of ascending node of orbital plane at weekly epoch [rad].
double i_0 {}
 Inclination angle at reference time [rad].
double omega {}
 Argument of perigee [rad].
double OMEGAdot {}
 Rate of right ascension [rad/sec].
double idot {}
 Rate of inclination angle [rad/sec].
double Cuc {}
 Amplitude of the cosine harmonic correction term to the argument of latitude [rad].
double Cus {}
 Amplitude of the sine harmonic correction term to the argument of latitude [rad].
double Crc {}
 Amplitude of the cosine harmonic correction term to the orbit radius [meters].
double Crs {}
 Amplitude of the sine harmonic correction term to the orbit radius [meters].
double Cic {}
 Amplitude of the cosine harmonic correction term to the angle of inclination [rad].
double Cis {}
 Amplitude of the sine harmonic correction term to the angle of inclination [rad].
int32_t toe {}
 Ephemeris reference time [s].
int32_t toc {}
 Clock correction data reference Time of Week [sec].
double af0 {}
 SV clock bias correction coefficient [s].
double af1 {}
 SV clock drift correction coefficient [s/s].
double af2 {}
 SV clock drift rate correction coefficient [s/s^2].
double satClkDrift {}
 SV clock drift.
double dtr {}
 Relativistic clock correction term.
int32_t WN {}
 Week number.
int32_t tow {}
 Time of Week.
double satpos_X {}
 Earth-fixed coordinate x of the satellite [m]. Intersection of the IERS Reference Meridian (IRM) and the plane passing through the origin and normal to the Z-axis.
double satpos_Y {}
 Earth-fixed coordinate y of the satellite [m]. Completes a right-handed, Earth-Centered, Earth-Fixed orthogonal coordinate system.
double satpos_Z {}
 Earth-fixed coordinate z of the satellite [m]. The direction of the IERS (International Earth Rotation and Reference Systems Service) Reference Pole (IRP).
double satvel_X {}
 Earth-fixed velocity coordinate x of the satellite [m].
double satvel_Y {}
 Earth-fixed velocity coordinate y of the satellite [m].
double satvel_Z {}
 Earth-fixed velocity coordinate z of the satellite [m].

Protected Attributes

char System {}
 Character ID of the GNSS system. 'G': GPS. 'E': Galileo. 'C': BeiDou.

Detailed Description

Base class for GNSS ephemeris storage.

Definition at line 28 of file gnss_ephemeris.h.

Member Function Documentation

◆ predicted_doppler()

double Gnss_Ephemeris::predicted_doppler ( double rx_time_s,
double lat,
double lon,
double h,
double ve,
double vn,
double vu,
int band ) const

Computes prediction of the Doppler shift for a given time and receiver's position and velocity.

\[f_{d} = - \mathbf{v} \frac{\mathbf{x}^{T}}{\left| \mathbf{x} \right| } \frac{f_{L}}{c} \]

where:

\[\mathbf{v} = \mathbf{v}_{sat} - \mathbf{v}_{rx} \]

\[\mathbf{x} = \mathbf{x}_{sat} - \mathbf{x}_{rx} \]

\[\left| \mathbf{x} \right| = \sqrt{\mathbf{x}\mathbf{x}^{T}} \]

Parameters
[in]rx_time_sTime of Week in seconds
[in]latReceiver's latitude in degrees
[in]lonReceiver's longitude in degrees
[in]hReceiver's height in meters
[in]veReceiver's velocity in the East direction [m/s]
[in]vnReceiver's velocity in the North direction [m/s]
[in]vuReceiver's velocity in the Up direction [m/s]
[in]bandSignal band for which the Doppler will be computed (1: L1 C/A, E1B, BI1; 2: L2C, BI2; 3: BI3; 5: L5/E5a; 6: E6B; 7: E5b; 8: E5a+E5b)

◆ satellitePosition()

void Gnss_Ephemeris::satellitePosition ( double transmitTime)

Computes the ECEF SV coordinates and ECEF velocity.

◆ sv_clock_drift()

double Gnss_Ephemeris::sv_clock_drift ( double transmitTime)

Sets (satClkDrift) and (dtr), and returns the clock drift in seconds according to the User Algorithm for SV Clock Correction (IS-GPS-200M, 20.3.3.3.3.1, and Galileo OS SIS ICD, 5.1.4).

Member Data Documentation

◆ af0

◆ af1

◆ af2

double Gnss_Ephemeris::af2 {}

◆ Cic

double Gnss_Ephemeris::Cic {}

Amplitude of the cosine harmonic correction term to the angle of inclination [rad].

Definition at line 84 of file gnss_ephemeris.h.

Referenced by Serdes_Galileo_Eph::readProtobuffer(), Serdes_Gps_Eph::readProtobuffer(), Beidou_Dnav_Ephemeris::serialize(), Galileo_Ephemeris::serialize(), Gps_CNAV_Ephemeris::serialize(), and Gps_Ephemeris::serialize().

◆ Cis

double Gnss_Ephemeris::Cis {}

Amplitude of the sine harmonic correction term to the angle of inclination [rad].

Definition at line 85 of file gnss_ephemeris.h.

Referenced by Serdes_Galileo_Eph::readProtobuffer(), Serdes_Gps_Eph::readProtobuffer(), Beidou_Dnav_Ephemeris::serialize(), Galileo_Ephemeris::serialize(), Gps_CNAV_Ephemeris::serialize(), and Gps_Ephemeris::serialize().

◆ Crc

double Gnss_Ephemeris::Crc {}

Amplitude of the cosine harmonic correction term to the orbit radius [meters].

Definition at line 82 of file gnss_ephemeris.h.

Referenced by Serdes_Galileo_Eph::readProtobuffer(), Serdes_Gps_Eph::readProtobuffer(), Beidou_Dnav_Ephemeris::serialize(), Galileo_Ephemeris::serialize(), Gps_CNAV_Ephemeris::serialize(), and Gps_Ephemeris::serialize().

◆ Crs

double Gnss_Ephemeris::Crs {}

◆ Cuc

double Gnss_Ephemeris::Cuc {}

Amplitude of the cosine harmonic correction term to the argument of latitude [rad].

Definition at line 80 of file gnss_ephemeris.h.

Referenced by Serdes_Galileo_Eph::readProtobuffer(), Serdes_Gps_Eph::readProtobuffer(), Beidou_Dnav_Ephemeris::serialize(), Galileo_Ephemeris::serialize(), Gps_CNAV_Ephemeris::serialize(), and Gps_Ephemeris::serialize().

◆ Cus

double Gnss_Ephemeris::Cus {}

Amplitude of the sine harmonic correction term to the argument of latitude [rad].

Definition at line 81 of file gnss_ephemeris.h.

Referenced by Serdes_Galileo_Eph::readProtobuffer(), Serdes_Gps_Eph::readProtobuffer(), Beidou_Dnav_Ephemeris::serialize(), Galileo_Ephemeris::serialize(), Gps_CNAV_Ephemeris::serialize(), and Gps_Ephemeris::serialize().

◆ delta_n

double Gnss_Ephemeris::delta_n {}

◆ dtr

◆ ecc

◆ i_0

◆ idot

◆ M_0

◆ omega

◆ OMEGA_0

double Gnss_Ephemeris::OMEGA_0 {}

◆ OMEGAdot

◆ PRN

◆ satClkDrift

◆ satpos_X

double Gnss_Ephemeris::satpos_X {}

Earth-fixed coordinate x of the satellite [m]. Intersection of the IERS Reference Meridian (IRM) and the plane passing through the origin and normal to the Z-axis.

Definition at line 102 of file gnss_ephemeris.h.

◆ satpos_Y

double Gnss_Ephemeris::satpos_Y {}

Earth-fixed coordinate y of the satellite [m]. Completes a right-handed, Earth-Centered, Earth-Fixed orthogonal coordinate system.

Definition at line 103 of file gnss_ephemeris.h.

◆ satpos_Z

double Gnss_Ephemeris::satpos_Z {}

Earth-fixed coordinate z of the satellite [m]. The direction of the IERS (International Earth Rotation and Reference Systems Service) Reference Pole (IRP).

Definition at line 104 of file gnss_ephemeris.h.

◆ satvel_X

double Gnss_Ephemeris::satvel_X {}

Earth-fixed velocity coordinate x of the satellite [m].

Definition at line 107 of file gnss_ephemeris.h.

◆ satvel_Y

double Gnss_Ephemeris::satvel_Y {}

Earth-fixed velocity coordinate y of the satellite [m].

Definition at line 108 of file gnss_ephemeris.h.

◆ satvel_Z

double Gnss_Ephemeris::satvel_Z {}

Earth-fixed velocity coordinate z of the satellite [m].

Definition at line 109 of file gnss_ephemeris.h.

◆ sqrtA

double Gnss_Ephemeris::sqrtA {}

◆ System

char Gnss_Ephemeris::System {}
protected

Character ID of the GNSS system. 'G': GPS. 'E': Galileo. 'C': BeiDou.

Definition at line 112 of file gnss_ephemeris.h.

Referenced by Gps_CNAV_Ephemeris::Gps_CNAV_Ephemeris().

◆ toc

int32_t Gnss_Ephemeris::toc {}

◆ toe

◆ tow

◆ WN


The documentation for this class was generated from the following file: