class PreciseRange. Compute the corrected range from receiver at position Rx, to the GPS satellite given by SatID sat, as well as azimuth, elevation, etc., given a nominal timetag (either received or transmitted time) and a NavLibrary.
Definition at line 73 of file PreciseRange.hpp.
#include <PreciseRange.hpp>
Public Member Functions | |
double | ComputeAtTransmitTime (const CommonTime &nomRecTime, const double pr, const Position &rxPos, const SatID sat, const AntexData &antenna, const std::string &freq1, const std::string &freq2, SolarSystem &solSys, NavLibrary &eph, bool isCOM=false, const EllipsoidModel &ellipsoid=GPSEllipsoid()) |
double | ComputeAtTransmitTime (const CommonTime &nomRecTime, const double pr, const Position &rxPos, const SatID sat, NavLibrary &eph, const EllipsoidModel &ellipsoid=GPSEllipsoid()) |
PreciseRange () | |
Default constructor. More... | |
Public Attributes | |
double | azimuth |
double | azimuthGeodetic |
The satellite azimuth (geodetic), as seen at the receiver, in degrees. More... | |
Triple | cosines |
The direction cosines of the satellite, as seen at the receiver (XYZ). More... | |
double | elevation |
double | elevationGeodetic |
double | rawrange |
double | relativity |
The relativity correction in meters, and high precision correction. More... | |
double | relativity2 |
double | Sagnac |
Net time delay due to Sagnac effect in seconds. More... | |
double | satclkbias |
double | satclkdrift |
double | satLOSPCO |
double | satLOSPCV |
Vector< double > | SatPCOXYZ |
The Satellite PCO vector, in ECEF XYZ, meters (from COM to PC) More... | |
Position | SatR |
The satellite position (m) and velocity (m/s) in ECEF coordinates. More... | |
Position | SatV |
CommonTime | transmit |
The computed transmit time of the signal. More... | |
|
inline |
Default constructor.
Definition at line 77 of file PreciseRange.hpp.
double gnsstk::PreciseRange::ComputeAtTransmitTime | ( | const CommonTime & | nomRecTime, |
const double | pr, | ||
const Position & | rxPos, | ||
const SatID | sat, | ||
const AntexData & | antenna, | ||
const std::string & | freq1, | ||
const std::string & | freq2, | ||
SolarSystem & | solSys, | ||
NavLibrary & | eph, | ||
bool | isCOM = false , |
||
const EllipsoidModel & | ellipsoid = GPSEllipsoid() |
||
) |
Compute the corrected range at transmit time from ephemeris is the given NavLibrary, from receiver at position Rx with measured pseudorange pr and time tag nomRecTime, to the GPS satellite given by SatID sat, as well as all the CER quantities.
nomRecTime | nominal receive time |
pr | measured pseudorange at this time |
rxPos | receiver position |
sat | satellite |
antenna | satellite antenna data; |
freq1,freq2 | ANTEX frequencies to evaluate PCO/Vs eg 'G01' if freq2 is zero e.g. 'G00', compute single freq (freq1) PCO/Vs |
solSys | SolarSystem object, to get SatelliteAttitude() if any of above 4 not valid, PCO/V correction is NOT done (silently) |
eph | Ephemeris store |
isCOM | if true, Eph is Center-of-mass, else antenna-phase-center, default false. |
ellipsoid | Ellipsoid model to provide an ECEF rotation rate. |
Exception | if ephemeris is not found |
Definition at line 65 of file PreciseRange.cpp.
|
inline |
Version with no antenna, and therefore no Attitude and no SolarSystem; cf. doc for other version for details.
Exception |
Definition at line 118 of file PreciseRange.hpp.
double gnsstk::PreciseRange::azimuth |
The satellite azimuth (spheroidal), as seen at the receiver, in degrees.
Definition at line 163 of file PreciseRange.hpp.
double gnsstk::PreciseRange::azimuthGeodetic |
The satellite azimuth (geodetic), as seen at the receiver, in degrees.
Definition at line 172 of file PreciseRange.hpp.
Triple gnsstk::PreciseRange::cosines |
The direction cosines of the satellite, as seen at the receiver (XYZ).
Definition at line 178 of file PreciseRange.hpp.
double gnsstk::PreciseRange::elevation |
The satellite elevation (spheroidal), as seen at the receiver, in degrees.
Definition at line 157 of file PreciseRange.hpp.
double gnsstk::PreciseRange::elevationGeodetic |
The satellite elevation (geodetic), as seen at the receiver, in degrees.
Definition at line 169 of file PreciseRange.hpp.
double gnsstk::PreciseRange::rawrange |
The computed raw (geometric) range in meters, with NO corrections applied; to correct it, use rawrange -= satclkbias+relativity+relativity2-satLOSPCO-satLOSPCV.
Definition at line 139 of file PreciseRange.hpp.
double gnsstk::PreciseRange::relativity |
The relativity correction in meters, and high precision correction.
Definition at line 142 of file PreciseRange.hpp.
double gnsstk::PreciseRange::relativity2 |
Definition at line 142 of file PreciseRange.hpp.
double gnsstk::PreciseRange::Sagnac |
Net time delay due to Sagnac effect in seconds.
Definition at line 190 of file PreciseRange.hpp.
double gnsstk::PreciseRange::satclkbias |
The satellite clock bias (m) and drift (m/s) at transmit time, from NavLibrary
Definition at line 151 of file PreciseRange.hpp.
double gnsstk::PreciseRange::satclkdrift |
Definition at line 151 of file PreciseRange.hpp.
double gnsstk::PreciseRange::satLOSPCO |
The net line-of-sight offset, in the direction from sat to rx, of the antenna PCO and PCVs, meters
Definition at line 184 of file PreciseRange.hpp.
double gnsstk::PreciseRange::satLOSPCV |
Definition at line 184 of file PreciseRange.hpp.
Vector<double> gnsstk::PreciseRange::SatPCOXYZ |
The Satellite PCO vector, in ECEF XYZ, meters (from COM to PC)
Definition at line 187 of file PreciseRange.hpp.
Position gnsstk::PreciseRange::SatR |
The satellite position (m) and velocity (m/s) in ECEF coordinates.
Definition at line 145 of file PreciseRange.hpp.
Position gnsstk::PreciseRange::SatV |
Definition at line 145 of file PreciseRange.hpp.
CommonTime gnsstk::PreciseRange::transmit |
The computed transmit time of the signal.
Definition at line 175 of file PreciseRange.hpp.