29 #ifndef WMMINTERNAL_H_
30 #define WMMINTERNAL_H_
34 #define TRUE ((uint16_t)1)
37 #define FALSE ((uint16_t)0)
39 #define WMM_MAX_MODEL_DEGREES 12
40 #define WMM_MAX_SECULAR_VARIATION_MODEL_DEGREES 12
41 #define NUMTERMS 91 // ((WMM_MAX_MODEL_DEGREES+1)*(WMM_MAX_MODEL_DEGREES+2)/2);
42 #define NUMPCUP 92 // NUMTERMS +1
43 #define NUMPCUPS 13 // WMM_MAX_MODEL_DEGREES +1
138 int WMM_PcupLow(
float *Pcup,
float *dPcup,
float x, uint16_t nMax);
140 int WMM_PcupHigh(
float *Pcup,
float *dPcup,
float x, uint16_t nMax);
#define WMM_MAX_MODEL_DEGREES
int WMM_SecVarSummation(WMMtype_LegendreFunction *LegendreFunction, WMMtype_SphericalHarmonicVariables *SphVariables, WMMtype_CoordSpherical *CoordSpherical, WMMtype_MagneticResults *MagneticResults)
void WMM_Set_Coeff_Array()
int WMM_PcupLow(float *Pcup, float *dPcup, float x, uint16_t nMax)
int WMM_SummationSpecial(WMMtype_SphericalHarmonicVariables *SphVariables, WMMtype_CoordSpherical *CoordSpherical, WMMtype_MagneticResults *MagneticResults)
int WMM_SecVarSummationSpecial(WMMtype_SphericalHarmonicVariables *SphVariables, WMMtype_CoordSpherical *CoordSpherical, WMMtype_MagneticResults *MagneticResults)
int WMM_ComputeSphericalHarmonicVariables(WMMtype_CoordSpherical *CoordSpherical, uint16_t nMax, WMMtype_SphericalHarmonicVariables *SphVariables)
int WMM_PcupHigh(float *Pcup, float *dPcup, float x, uint16_t nMax)
float HeightAboveEllipsoid
float WMM_get_main_field_coeff_h(uint16_t index)
float WMM_get_secular_var_coeff_h(uint16_t index)
int WMM_CalculateGeoMagneticElements(WMMtype_MagneticResults *MagneticResultsGeo, WMMtype_GeoMagneticElements *GeoMagneticElements)
int WMM_AssociatedLegendreFunction(WMMtype_CoordSpherical *CoordSpherical, uint16_t nMax, WMMtype_LegendreFunction *LegendreFunction)
int WMM_Geomag(WMMtype_CoordSpherical *CoordSpherical, WMMtype_CoordGeodetic *CoordGeodetic, WMMtype_GeoMagneticElements *GeoMagneticElements)
float WMM_get_secular_var_coeff_g(uint16_t index)
float WMM_get_main_field_coeff_g(uint16_t index)
Comput the MainFieldCoeffH accounting for the date.
int WMM_GeodeticToSpherical(WMMtype_CoordGeodetic *CoordGeodetic, WMMtype_CoordSpherical *CoordSpherical)
int WMM_RotateMagneticVector(WMMtype_CoordSpherical *, WMMtype_CoordGeodetic *CoordGeodetic, WMMtype_MagneticResults *MagneticResultsSph, WMMtype_MagneticResults *MagneticResultsGeo)
int WMM_DateToYear(uint16_t month, uint16_t day, uint16_t year)
uint16_t SecularVariationUsed
int WMM_CalculateSecularVariation(WMMtype_MagneticResults *MagneticVariation, WMMtype_GeoMagneticElements *MagneticElements)
int WMM_Summation(WMMtype_LegendreFunction *LegendreFunction, WMMtype_SphericalHarmonicVariables *SphVariables, WMMtype_CoordSpherical *CoordSpherical, WMMtype_MagneticResults *MagneticResults)