Go to the documentation of this file.
39 #ifndef GNSSTK_NEQUICKIONODATA_HPP
40 #define GNSSTK_NEQUICKIONODATA_HPP
138 static double neExp(
double x);
228 static inline double epstein(
double x,
double y,
double z,
double w);
287 friend class ::NeQuickIonoNavData_T;
381 const MODIP& modip,
double modipSta,
384 double tolerance,
bool vertical,
385 unsigned recursionLevel = 0)
400 friend class ::NeQuickIonoNavData_T;
407 DEBUGTRACE(
"thickness_param=" << std::scientific << z);
408 DEBUGTRACE(
"height_km=" << std::scientific << w);
409 DEBUGTRACE(
"pPeak->height_km=" << std::scientific <<
y);
410 double tmp = exp((w-
y)/z);
411 DEBUGTRACE(
"electron_density (1)=" << std::scientific << tmp);
412 double rv = (x*tmp) / ((1+tmp)*(1+tmp));
413 DEBUGTRACE(
"electron_density (2)=" << std::scientific << rv);
428 #endif // GNSSTK_NEQUICKIONODATA_HPP
double fM3000F2
F2 layer transmission factor.
const double DEG2RAD
Multiply degrees by DEG2RAD to get radians.
double integrateGaussKronrod(double heightPt1, double heightPt2, const Position &rxgeo, const Position &svgeo, const MODIP &modip, double modipSta, CCIR &ccirData, const CivilTime &when, double azu, double tolerance, bool vertical, unsigned recursionLevel=0) const
double fB1bot
F1 layer bottom-side thickness parameter in km.
double fBEtop
E layer top-side thickness parameter in km.
double ffoF1
F1 layer critical frequency in MHz.
double ffoE
E layer critical frequency in MHz.
static Angle effSolarZenithAngle(const Position &pos, const CivilTime &when)
static double epstein(double x, double y, double z, double w)
double fH0
Top-side thickness parameter in km.
static constexpr double DEGREE_PER_HOUR
Number of degrees longitude per hour.
double fA[3]
F2, F1, E layer peak amplitudes.
bool idf[5]
Ionospheric disturbance flag for regions 1-5 (0-4).
double getSED(double dist, const Position &rxgeo, const Position &svgeo, const MODIP &modip, CCIR &ccirData, const CivilTime &when, double azu) const
CCIR & ccir
Reference to iono model data.
double fhmF2
F2 layer maximum density height in km.
IntegrationParameters(const Position &rx, const Position &sv, const Position &Pp, bool vertical)
page HOWTO subpage DoxygenGuide Documenting Your Code page DoxygenGuide Documenting Your Code todo Flesh out this document section doctips Tips for Documenting When defining make sure that the prototype is identical between the cpp and hpp including both the namespaces and the parameter names for you have std::string as the return type in the hpp file and string as the return type in the cpp Doxygen may get confused and autolink to the cpp version with no documentation If you don t use the same parameter names between the cpp and hpp that will also confuse Doxygen Don t put type information in return or param documentation It doesn t really add anything and will often cause Doxygen to complain and not produce the documentation< br > use note Do not put a comma after a param name unless you mean to document multiple parameters< br/> the output stream</code >< br/> y
std::vector< double > intThresh
double fNmF1
F1 layer maximum electron density in el m**-2.
double fNmF2
F2 layer maximum electron density in el m**-2.
Aggregate the model parameters as defined in section 2.5.5.
double electronDensityTop(const Position &pos)
double getIonoCorr(const CommonTime &when, const Position &rxgeo, const Position &svgeo, CarrierBand band) const override
double fNmE
E layer maximum electron density in el m**-2.
static Angle solarZenithAngle(const Position &pos, const CivilTime &when)
static AngleReduced solarDeclination(const CivilTime &when)
void exosphereAdjust(unsigned month)
void legendre(double modip_u, const Position &pos)
double electronDensityBottom(const Position &pos)
DumpDetail
Specify level of detail for dump output.
static double solarGetLongitude(const CivilTime &when)
Class to contain data used when integrating TEC.
double fAzr
Effective sunspot number.
static double neExp(double x)
double fhmF1
F1 layer maximum density height in km.
void dump(std::ostream &s, DumpDetail dl) const override
double ffoF2
F2 layer critical frequency in MHz.
GalileoIonoEllipsoid elModel
double getVED(double dist, const Position &rxgeo, const Position &svgeo, double modip_u, CCIR &ccirData, const CivilTime &when, double azu) const
bool validate() const override
#define DEBUGTRACE_FUNCTION()
double electronDensity(const Position &pos)
ModelParameters(double modip_u, const Position &pos, double az, CCIR &ccirData, const CivilTime &when)
std::vector< double > integHeights
double fB2bot
F2 layer bottom-side thickness parameter in km.
double getEffIonoLevel(double modip_u) const
double fB1top
F1 layer top-side thickness parameter in km.
Angle fXeff
Effective solar zenith angle.
NeQuickIonoNavData()
Initialize internal data.
double getUTHour() const
Get the "universal time"-esque fractional hour of day.
double getTEC(const CommonTime &when, const Position &rxgeo, const Position &svgeo) const
gnsstk
Author(s):
autogenerated on Wed Oct 25 2023 02:40:40