#include <IonexModel.hpp>
Inheritance diagram for IonexModel:


This class is intended to be used with GNSS Data Structures (GDS).
A typical way to use this class follows:
// Input observation file stream RinexObsStream rin("ebre030a.02o"); // Load precise ephemeris file SP3EphemerisStore sp3Eph; sp3Eph.loadFile("igs11513.sp3"); // Load IONEX file IonexStore IonexMapList; IonexMapList.loadFile("codg0300.02i"); // Reference position of receiver station Position nominalPos(4833520.2269, 41537.00768, 4147461.489); // Some more code and definitions here... gnssRinex gRin; // GNSS data structure for fixed station data // This object will compute the ionex modeler IonexModel ionex(nominalPos, IonexMapList); while(rin >> gRin) { gRin >> model >> ionex; }
The "IonexModel" object will visit every satellite in the GNSS data structure that is "gRin" and will try to compute the main values of the corresponding IONEX model: Total Electron Content value (TECU), ionospheric mapping function, ionospheric slant correction (meters).
When used with the ">>" operator, this class returns the same incoming data structure with the extra data inserted along their corresponding satellites.
Be warned that if a given satellite does NOT have the information needed (elevation and azimuth ARE REQUIRED), it will be summarily deleted from the data structure. This also implies that if you try to use a "IonexModel" object without first defining the IONEX model, then ALL satellites will be deleted.
Definition at line 106 of file IonexModel.hpp.
Public Member Functions | |
| IonexModel () | |
| Default constructor. | |
| IonexModel (const Position &RxCoordinates) throw (Exception) | |
| Explicit constructor, taking as input a Position object containing reference station coordinates. | |
| IonexModel (const Position &RxCoordinates, IonexStore &istore, const TypeID &dObservable=TypeID::P1, const bool &applyDCB=true, const std::string &ionoMap="SLM") throw (Exception) | |
| Explicit constructor, taking as input reference station coordinates and ionex maps (Ionex Store object) to be used. | |
| virtual satTypeValueMap & | Process (const DayTime &time, satTypeValueMap &gData) throw (Exception) |
| Returns a satTypeValueMap object, adding the new data generated when calling a modeling object. | |
| virtual gnssSatTypeValue & | Process (gnssSatTypeValue &gData) throw (Exception) |
| Returns a gnnsSatTypeValue object, adding the new data generated when calling a modeling object. | |
| virtual gnssRinex & | Process (gnssRinex &gData) throw (Exception) |
| Returns a gnnsRinex object, adding the new data generated when calling a modeling object. | |
| virtual TypeID | getDefaultObservable () const |
| Method to get the default observable for computations. | |
| virtual IonexModel & | setDefaultObservable (const TypeID &type) |
| Method to set the default observable for computations. | |
| virtual IonexStore * | getDefaultMaps (void) const |
| Method to get a pointer to the default maps to be used with GNSS data structures. | |
| virtual IonexModel & | setDefaultMaps (IonexStore &istore) |
| Method to set the default ionex maps (IonexStore object) to be used with GNSS data structures. | |
| virtual bool | getUseDCB (void) const |
| Method to get if DCB is being used. | |
| virtual IonexModel & | setUseDCB (bool applyDCB) |
| Method to set if DCB will be used. | |
| virtual int | setInitialRxPosition (const Position &RxCoordinates) throw (GeometryException) |
| Method to set the initial (a priori) position of receiver. | |
| virtual int | setInitialRxPosition (void) throw (GeometryException) |
| Method to set the initial (a priori) position of receiver. | |
| virtual std::string | getIonoMapType () const |
| Method to get the default ionosphere mapping function type. | |
| virtual IonexModel & | setIonoMapType (const std::string &ionoMap) |
| Method to set the default ionosphere mapping function type. | |
| virtual double | getDCBCorrections (const DayTime &time, const IonexStore &Maps, SatID sat) throw () |
| Method to get DCB corrections. | |
| virtual int | getIndex (void) const |
| Returns an index identifying this object. | |
| virtual std::string | getClassName (void) const |
| Returns a string identifying this object. | |
| virtual | ~IonexModel () |
| Destructor. | |
Protected Attributes | |
| TypeID | defaultObservable |
| Default observable to be used when fed with GNSS data structures. | |
| IonexStore * | pDefaultMaps |
| Pointer to default Ionex object when working with GNSS data structures. | |
| Position | rxPos |
| Either estimated or "a priori" position of receiver. | |
| bool | useDCB |
| Whether or not the DCB effect will be applied to correct P1-code measurements (to make them consistent with LC satellite clocks). | |
| std::string | ionoMapType |
| Type of ionosphere mapping function. | |
| double | ionoHeight |
| the mean value for the height of the ionosphere for which the TEC values are extracted. | |
|
|
Default constructor.
Definition at line 112 of file IonexModel.hpp. |
|
|
Explicit constructor, taking as input a Position object containing reference station coordinates.
Definition at line 56 of file IonexModel.cpp. |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input reference station coordinates and ionex maps (Ionex Store object) to be used.
Definition at line 82 of file IonexModel.cpp. |
|
|
Destructor.
Definition at line 267 of file IonexModel.hpp. |
|
|
Returns a string identifying this object.
Implements ProcessingClass. Definition at line 49 of file IonexModel.cpp. |
|
||||||||||||||||
|
Method to get DCB corrections. @ return Differential Code Bias (nano-seconds) Definition at line 369 of file IonexModel.cpp. |
|
|
Method to get a pointer to the default maps to be used with GNSS data structures.
Definition at line 187 of file IonexModel.hpp. |
|
|
Method to get the default observable for computations.
Definition at line 173 of file IonexModel.hpp. |
|
|
Returns an index identifying this object.
Implements ProcessingClass. Definition at line 44 of file IonexModel.cpp. |
|
|
Method to get the default ionosphere mapping function type.
Definition at line 230 of file IonexModel.hpp. |
|
|
Method to get if DCB is being used.
Definition at line 201 of file IonexModel.hpp. |
|
|
Returns a gnnsRinex object, adding the new data generated when calling a modeling object.
Implements ProcessingClass. Definition at line 167 of file IonexModel.hpp. |
|
|
Returns a gnnsSatTypeValue object, adding the new data generated when calling a modeling object.
Implements ProcessingClass. Definition at line 157 of file IonexModel.hpp. |
|
||||||||||||
|
Returns a satTypeValueMap object, adding the new data generated when calling a modeling object.
Definition at line 107 of file IonexModel.cpp. References gpstk::C_GPS_M, GPSTK_RETHROW, gpstk::SatIDSet, and Position::transformTo(). |
|
|
Method to set the default ionex maps (IonexStore object) to be used with GNSS data structures.
Definition at line 196 of file IonexModel.hpp. |
|
|
Method to set the default observable for computations.
Definition at line 181 of file IonexModel.hpp. |
|
|
Method to set the initial (a priori) position of receiver.
Definition at line 313 of file IonexModel.cpp. |
|
|
Method to set the initial (a priori) position of receiver.
Definition at line 291 of file IonexModel.cpp. |
|
|
Method to set the default ionosphere mapping function type.
Definition at line 344 of file IonexModel.cpp. References IonexModel::ionoHeight, and IonexModel::ionoMapType. |
|
|
Method to set if DCB will be used.
Definition at line 210 of file IonexModel.hpp. |
|
|
Default observable to be used when fed with GNSS data structures.
Definition at line 274 of file IonexModel.hpp. |
|
|
the mean value for the height of the ionosphere for which the TEC values are extracted.
Definition at line 299 of file IonexModel.hpp. Referenced by IonexModel::setIonoMapType(). |
|
|
Type of ionosphere mapping function.
Definition at line 294 of file IonexModel.hpp. Referenced by IonexModel::setIonoMapType(). |
|
|
Pointer to default Ionex object when working with GNSS data structures.
Definition at line 279 of file IonexModel.hpp. |
|
|
Either estimated or "a priori" position of receiver.
Definition at line 283 of file IonexModel.hpp. |
|
|
Whether or not the DCB effect will be applied to correct P1-code measurements (to make them consistent with LC satellite clocks).
Definition at line 289 of file IonexModel.hpp. |
1.3.9.1