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


The main difference between this class and ModelObsFixedStation is that for a mobile receiver we should "prepare" the computation giving an estimate of the mobile station position. This position may be the last known position or it may be estimated using a method such as Bancroft's.
Prepare() method is used for this.
A typical way to use this class 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 ModelObs model( ionoStore, mopsTM, bceStore, TypeID::C1 ); // Set the initial apriori position using the Bancroft method model.Prepare(); gnssRinex gRin; while(rin >> gRin) { gRin >> model; }
The "ModelObs" 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 116 of file ModelObs.hpp.
Public Member Functions | |
| ModelObs () | |
| Implicit constructor. | |
| ModelObs (const Position &RxCoordinates, IonoModelStore &dIonoModel, TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input initial receiver coordinates, default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (const Position &RxCoordinates, IonoModelStore &dIonoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input initial receiver coordinates, default ionospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (const Position &RxCoordinates, TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input initial receiver coordinates, default tropospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (const Position &RxCoordinates, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input initial receiver coordinates, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (IonoModelStore &dIonoModel, TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (IonoModelStore &dIonoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input default ionospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| ModelObs (TropModel &dTropoModel, XvtStore< SatID > &dEphemeris, const TypeID &dObservable, bool usetgd=true) | |
| Explicit constructor, taking as input default tropospheric model, ephemeris to be used, default observable and whether TGD will be computed or not. | |
| virtual int | Prepare (const CommonTime &Tr, std::vector< SatID > &Satellite, std::vector< double > &Pseudorange, const XvtStore< SatID > &Eph) |
| Method to set an a priori position of receiver using Bancroft's method. | |
| virtual int | Prepare (const CommonTime &time, const satTypeValueMap &data) |
| Method to set an a priori position of receiver using Bancroft's method. | |
| virtual int | Prepare (const gnssSatTypeValue &gData) |
| Method to set an a priori position of receiver using Bancroft's method. | |
| virtual int | Prepare (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 before Compute() method. | |
| virtual int | Prepare (const Position &RxCoordinates) |
| Method to set the initial (a priori) position of receiver before Compute() method. | |
| virtual satTypeValueMap & | Process (const CommonTime &time, satTypeValueMap &gData) throw (ProcessingException) |
| Returns a satTypeValueMap object, adding the new data generated when calling a modeling object. | |
| bool | getModelPrepared () const |
| Method to get if the model has been prepared. | |
| ModelObs & | setModelPrepared (const bool &prepare) |
| Method to forcefully set whether the model has been prepared. | |
| virtual std::string | getClassName (void) const |
| Returns a string identifying this object. | |
| virtual | ~ModelObs () |
| Destructor. | |
Protected Attributes | |
| bool | modelPrepared |
|
|
Implicit constructor.
Definition at line 121 of file ModelObs.hpp. |
|
||||||||||||||||||||||||||||
|
Explicit constructor, taking as input initial receiver coordinates, default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not.
Definition at line 58 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObs::Prepare(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultIonoModel(), ModelObsFixedStation::setDefaultObservable(), and ModelObsFixedStation::setDefaultTropoModel(). |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input initial receiver 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.
Definition at line 91 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObs::Prepare(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultIonoModel(), and ModelObsFixedStation::setDefaultObservable(). |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input initial receiver 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.
Definition at line 123 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObs::Prepare(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultObservable(), and ModelObsFixedStation::setDefaultTropoModel(). |
|
||||||||||||||||||||
|
Explicit constructor, taking as input initial receiver 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.
Definition at line 154 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObs::Prepare(), ModelObsFixedStation::setDefaultEphemeris(), and ModelObsFixedStation::setDefaultObservable(). |
|
||||||||||||||||||||||||
|
Explicit constructor, taking as input default ionospheric and tropospheric models, ephemeris to be used, default observable and whether TGD will be computed or not.
Definition at line 183 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultIonoModel(), ModelObsFixedStation::setDefaultObservable(), and ModelObsFixedStation::setDefaultTropoModel(). |
|
||||||||||||||||||||
|
Explicit constructor, taking as input default ionospheric model, ephemeris to be used, default observable and whether TGD will be computed or not.
Definition at line 211 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultIonoModel(), and ModelObsFixedStation::setDefaultObservable(). |
|
||||||||||||||||||||
|
Explicit constructor, taking as input default tropospheric model, ephemeris to be used, default observable and whether TGD will be computed or not.
Definition at line 238 of file ModelObs.cpp. References ModelObsFixedStation::InitializeValues(), ModelObsFixedStation::setDefaultEphemeris(), ModelObsFixedStation::setDefaultObservable(), and ModelObsFixedStation::setDefaultTropoModel(). |
|
|
Destructor.
Definition at line 353 of file ModelObs.hpp. |
|
|
Returns a string identifying this object.
Reimplemented from ModelObsFixedStation. Definition at line 40 of file ModelObs.cpp. |
|
|
Method to get if the model has been prepared.
Definition at line 335 of file ModelObs.hpp. |
|
|
Method to set the initial (a priori) position of receiver before Compute() method.
Definition at line 374 of file ModelObs.cpp. References ModelObs::modelPrepared, and ModelObsFixedStation::setInitialRxPosition(). |
|
||||||||||||||||||||||||||||
|
Method to set the initial (a priori) position of receiver before Compute() method.
Definition at line 342 of file ModelObs.cpp. References ModelObs::modelPrepared, and ModelObsFixedStation::setInitialRxPosition(). |
|
|
Method to set an a priori position of receiver using Bancroft's method.
Definition at line 296 of file ModelObs.hpp. References gnssData::body, sourceEpochHeader::epoch, and gnssData::header. |
|
||||||||||||
|
Method to set an a priori position of receiver using Bancroft's method.
Definition at line 308 of file ModelObs.cpp. References ModelObsFixedStation::getDefaultEphemeris(), satTypeValueMap::getVectorOfSatID(), satTypeValueMap::getVectorOfTypeID(), and ModelObs::Prepare(). |
|
||||||||||||||||||||
|
Method to set an a priori position of receiver using Bancroft's method.
Definition at line 268 of file ModelObs.cpp. References Bancroft::Compute(), and PRSolution2::PrepareAutonomousSolution(). Referenced by ModelObs::ModelObs(), and ModelObs::Prepare(). |
|
||||||||||||
|
Returns a satTypeValueMap object, adding the new data generated when calling a modeling object.
Reimplemented from ModelObsFixedStation. Definition at line 401 of file ModelObs.cpp. References GPSTK_THROW. |
|
|
Method to forcefully set whether the model has been prepared.
Definition at line 344 of file ModelObs.hpp. |
|
|
Definition at line 359 of file ModelObs.hpp. Referenced by ModelObs::Prepare(). |
1.3.9.1