Go to the documentation of this file.
45 #ifndef TROP_MODEL_HPP
46 #define TROP_MODEL_HPP
55 #include "gnsstk_export.h"
57 #define THROW_IF_INVALID() {if (!valid) {InvalidTropModel e("Invalid model");GNSSTK_THROW(e);}}
119 {
return std::string(
"Undefined"); }
127 virtual double correction(
double elevation)
const;
262 double SaasDryDelay(
const double pr,
const double lat,
const double ht)
265 return (0.0022768*pr/(1-0.00266*::
cos(2*lat*
DEG_TO_RAD)-0.00028*ht/1000.));
276 const double& ht,
double& T,
double& P,
double& H);
294 {
return std::string(
"Zero"); }
virtual double correction(double elevation) const
virtual double wet_mapping_function(double elevation) const
virtual double dry_zenith_delay() const =0
virtual std::string name()
Return the name of the model.
static void weatherByStandardAtmosphereModel(const double &ht, double &T, double &P, double &H)
virtual ~TropModel()
Destructor.
virtual std::string name()
Return the name of the model.
virtual double correction(const Xvt &RX, const Xvt &SV, const CommonTime &tt)
double SaasDryDelay(const double pr, const double lat, const double ht) const
A Single Weather Observation.
static const GNSSTK_EXPORT double CELSIUS_TO_KELVIN
virtual double correction(const Position &RX, const Position &SV, const CommonTime &tt)
NEW_EXCEPTION_CLASS(FileSpecException, gnsstk::Exception)
virtual void setReceiverHeight(const double &ht)
double humid
latest value of relative humidity (percent)
virtual double wet_zenith_delay() const =0
bool valid
true only if current model parameters are valid
double cos(gnsstk::Angle x)
double press
latest value of pressure (millibars)
virtual double dry_mapping_function(double elevation) const =0
virtual void setWeather(const double &T, const double &P, const double &H)
virtual void setReceiverLongitude(const double &lon)
virtual double correction(double elevation) const
virtual double wet_mapping_function(double elevation) const =0
virtual void setReceiverLatitude(const double &lat)
virtual double dry_mapping_function(double elevation) const
virtual double wet_zenith_delay() const
double temp
latest value of temperature (kelvin or celsius)
virtual double dry_zenith_delay() const
bool isValid()
Return validity of model.
virtual void setDayOfYear(const int &d)
virtual double correction(const Xvt &RX, const Xvt &SV, const CommonTime &tt)
The 'zero' trop model, meaning it always returns zero.
static const double DEG_TO_RAD
Conversion Factor from degrees to radians (units: degrees^-1)
gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:42