45 NONE = GravityModel::NONE,
46 GRAVITY = GravityModel::GRAVITY,
47 DISTURBANCE = GravityModel::DISTURBANCE,
48 DISTURBING_POTENTIAL = GravityModel::DISTURBING_POTENTIAL,
49 GEOID_HEIGHT = GravityModel::GEOID_HEIGHT,
50 SPHERICAL_ANOMALY = GravityModel::SPHERICAL_ANOMALY,
51 ALL = GravityModel::ALL,
55 real _a, _f, _lat, _h, _zZ, _pPx, _invR, _cpsi, _spsi,
56 _cphi, _sphi, _amodel, _gGMmodel, _dzonal0,
57 _corrmult, _gamma0, _gamma, _frot;
61 real Z, real P, real cphi, real sphi,
62 real amodel, real GMmodel,
63 real dzonal0, real corrmult,
64 real gamma0, real gamma, real frot,
71 real& gX, real& gY, real& gZ)
const;
73 real& gX, real& gY, real& gZ)
const;
75 real& deltaX, real& deltaY, real& deltaZ,
76 bool gradp,
bool correct)
const;
168 Math::sincosd(lon, slam, clam);
169 return W(slam, clam, gX, gY, gZ);
188 Math::sincosd(lon, slam, clam);
189 return V(slam, clam, GX, GY, GZ);
209 Math::sincosd(lon, slam, clam);
210 return InternalT(slam, clam, deltaX, deltaY, deltaZ,
true,
true);
221 real slam, clam, dummy;
222 Math::sincosd(lon, slam, clam);
223 return InternalT(slam, clam, dummy, dummy, dummy,
false,
true);
234 bool Init()
const {
return _a > 0; }
242 {
return Init() ? _a : Math::NaN(); }
249 {
return Init() ? _f : Math::NaN(); }
255 {
return Init() ? _lat : Math::NaN(); }
261 {
return Init() ? _h : Math::NaN(); }
274 return (_caps & testcaps) == testcaps;