PreciseRange Class Reference
[Ephemeris calculations]

#include <PreciseRange.hpp>

Collaboration diagram for PreciseRange:

Collaboration graph
[legend]
List of all members.

Detailed Description

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 an XvtStore.

Definition at line 72 of file PreciseRange.hpp.

Public Member Functions

 PreciseRange ()
 Default constructor.
double ComputeAtTransmitTime (const DayTime &nomRecTime, const double pr, const Position &Rx, const SatID sat, const AntexData &antenna, const SolarSystem &SSEph, const EarthOrientation &EO, const XvtStore< SatID > &Eph, const bool isCOM=false) throw (Exception)
 Compute the corrected range at transmit time from ephemeris is the given XvtStore, 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.
double ComputeAtTransmitTime (const DayTime &nomRecTime, const double pr, const Position &Rx, const SatID sat, const XvtStore< SatID > &Eph) throw (Exception)
 Version with no antenna; cf. doc for other version.
double ComputeAtTransmitTime (const DayTime &nomRecTime, const double pr, const Position &Rx, const SatID sat, const AntexData &antenna, const XvtStore< SatID > &Eph) throw (Exception)
 Version without high-accuracy SolarSystem; cf. doc for other version.

Public Attributes

double rawrange
 The computed raw (geometric) range in meters, with NO corrections applied; to correct it, use rawrange -= satclkbias+relativity+relativity2-satLOSPCO-satLOSPCV.
double relativity
 The relativity correction in meters, and high precision correction.
double relativity2
 The relativity correction in meters, and high precision correction.
Position SatR
 The satellite position (m) and velocity (m/s) in ECEF coordinates.
Position SatV
 The satellite position (m) and velocity (m/s) in ECEF coordinates.
double satclkbias
 The satellite clock bias (m) and drift (m/s) at transmit time, from XvtStore.
double satclkdrift
 The satellite clock bias (m) and drift (m/s) at transmit time, from XvtStore.
double elevation
 The satellite elevation (spheroidal), as seen at the receiver, in degrees.
double azimuth
 The satellite azimuth (spheroidal), as seen at the receiver, in degrees.
double elevationGeodetic
 The satellite elevation (geodetic), as seen at the receiver, in degrees.
double azimuthGeodetic
 The satellite azimuth (geodetic), as seen at the receiver, in degrees.
DayTime transmit
 The computed transmit time of the signal.
Triple cosines
 The direction cosines of the satellite, as seen at the receiver (XYZ).
double satLOSPCO
 The net line-of-sight offset, in the direction from sat to rx, of the antenna PCO and PCVs, meters.
double satLOSPCV
 The net line-of-sight offset, in the direction from sat to rx, of the antenna PCO and PCVs, meters.
Vector< double > SatPCOXYZ
 The Satellite PCO vector, in ECEF XYZ, meters (from COM to PC).
double Sagnac
 Net time delay due to Sagnac effect in seconds.


Constructor & Destructor Documentation

PreciseRange  )  [inline]
 

Default constructor.

Definition at line 76 of file PreciseRange.hpp.


Member Function Documentation

double ComputeAtTransmitTime const DayTime nomRecTime,
const double  pr,
const Position Rx,
const SatID  sat,
const AntexData antenna,
const XvtStore< SatID > &  Eph
throw (Exception) [inline]
 

Version without high-accuracy SolarSystem; cf. doc for other version.

Definition at line 123 of file PreciseRange.hpp.

References gpstk::Rx().

double ComputeAtTransmitTime const DayTime nomRecTime,
const double  pr,
const Position Rx,
const SatID  sat,
const XvtStore< SatID > &  Eph
throw (Exception) [inline]
 

Version with no antenna; cf. doc for other version.

Definition at line 107 of file PreciseRange.hpp.

References gpstk::Rx().

double ComputeAtTransmitTime const DayTime nomRecTime,
const double  pr,
const Position Rx,
const SatID  sat,
const AntexData antenna,
const SolarSystem SSEph,
const EarthOrientation EO,
const XvtStore< SatID > &  Eph,
const bool  isCOM = false
throw (Exception)
 

Compute the corrected range at transmit time from ephemeris is the given XvtStore, 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.

Parameters:
DayTime nomRecTime nominal receive time
double pr measured pseudorange at this time
Position& Rx receiver position
SatID sat satellite
AntexData& antenna satellite antenna data; if not valid, no PCO/V correction is done
SolarSystem SSEph Solar system ephemeris
EarthOrientation EO Earth orientation parameters appropriate for time
XvtStore Eph Ephemeris store
bool isCOM if true, Eph is Center-of-mass, else antenna-phase-center, default false.
Returns:
corrected raw range
Exceptions:
if ephemeris is not found

Definition at line 58 of file PreciseRange.cpp.

References GPSGeoid::angVelocity(), GPSGeoid::c(), Xvt::ddtime, Triple::dot(), Xvt::dtime, GPSTK_RETHROW, gpstk::range(), gpstk::RelativityCorrection(), gpstk::Rx(), gpstk::SatelliteAttitude(), gpstk::SatelliteNadirAzimuthAngles(), gpstk::transpose(), Xvt::v, and Xvt::x.


Member Data Documentation

double azimuth
 

The satellite azimuth (spheroidal), as seen at the receiver, in degrees.

Definition at line 156 of file PreciseRange.hpp.

double azimuthGeodetic
 

The satellite azimuth (geodetic), as seen at the receiver, in degrees.

Definition at line 162 of file PreciseRange.hpp.

Triple cosines
 

The direction cosines of the satellite, as seen at the receiver (XYZ).

Definition at line 168 of file PreciseRange.hpp.

double elevation
 

The satellite elevation (spheroidal), as seen at the receiver, in degrees.

Definition at line 153 of file PreciseRange.hpp.

double elevationGeodetic
 

The satellite elevation (geodetic), as seen at the receiver, in degrees.

Definition at line 159 of file PreciseRange.hpp.

double 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 141 of file PreciseRange.hpp.

double relativity
 

The relativity correction in meters, and high precision correction.

Definition at line 144 of file PreciseRange.hpp.

double relativity2
 

The relativity correction in meters, and high precision correction.

Definition at line 144 of file PreciseRange.hpp.

double Sagnac
 

Net time delay due to Sagnac effect in seconds.

Definition at line 178 of file PreciseRange.hpp.

double satclkbias
 

The satellite clock bias (m) and drift (m/s) at transmit time, from XvtStore.

Definition at line 150 of file PreciseRange.hpp.

double satclkdrift
 

The satellite clock bias (m) and drift (m/s) at transmit time, from XvtStore.

Definition at line 150 of file PreciseRange.hpp.

double satLOSPCO
 

The net line-of-sight offset, in the direction from sat to rx, of the antenna PCO and PCVs, meters.

Definition at line 172 of file PreciseRange.hpp.

double satLOSPCV
 

The net line-of-sight offset, in the direction from sat to rx, of the antenna PCO and PCVs, meters.

Definition at line 172 of file PreciseRange.hpp.

Vector<double> SatPCOXYZ
 

The Satellite PCO vector, in ECEF XYZ, meters (from COM to PC).

Definition at line 175 of file PreciseRange.hpp.

Position SatR
 

The satellite position (m) and velocity (m/s) in ECEF coordinates.

Definition at line 147 of file PreciseRange.hpp.

Position SatV
 

The satellite position (m) and velocity (m/s) in ECEF coordinates.

Definition at line 147 of file PreciseRange.hpp.

DayTime transmit
 

The computed transmit time of the signal.

Definition at line 165 of file PreciseRange.hpp.


The documentation for this class was generated from the following files:
Generated on Wed Feb 8 03:31:27 2012 for GPS ToolKit Software Library by  doxygen 1.3.9.1