125 lines
2.4 KiB
C++
125 lines
2.4 KiB
C++
#ifndef GLOBALS_H_
|
|
#define GLOBALS_H_
|
|
|
|
#include <cmath>
|
|
|
|
class Globals {
|
|
public:
|
|
Globals(void);
|
|
~Globals(void);
|
|
|
|
static const double Q0() {
|
|
return 120.0;
|
|
}
|
|
|
|
static const double S0() {
|
|
return 78.0;
|
|
}
|
|
|
|
static const double CK2() {
|
|
return 0.5 * XJ2() * AE() * AE();
|
|
}
|
|
|
|
static const double CK4() {
|
|
return -0.375 * XJ4() * AE() * AE() * AE() * AE();
|
|
}
|
|
|
|
static const double TOTHRD() {
|
|
return 2.0 / 3.0;
|
|
}
|
|
|
|
static const double XKE() {
|
|
return 60.0 / sqrt(XKMPER() * XKMPER() * XKMPER() / MU());
|
|
}
|
|
|
|
static const double S() {
|
|
return AE() * (1.0 + S0() / XKMPER());
|
|
}
|
|
|
|
static const double AE() {
|
|
return 1.0;
|
|
}
|
|
|
|
static const double XKMPER() {
|
|
return 6378.135;
|
|
}
|
|
|
|
static const double QOMS2T() {
|
|
return pow((Q0() - S0()) * AE() / XKMPER(), 4.0);
|
|
}
|
|
|
|
static const double XJ2() {
|
|
return 1.082616e-3;
|
|
}
|
|
|
|
static const double XJ3() {
|
|
return -2.53881e-6;
|
|
}
|
|
|
|
static const double XJ4() {
|
|
return -1.65597e-6;
|
|
}
|
|
|
|
static const double MU() {
|
|
return 398600.8;
|
|
}
|
|
|
|
static const double J3OJ2() {
|
|
return XJ3() / XJ2();
|
|
}
|
|
|
|
static const double RADS_PER_DEG() {
|
|
return -0.253881E-5;
|
|
}
|
|
|
|
static const double PI() {
|
|
return 3.14159265358979323846;
|
|
}
|
|
|
|
static const double TWOPI() {
|
|
return 2.0 * PI();
|
|
}
|
|
|
|
static const double SEC_PER_DAY() {
|
|
return 86400.0;
|
|
}
|
|
|
|
static const double MIN_PER_DAY() {
|
|
return 1440.0;
|
|
}
|
|
|
|
static const double HR_PER_DAY() {
|
|
return 24.0;
|
|
}
|
|
|
|
static const double OMEGA_E() {
|
|
return 1.00273790934;
|
|
}
|
|
|
|
static const double F() {
|
|
return 1.0 / 298.26;
|
|
}
|
|
|
|
static const double EPOCH_JAN1_00H_1900() {
|
|
// Jan 1.0 1900 = Jan 1 1900 00h UTC
|
|
return 2415019.5;
|
|
}
|
|
|
|
static const double EPOCH_JAN1_12H_1900() {
|
|
// Jan 1.5 1900 = Jan 1 1900 12h UTC
|
|
return 2415020.0;
|
|
}
|
|
|
|
static const double EPOCH_JAN1_12H_2000() {
|
|
// Jan 1.5 2000 = Jan 1 2000 12h UTC
|
|
return 2451545.0;
|
|
}
|
|
|
|
static double Fmod2p(const double& arg);
|
|
static double Deg2Rad(const double& deg);
|
|
static double Rad2Deg(const double& rad);
|
|
};
|
|
|
|
#endif
|
|
|