41 real _a, _f, _lat, _h, _t, _cphi, _sphi, _t1, _dt0;
42 bool _interpolate, _constterm;
46 real cphi, real sphi, real t1, real dt0,
51 , _lat(Math::LatFix(lat))
58 , _interpolate(interpolate)
65 real cphi, real sphi, real t1, real dt0,
78 , _interpolate(interpolate)
85 void Field(real lon,
bool diffp,
86 real& Bx, real& By, real& Bz,
87 real& Bxt, real& Byt, real& Bzt)
const;
89 void FieldGeocentric(real slam, real clam,
90 real& BX, real& BY, real& BZ,
91 real& BXt, real& BYt, real& BZt)
const;
118 void operator()(real lon, real& Bx, real& By, real& Bz)
const {
120 Field(lon,
false, Bx, By, Bz, dummy, dummy, dummy);
138 real& Bxt, real& Byt, real& Bzt)
const {
139 Field(lon,
true, Bx, By, Bz, Bxt, Byt, Bzt);
164 bool Init()
const {
return _a > 0; }
171 {
return Init() ? _a : Math::NaN(); }
177 {
return Init() ? _f : Math::NaN(); }
182 {
return Init() ? _lat : Math::NaN(); }
187 {
return Init() ? _h : Math::NaN(); }
192 {
return Init() ? _t : Math::NaN(); }