All deep space functions start with DeepSpace
parent
d9bb10a12c
commit
0d9cedd50e
12
SGDP4.cpp
12
SGDP4.cpp
|
@ -281,7 +281,7 @@ void SGDP4::FindPositionSDP4(Eci& eci, double tsince) {
|
||||||
double xn = RecoveredMeanMotion();
|
double xn = RecoveredMeanMotion();
|
||||||
|
|
||||||
/* t, xll, omgasm, xnodes, em, xinc, xn */
|
/* t, xll, omgasm, xnodes, em, xinc, xn */
|
||||||
DeepSecular(tsince, xmdf, omega, xnode, e, xincl, xn);
|
DeepSpaceSecular(tsince, xmdf, omega, xnode, e, xincl, xn);
|
||||||
|
|
||||||
if (xn <= 0.0) {
|
if (xn <= 0.0) {
|
||||||
throw new SatelliteException("Error: 2 (xn <= 0.0)");
|
throw new SatelliteException("Error: 2 (xn <= 0.0)");
|
||||||
|
@ -309,7 +309,7 @@ void SGDP4::FindPositionSDP4(Eci& eci, double tsince) {
|
||||||
xlm = fmod(xlm, Globals::TWOPI());
|
xlm = fmod(xlm, Globals::TWOPI());
|
||||||
double xmam = fmod(xlm - omega - xnode, Globals::TWOPI());
|
double xmam = fmod(xlm - omega - xnode, Globals::TWOPI());
|
||||||
|
|
||||||
DeepPeriodics(tsince, e, xincl, omega, xnode, xmam);
|
DeepSpacePeriodics(tsince, e, xincl, omega, xnode, xmam);
|
||||||
|
|
||||||
if (xincl < 0.0) {
|
if (xincl < 0.0) {
|
||||||
xincl = -xincl;
|
xincl = -xincl;
|
||||||
|
@ -921,7 +921,7 @@ void SGDP4::DeepSpaceInitialize(const double& eosq, const double& sinio, const d
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SGDP4::DeepCalculateLunarSolarTerms(const double t, double& pe, double& pinc,
|
void SGDP4::DeepSpaceCalculateLunarSolarTerms(const double t, double& pe, double& pinc,
|
||||||
double& pl, double& pgh, double& ph) {
|
double& pl, double& pgh, double& ph) {
|
||||||
|
|
||||||
static const double ZES = 0.01675;
|
static const double ZES = 0.01675;
|
||||||
|
@ -974,7 +974,7 @@ void SGDP4::DeepCalculateLunarSolarTerms(const double t, double& pe, double& pin
|
||||||
/*
|
/*
|
||||||
* lunar / solar periodics
|
* lunar / solar periodics
|
||||||
*/
|
*/
|
||||||
void SGDP4::DeepPeriodics(const double& t, double& em,
|
void SGDP4::DeepSpacePeriodics(const double& t, double& em,
|
||||||
double& xinc, double& omgasm, double& xnodes, double& xll) {
|
double& xinc, double& omgasm, double& xnodes, double& xll) {
|
||||||
|
|
||||||
double pe = 0.0;
|
double pe = 0.0;
|
||||||
|
@ -983,7 +983,7 @@ void SGDP4::DeepPeriodics(const double& t, double& em,
|
||||||
double pgh = 0.0;
|
double pgh = 0.0;
|
||||||
double ph = 0.0;
|
double ph = 0.0;
|
||||||
|
|
||||||
DeepCalculateLunarSolarTerms(t, pe, pinc, pl, pgh, ph);
|
DeepSpaceCalculateLunarSolarTerms(t, pe, pinc, pl, pgh, ph);
|
||||||
|
|
||||||
if (!first_run_) {
|
if (!first_run_) {
|
||||||
|
|
||||||
|
@ -1050,7 +1050,7 @@ void SGDP4::DeepPeriodics(const double& t, double& em,
|
||||||
/*
|
/*
|
||||||
* deep space secular effects
|
* deep space secular effects
|
||||||
*/
|
*/
|
||||||
void SGDP4::DeepSecular(const double& t, double& xll, double& omgasm,
|
void SGDP4::DeepSpaceSecular(const double& t, double& xll, double& omgasm,
|
||||||
double& xnodes, double& em, double& xinc, double& xn) {
|
double& xnodes, double& em, double& xinc, double& xn) {
|
||||||
|
|
||||||
static const double THDT = 4.37526908801129966e-3;
|
static const double THDT = 4.37526908801129966e-3;
|
||||||
|
|
6
SGDP4.h
6
SGDP4.h
|
@ -24,11 +24,11 @@ private:
|
||||||
void DeepSpaceInitialize(const double& eosq, const double& sinio, const double& cosio, const double& betao,
|
void DeepSpaceInitialize(const double& eosq, const double& sinio, const double& cosio, const double& betao,
|
||||||
const double& theta2, const double& sing, const double& cosg, const double& betao2,
|
const double& theta2, const double& sing, const double& cosg, const double& betao2,
|
||||||
const double& xmdot, const double& omgdot, const double& xnodot);
|
const double& xmdot, const double& omgdot, const double& xnodot);
|
||||||
void DeepCalculateLunarSolarTerms(const double t, double& pe, double& pinc,
|
void DeepSpaceCalculateLunarSolarTerms(const double t, double& pe, double& pinc,
|
||||||
double& pl, double& pgh, double& ph);
|
double& pl, double& pgh, double& ph);
|
||||||
void DeepPeriodics(const double& t, double& em, double& xinc,
|
void DeepSpacePeriodics(const double& t, double& em, double& xinc,
|
||||||
double& omgasm, double& xnodes, double& xll);
|
double& omgasm, double& xnodes, double& xll);
|
||||||
void DeepSecular(const double& t, double& xll, double& omgasm,
|
void DeepSpaceSecular(const double& t, double& xll, double& omgasm,
|
||||||
double& xnodes, double& em, double& xinc, double& xn);
|
double& xnodes, double& em, double& xinc, double& xn);
|
||||||
void FindPositionSDP4(Eci& eci, double tsince);
|
void FindPositionSDP4(Eci& eci, double tsince);
|
||||||
void FindPositionSGP4(Eci& eci, double tsince);
|
void FindPositionSGP4(Eci& eci, double tsince);
|
||||||
|
|
Loading…
Reference in New Issue