10 #if !defined(GEOGRAPHICLIB_GRAVITYMODEL_HPP) 11 #define GEOGRAPHICLIB_GRAVITYMODEL_HPP 1 20 # pragma warning (push) 21 # pragma warning (disable: 4251) 87 static const int idlength_ = 8;
88 std::string _name, _dir, _description, _date, _filename, _id;
89 real _amodel, _GMmodel, _zeta0, _corrmult;
92 std::vector<real> _Cx, _Sx, _CC, _CS, _zonal;
97 void ReadMetadata(
const std::string& name);
99 real& deltaX, real& deltaY, real& deltaZ,
100 bool gradp,
bool correct)
const;
108 CAP_DELTA = 1U<<2 | CAP_T,
137 DISTURBANCE = CAP_DELTA,
143 DISTURBING_POTENTIAL = CAP_T,
148 SPHERICAL_ANOMALY = CAP_DELTA | CAP_GAMMA,
153 GEOID_HEIGHT = CAP_T | CAP_C | CAP_GAMMA0,
184 const std::string& path =
"");
207 Math::real Gravity(real lat, real lon, real h,
208 real& gx, real& gy, real& gz)
const;
225 Math::real Disturbance(real lat, real lon, real h,
226 real& deltax, real& deltay, real& deltaz)
242 Math::real GeoidHeight(real lat, real lon)
const;
261 void SphericalAnomaly(real lat, real lon, real h,
262 real& Dg01, real& xi, real& eta)
const;
287 real& gX, real& gY, real& gZ)
const;
306 real& GX, real& GY, real& GZ)
const;
325 real& deltaX, real& deltaY, real& deltaZ)
const 326 {
return InternalT(X, Y, Z, deltaX, deltaY, deltaZ,
true,
true); }
339 return InternalT(X, Y, Z, dummy, dummy, dummy,
false,
true);
362 real& gammaX, real& gammaY, real& gammaZ)
const 363 {
return _earth.
U(X, Y, Z, gammaX, gammaY, gammaZ); }
380 {
return _earth.
Phi(X, Y, fX, fY); }
418 GravityCircle Circle(real lat, real h,
unsigned caps = ALL)
const;
439 const std::string&
DateTime()
const {
return _date; }
500 static std::string DefaultGravityPath();
511 static std::string DefaultGravityName();
516 #if defined(_MSC_VER) 517 # pragma warning (pop) 520 #endif // GEOGRAPHICLIB_GRAVITYMODEL_HPP
#define GEOGRAPHICLIB_EXPORT
const std::string & GravityFile() const
GeographicLib::Math::real real
The normal gravity of the earth.
Math::real T(real X, real Y, real Z, real &deltaX, real &deltaY, real &deltaZ) const
Math::real Flattening() const
Math::real MajorRadius() const
Math::real Flattening() const
const std::string & GravityModelName() const
Math::real AngularVelocity() const
Math::real AngularVelocity() const
const std::string & Description() const
Header for GeographicLib::SphericalHarmonic1 class.
Namespace for GeographicLib.
const NormalGravity & ReferenceEllipsoid() const
const std::string & GravityModelDirectory() const
Header for GeographicLib::SphericalHarmonic class.
Model of the earth's gravity field.
Math::real Phi(real X, real Y, real &fX, real &fY) const
Math::real MajorRadius() const
Header for GeographicLib::NormalGravity class.
Math::real MassConstant() const
Math::real U(real X, real Y, real Z, real &gammaX, real &gammaY, real &gammaZ) const
Header for GeographicLib::Constants class.
const std::string & DateTime() const
Spherical harmonic series with a correction to the coefficients.
Math::real U(real X, real Y, real Z, real &gammaX, real &gammaY, real &gammaZ) const
Math::real T(real X, real Y, real Z) const
Math::real Phi(real X, real Y, real &fX, real &fY) const
Math::real ReferenceMassConstant() const
Spherical harmonic series.
Gravity on a circle of latitude.
Math::real MassConstant() const