Public Types | Public Member Functions | Public Attributes | List of all members
gnsstk::Xvt Class Reference

Detailed Description

Earth-Centered, Earth-Fixed Cartesian position, velocity, clock bias and drift

Definition at line 60 of file Xvt.hpp.

#include <Xvt.hpp>

Public Types

enum  HealthStatus {
  MinValue, Uninitialized = MinValue, Unavailable, Unused,
  Unknown, Unhealthy, Degraded, Healthy,
  MaxValue = Healthy
}
 

Public Member Functions

virtual double computeRelativityCorrection (void)
 
double getClockBias () noexcept
 access the clock bias, in second More...
 
double getClockDrift () noexcept
 access the clock drift, in second/second More...
 
Triple getPos () noexcept
 access the position, ECEF Cartesian in meters More...
 
double getRelativityCorr () noexcept
 access the relativity correction, in seconds More...
 
Triple getVel () noexcept
 access the velocity in m/s More...
 
double preciseRho (const Triple &rxPos, const EllipsoidModel &ellipsoid, double correction=0) const noexcept
 
 Xvt ()
 Default constructor. More...
 
virtual ~Xvt ()
 Destructor. More...
 

Public Attributes

double clkbias
 Sat clock correction in seconds. More...
 
double clkdrift
 satellite clock drift in seconds/second More...
 
RefFrame frame
 reference frame of this data More...
 
HealthStatus health
 Health status of satellite at ref time. More...
 
double relcorr
 relativity correction (standard 2R.V/c^2 term), seconds More...
 
Triple v
 satellite velocity in ECEF Cartesian, meters/second More...
 
Triple x
 Sat position ECEF Cartesian (X,Y,Z) meters. More...
 

Member Enumeration Documentation

◆ HealthStatus

Health of satellite at the time of the PVT computation. A more detailed explanation of each enumeration is as follows:

  • Uninitialized - This is used to indicate that the health status has never been properly set. This generally indicates a coding error in the library.
  • Unavailable - This is used to indicate that orbit (or health, in the case of getSVHealth calls) information is not available for the satellite at the time of interest.
  • Unused - This indicates that the XvtStore class or other class generating this Xvt or health status does not actually contain or provide health information. An example of this is the SP3EphemerisStore.
  • Unknown - This is used to indicate that the store was able to provide a PVT, but for whatever reason was not able to determine the health state of the satellite.
  • Unhealthy - This indicates that the satellite is known to be in an unhealthy state at the time of interest.
  • Degraded - This indicates that the satellite is known to be in a degraded state at the time of interest (currently only Galileo supports such a state).
  • Healthy - This indicates that the satellite is known to be in a healthy state.
Enumerator
MinValue 
Uninitialized 

Health status has not been set.

Unavailable 

Orbit information was not available, PVT invalid.

Unused 

Sat health is not used in computing this PVT.

Unknown 

Health state is unknown.

Unhealthy 

Sat is marked unhealthy, do not use PVT.

Degraded 

Sat is in a degraded state, recommend do not use.

Healthy 

Satellite is healthy, PVT valid.

MaxValue 

Definition at line 87 of file Xvt.hpp.

Constructor & Destructor Documentation

◆ Xvt()

gnsstk::Xvt::Xvt ( )
inline

Default constructor.

Definition at line 101 of file Xvt.hpp.

◆ ~Xvt()

virtual gnsstk::Xvt::~Xvt ( )
inlinevirtual

Destructor.

Definition at line 108 of file Xvt.hpp.

Member Function Documentation

◆ computeRelativityCorrection()

double gnsstk::Xvt::computeRelativityCorrection ( void  )
virtual

Compute and return the relativity correction (-2R dot V/c^2) in seconds.

Note
-2*dot(R,V)/(c*c) = -4.4428e-10(s/sqrt(m)) * ecc * sqrt(A(m)) * sinE

Definition at line 98 of file Xvt.cpp.

◆ getClockBias()

double gnsstk::Xvt::getClockBias ( )
inlinenoexcept

access the clock bias, in second

Definition at line 120 of file Xvt.hpp.

◆ getClockDrift()

double gnsstk::Xvt::getClockDrift ( )
inlinenoexcept

access the clock drift, in second/second

Definition at line 124 of file Xvt.hpp.

◆ getPos()

Triple gnsstk::Xvt::getPos ( )
inlinenoexcept

access the position, ECEF Cartesian in meters

Definition at line 112 of file Xvt.hpp.

◆ getRelativityCorr()

double gnsstk::Xvt::getRelativityCorr ( )
inlinenoexcept

access the relativity correction, in seconds

Definition at line 128 of file Xvt.hpp.

◆ getVel()

Triple gnsstk::Xvt::getVel ( )
inlinenoexcept

access the velocity in m/s

Definition at line 116 of file Xvt.hpp.

◆ preciseRho()

double gnsstk::Xvt::preciseRho ( const Triple rxPos,
const EllipsoidModel ellipsoid,
double  correction = 0 
) const
noexcept

Given the position of a ground location, compute the range to the spacecraft position.

Parameters
[in]rxPosground position at broadcast time in ECEF.
[in]ellipsoidgeodetic parameters.
[in]correctionoffset in meters (include any factors other than the SV clock correction and the relativity correction).
Returns
Range in meters

Definition at line 113 of file Xvt.cpp.

Member Data Documentation

◆ clkbias

double gnsstk::Xvt::clkbias

Sat clock correction in seconds.

Definition at line 153 of file Xvt.hpp.

◆ clkdrift

double gnsstk::Xvt::clkdrift

satellite clock drift in seconds/second

Definition at line 154 of file Xvt.hpp.

◆ frame

RefFrame gnsstk::Xvt::frame

reference frame of this data

Definition at line 156 of file Xvt.hpp.

◆ health

HealthStatus gnsstk::Xvt::health

Health status of satellite at ref time.

Definition at line 157 of file Xvt.hpp.

◆ relcorr

double gnsstk::Xvt::relcorr

relativity correction (standard 2R.V/c^2 term), seconds

Definition at line 155 of file Xvt.hpp.

◆ v

Triple gnsstk::Xvt::v

satellite velocity in ECEF Cartesian, meters/second

Definition at line 152 of file Xvt.hpp.

◆ x

Triple gnsstk::Xvt::x

Sat position ECEF Cartesian (X,Y,Z) meters.

Definition at line 151 of file Xvt.hpp.


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


gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:46