10 #if !defined(GEOGRAPHICLIB_NORMALGRAVITY_HPP) 11 #define GEOGRAPHICLIB_NORMALGRAVITY_HPP 1 82 static const int maxit_ = 20;
85 real _a, _gGM, _omega, _f, _jJ2, _omega2, _aomega2;
86 real _e2, _ep2, _b, _eE, _uU0, _gammae, _gammap, _qQ0, _k, _fstar;
88 static real atanzz(real x,
bool alt) {
94 using std::sqrt, std::fabs, std::atan, std::asin, std::asinh, std::atanh;
95 real z = sqrt(fabs(x));
98 (!(x < 0) ? asinh(z) : asin(z)) / sqrt(fabs(x) / (1 + x)) :
99 (!(x < 0) ? atan(z) : atanh(z)) / z);
106 real Jn(
int n)
const;
144 bool geometricp =
true);
264 bool Init()
const {
return _a > 0; }
294 {
return Init() ? ( n == 2 ? _jJ2 : Jn(n)) :
Math::NaN(); }
301 {
return Init() ? _omega :
Math::NaN(); }
315 {
return Init() ? _gammae :
Math::NaN(); }
322 {
return Init() ? _gammap :
Math::NaN(); }
329 {
return Init() ? _fstar :
Math::NaN(); }
394 #endif // GEOGRAPHICLIB_NORMALGRAVITY_HPP
#define GEOGRAPHICLIB_EXPORT
The normal gravity of the earth.
Math::real Flattening() const
Math::real SurfacePotential() const
Math::real MassConstant() const
Math::real GravityFlattening() const
Namespace for GeographicLib.
Header for GeographicLib::Geocentric class.
GeographicLib::Math::real real
Math::real EquatorialGravity() const
Model of the earth's gravity field.
Math::real AngularVelocity() const
Math::real EquatorialRadius() const
Header for GeographicLib::Constants class.
Math::real DynamicalFormFactor(int n=2) const
Math::real PolarGravity() const
const Geocentric & Earth() const