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


This class may be used either in a Vector- and Matrix-oriented way, or with GNSS data structure objects from "DataStructures" class. In any case, it is intented to be used with stations where the position is known (there comes the name: Modeled Reference station PseudoRange).
A typical way to use this class with GNSS data structures follows:
RinexObsStream rin("ebre0300.02o"); // Data stream RinexNavStream rnavin("brdc0300.02n"); // Ephemeris data stream RinexNavData rNavData; GPSEphemerisStore bceStore; while (rnavin >> rNavData) bceStore.addEphemeris(rNavData); bceStore.SearchPast(); // This is the default RinexNavHeader rNavHeader; IonoModelStore ionoStore; IonoModel ioModel; rnavin >> rNavHeader; // Read navigation RINEX header ioModel.setModel(rNavHeader.ionAlpha, rNavHeader.ionBeta); ionoStore.addIonoModel(CommonTime::BEGINNING_OF_TIME, ioModel); // EBRE station nominal position Position nominalPos(4833520.3800, 41536.8300, 4147461.2800); // Declare a tropospheric model object, setting the defaults MOPSTropModel mopsTM( nominalPos.getAltitude(), nominalPos.getGeodeticLatitude(), 30); // Declare the modeler object, setting all the parameters in // one pass // As stated, it will compute the model using the C1 observable ModeledReferencePR modelRef( nominalPos, ionoStore, mopsTM, bceStore, TypeID::C1 ); gnssRinex gRin; while(rin >> gRin) { gRin >> modelRef; }
The "ModeledReferencePR" object will visit every satellite in the GNSS data structure that is "gRin" and will try to compute its model: Prefit residual, geometric distance, relativity delay, ionospheric/tropospheric corrections, geometry matrix, etc.
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 observations required, it will be summarily deleted from the data structure.
Definition at line 119 of file ModeledReferencePR.hpp.
Public Member Functions | |
| ModeledReferencePR () | |
| Implicit constructor. | |
| ModeledReferencePR (const double &aRx, const double &bRx, const double &cRx, Position::CoordinateSystem s=Position::Cartesian, EllipsoidModel *ell=NULL, ReferenceFrame frame=ReferenceFrame::Unknown) | |
| Explicit constructor taking as input reference station coordinates. | |
| ModeledReferencePR (const Position &RxCoordinates) | |
| Explicit constructor, taking as input a Position object containing reference station coordinates. | |
| ModeledReferencePR (const Position &RxCoordinates, IonoModelStore &dIonoModel, TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input reference station coordinates, default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModeledReferencePR (const Position &RxCoordinates, IonoModelStore &dIonoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input reference station coordinates, default ionospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModeledReferencePR (const Position &RxCoordinates, TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input reference station coordinates, default tropospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModeledReferencePR (const Position &RxCoordinates, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input reference station coordinates, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph, const Vector< double > &extraBiases, TropModel *pTropModel=NULL, IonoModelStore *pIonoModel=NULL) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph, TropModel *pTropModel) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph, const Vector< double > &extraBiases, IonoModelStore *pIonoModel) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph, IonoModelStore *pIonoModel) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, Vector< SatID > &Satellite, Vector< double > &Pseudorange, const XvtStore< SatID > &Eph, TropModel *pTropModel, IonoModelStore *pIonoModel) throw (Exception) |
| Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data. | |
| int | Compute (const CommonTime &Tr, SatID &Satellite, double &Pseudorange, const XvtStore< SatID > &Eph, const double &extraBiases, TropModel *pTropModel=NULL, IonoModelStore *pIonoModel=NULL) throw (Exception) |
| Compute just one modeled pseudorange, given satellite ID's, pseudorange and other data. | |
| virtual satTypeValueMap & | processModel (const CommonTime &time, satTypeValueMap &gData) throw (Exception) |
| Returns a satTypeValueMap object, adding the new data generated when calling a modeling object. | |
| virtual gnssSatTypeValue & | processModel (gnssSatTypeValue &gData) throw (Exception) |
| Returns a gnnsSatTypeValue object, adding the new data generated when calling a modeling object. | |
| virtual gnssRinex & | processModel (gnssRinex &gData) throw (Exception) |
| Returns a gnnsRinex object, adding the new data generated when calling a modeling object. | |
| virtual double | getMinElev () const |
| Method to get satellite elevation cut-off angle. | |
| virtual ModeledReferencePR & | setMinElev (double newElevation) |
| Method to set satellite elevation cut-off angle. | |
| virtual IonoModelStore * | getDefaultIonoModel () const |
| Method to get a pointer to the default ionospheric model. | |
| virtual ModeledReferencePR & | setDefaultIonoModel (IonoModelStore &dIonoModel) |
| Method to set the default ionospheric model. | |
| virtual ModeledReferencePR & | setNULLIonoModel () |
| Method to set a NULL ionospheric model. | |
| virtual TropModel * | getDefaultTropoModel () const |
| Method to get a pointer to the default tropospheric model. | |
| virtual ModeledReferencePR & | setDefaultTropoModel (TropModel &dTropoModel) |
| Method to set the default tropospheric model. | |
| virtual ModeledReferencePR & | setNULLTropoModel () |
| Method to set a NULL tropospheric model. | |
| virtual ModeledReferencePR & | setDefaultExtraBiases (Vector< double > &eBiases) |
| Method to set the default extra biases. | |
| virtual TypeID | getDefaultObservable () const |
| Method to get the default observable being used with GNSS data structures. | |
| virtual ModeledReferencePR & | setDefaultObservable (const TypeID &type) |
| Method to set the default observable to be used when fed with GNSS data structures. | |
| virtual XvtStore< SatID > * | getDefaultEphemeris () const |
| Method to get a pointer to the default XvtStore<SatID> to be used with GNSS data structures. | |
| virtual ModeledReferencePR & | setDefaultEphemeris (XvtStore< SatID > &ephem) |
| Method to set the default XvtStore<SatID> to be used with GNSS data structures. | |
| virtual | ~ModeledReferencePR () |
| Destructor. | |
Public Attributes | |
| bool | useTGD |
| Boolean variable indicating if SV instrumental delays (TGD) will be included in results. | |
Protected Member Functions | |
| virtual void | init () |
| Initialization method. | |
| virtual int | setInitialRxPosition (const double &aRx, const double &bRx, const double &cRx, Position::CoordinateSystem s=Position::Cartesian, EllipsoidModel *ell=NULL, ReferenceFrame frame=ReferenceFrame::Unknown) |
| Method to set the initial (a priori) position of receiver. | |
| virtual int | setInitialRxPosition (const Position &RxCoordinates) |
| Method to set the initial (a priori) position of receiver. | |
| virtual int | setInitialRxPosition () |
| Method to set the initial (a priori) position of receiver. | |
| virtual double | getTropoCorrections (TropModel *pTropModel, double elevation) |
| Method to get the tropospheric corrections. | |
| virtual double | getIonoCorrections (IonoModelStore *pIonoModel, CommonTime Tr, Position rxGeo, double elevation, double azimuth, IonoModel::Frequency freq=IonoModel::L1) |
| Method to get the ionospheric corrections. | |
| virtual double | getTGDCorrections (CommonTime Tr, const XvtStore< SatID > &Eph, SatID sat) |
| Method to get TGD corrections. | |
Protected Attributes | |
| IonoModelStore * | pDefaultIonoModel |
| Pointer to default ionospheric model. | |
| TropModel * | pDefaultTropoModel |
| Pointer to default tropospheric model. | |
| TypeID | defaultObservable |
| Default observable to be used when fed with GNSS data structures. | |
| XvtStore< SatID > * | pDefaultEphemeris |
| Pointer to default XvtStore<SatID> object when working with GNSS data structures. | |
|
|
Implicit constructor.
Definition at line 124 of file ModeledReferencePR.hpp. |
|
||||||||||||||||||||||||||||
|
Explicit constructor taking as input reference station coordinates. Those coordinates may be Cartesian (X, Y, Z in meters) or Geodetic (Latitude, Longitude, Altitude), but defaults to Cartesian.
Definition at line 145 of file ModeledReferencePR.hpp. |
|
|
Explicit constructor, taking as input a Position object containing reference station coordinates.
Definition at line 158 of file ModeledReferencePR.hpp. |
|
||||||||||||||||||||||||||||
|
Explicit constructor, taking as input reference station coordinates, default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not. This constructor is meant to be used when working with GNSS data structures in order to set the basic parameters from the beginning.
Definition at line 56 of file ModeledReferencePR.cpp. References ModeledReferencePR::init(), ModeledReferencePR::setDefaultEphemeris(), ModeledReferencePR::setDefaultIonoModel(), ModeledReferencePR::setDefaultObservable(), ModeledReferencePR::setDefaultTropoModel(), ModeledReferencePR::setInitialRxPosition(), and ModeledReferencePR::useTGD. |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input reference station coordinates, default ionospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. The default tropospheric model will be set to NULL. This constructor is meant to be used when working with GNSS data structures in order to set the basic parameters from the beginning.
Definition at line 92 of file ModeledReferencePR.cpp. References ModeledReferencePR::init(), ModeledReferencePR::pDefaultTropoModel, ModeledReferencePR::setDefaultEphemeris(), ModeledReferencePR::setDefaultIonoModel(), ModeledReferencePR::setDefaultObservable(), ModeledReferencePR::setInitialRxPosition(), and ModeledReferencePR::useTGD. |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input reference station coordinates, default tropospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. The default ionospheric model will be set to NULL. This constructor is meant to be used when working with GNSS data structures in order to set the basic parameters from the beginning.
Definition at line 127 of file ModeledReferencePR.cpp. References ModeledReferencePR::init(), ModeledReferencePR::pDefaultIonoModel, ModeledReferencePR::setDefaultEphemeris(), ModeledReferencePR::setDefaultObservable(), ModeledReferencePR::setDefaultTropoModel(), ModeledReferencePR::setInitialRxPosition(), and ModeledReferencePR::useTGD. |
|
||||||||||||||||||||
|
Explicit constructor, taking as input reference station coordinates, ephemeris to be used, default observable and whether TGD will be computed or not. Both the tropospheric and ionospheric models will be set to NULL. This constructor is meant to be used when working with GNSS data structures in order to set the basic parameters from the beginning.
Definition at line 161 of file ModeledReferencePR.cpp. References ModeledReferencePR::init(), ModeledReferencePR::pDefaultIonoModel, ModeledReferencePR::pDefaultTropoModel, ModeledReferencePR::setDefaultEphemeris(), ModeledReferencePR::setDefaultObservable(), ModeledReferencePR::setInitialRxPosition(), and ModeledReferencePR::useTGD. |
|
|
Destructor.
Definition at line 496 of file ModeledReferencePR.hpp. |
|
||||||||||||||||||||||||||||||||
|
Compute just one modeled pseudorange, given satellite ID's, pseudorange and other data.
Definition at line 569 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 528 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 501 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 474 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 449 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 426 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||||||||||
|
Compute the modeled pseudoranges, given satellite ID's, pseudoranges and other data.
Definition at line 193 of file ModeledReferencePR.cpp. References CorrectedEphemerisRange::azimuthGeodetic, CorrectedEphemerisRange::ComputeAtTransmitTime(), CorrectedEphemerisRange::cosines, CorrectedEphemerisRange::elevationGeodetic, GPSTK_RETHROW, GPSTK_THROW, CorrectedEphemerisRange::rawrange, CorrectedEphemerisRange::relativity, CorrectedEphemerisRange::svclkbias, CorrectedEphemerisRange::svPosVel, and CorrectedEphemerisRange::transmit. |
|
|
Method to get a pointer to the default XvtStore<SatID> to be used with GNSS data structures.
Definition at line 482 of file ModeledReferencePR.hpp. Referenced by ModeledPR::Prepare(). |
|
|
Method to get a pointer to the default ionospheric model.
Definition at line 420 of file ModeledReferencePR.hpp. |
|
|
Method to get the default observable being used with GNSS data structures.
Definition at line 467 of file ModeledReferencePR.hpp. |
|
|
Method to get a pointer to the default tropospheric model.
Definition at line 439 of file ModeledReferencePR.hpp. |
|
||||||||||||||||||||||||||||
|
Method to get the ionospheric corrections.
Definition at line 836 of file ModeledReferencePR.cpp. References IonoModelStore::getCorrection(). |
|
|
Method to get satellite elevation cut-off angle. By default, it is set to 10 degrees. Definition at line 409 of file ModeledReferencePR.hpp. |
|
||||||||||||||||
|
Method to get TGD corrections.
Definition at line 863 of file ModeledReferencePR.cpp. References GPSEphemerisStore::findEphemeris(), and EngEphemeris::getTgd(). |
|
||||||||||||
|
Method to get the tropospheric corrections.
Definition at line 809 of file ModeledReferencePR.cpp. References TropModel::correction(), and TropModel::isValid(). |
|
|
|
Returns a gnnsRinex object, adding the new data generated when calling a modeling object.
Definition at line 397 of file ModeledReferencePR.hpp. |
|
|
Returns a gnnsSatTypeValue object, adding the new data generated when calling a modeling object.
Definition at line 387 of file ModeledReferencePR.hpp. |
|
||||||||||||
|
Returns a satTypeValueMap object, adding the new data generated when calling a modeling object.
Reimplemented in ModeledPR. Definition at line 603 of file ModeledReferencePR.cpp. References GPSTK_RETHROW, gpstk::SatIDSet, and gpstk::TypeIDSet. |
|
|
Method to set the default XvtStore<SatID> to be used with GNSS data structures.
Definition at line 491 of file ModeledReferencePR.hpp. Referenced by ModeledPR::ModeledPR(), and ModeledReferencePR::ModeledReferencePR(). |
|
|
Method to set the default extra biases.
Definition at line 460 of file ModeledReferencePR.hpp. |
|
|
Method to set the default ionospheric model.
Definition at line 428 of file ModeledReferencePR.hpp. Referenced by ModeledPR::ModeledPR(), and ModeledReferencePR::ModeledReferencePR(). |
|
|
Method to set the default observable to be used when fed with GNSS data structures.
Definition at line 476 of file ModeledReferencePR.hpp. Referenced by ModeledPR::ModeledPR(), and ModeledReferencePR::ModeledReferencePR(). |
|
|
Method to set the default tropospheric model.
Definition at line 447 of file ModeledReferencePR.hpp. Referenced by ModeledPR::ModeledPR(), and ModeledReferencePR::ModeledReferencePR(). |
|
|
Method to set the initial (a priori) position of receiver.
Implements ModeledPseudorangeBase. Definition at line 790 of file ModeledReferencePR.cpp. Referenced by ModeledReferencePR::init(), ModeledReferencePR::ModeledReferencePR(), ModeledPR::Prepare(), and ModeledReferencePR::setInitialRxPosition(). |
|
|
Method to set the initial (a priori) position of receiver.
Definition at line 772 of file ModeledReferencePR.cpp. |
|
||||||||||||||||||||||||||||
|
Method to set the initial (a priori) position of receiver.
Definition at line 748 of file ModeledReferencePR.cpp. References ModeledReferencePR::setInitialRxPosition(). |
|
|
Method to set satellite elevation cut-off angle. By default, it is set to 10 degrees. Definition at line 415 of file ModeledReferencePR.hpp. |
|
|
Method to set a NULL ionospheric model.
Definition at line 434 of file ModeledReferencePR.hpp. |
|
|
Method to set a NULL tropospheric model.
Definition at line 452 of file ModeledReferencePR.hpp. |
|
|
Default observable to be used when fed with GNSS data structures.
Definition at line 509 of file ModeledReferencePR.hpp. |
|
|
Pointer to default XvtStore<SatID> object when working with GNSS data structures.
Definition at line 513 of file ModeledReferencePR.hpp. |
|
|
Pointer to default ionospheric model.
Definition at line 503 of file ModeledReferencePR.hpp. Referenced by ModeledReferencePR::ModeledReferencePR(). |
|
|
Pointer to default tropospheric model.
Definition at line 506 of file ModeledReferencePR.hpp. Referenced by ModeledReferencePR::ModeledReferencePR(). |
|
|
Boolean variable indicating if SV instrumental delays (TGD) will be included in results. It is true by default. Definition at line 404 of file ModeledReferencePR.hpp. Referenced by ModeledReferencePR::ModeledReferencePR(). |
1.3.9.1