fixed calculation of sun vectore model
This commit is contained in:
parent
72300f0217
commit
72b503bb8f
@ -857,12 +857,13 @@ class AcsParameters /*: public HasParametersIF*/ {
|
|||||||
struct SunModelParameters {
|
struct SunModelParameters {
|
||||||
enum UseSunModel { NO = 0, YES = 3 };
|
enum UseSunModel { NO = 0, YES = 3 };
|
||||||
uint8_t useSunModel;
|
uint8_t useSunModel;
|
||||||
float domega = 36000.771;
|
float domega = 36000.77005361; // 36000.771;
|
||||||
float omega_0 = 282.94 * M_PI / 180.; // RAAN plus argument of perigee
|
float omega_0 =
|
||||||
|
280.4606184 * M_PI / 180.; // 282.94 * M_PI / 180.; // RAAN plus argument of perigee
|
||||||
float m_0 = 357.5256; // coefficients for mean anomaly
|
float m_0 = 357.5256; // coefficients for mean anomaly
|
||||||
float dm = 35999.049; // coefficients for mean anomaly
|
float dm = 35999.049; // coefficients for mean anomaly
|
||||||
float e = 23.4392911 * M_PI / 180.; // angle of earth's rotation axis
|
float e = 23.4392911 * M_PI / 180.; // angle of earth's rotation axis
|
||||||
float e1 = 0.74508 * M_PI / 180.;
|
float e1 = 0.013 * M_PI / 180.; // 0.74508 * M_PI / 180.;
|
||||||
|
|
||||||
float p1 = 6892. / 3600. * M_PI / 180.; // some parameter
|
float p1 = 6892. / 3600. * M_PI / 180.; // some parameter
|
||||||
float p2 = 72. / 3600. * M_PI / 180.; // some parameter
|
float p2 = 72. / 3600. * M_PI / 180.; // some parameter
|
||||||
|
@ -397,10 +397,10 @@ void SensorProcessing::processSus(
|
|||||||
|
|
||||||
// Julean Centuries
|
// Julean Centuries
|
||||||
double sunIjkModel[3] = {0.0, 0.0, 0.0};
|
double sunIjkModel[3] = {0.0, 0.0, 0.0};
|
||||||
double JC2000 = JD2000 / 36525;
|
double JC2000 = JD2000 / 36525.;
|
||||||
|
|
||||||
double meanLongitude =
|
double meanLongitude =
|
||||||
(sunModelParameters->omega_0 + (sunModelParameters->domega) * JC2000) * PI / 180;
|
sunModelParameters->omega_0 + (sunModelParameters->domega * JC2000) * PI / 180.;
|
||||||
double meanAnomaly = (sunModelParameters->m_0 + sunModelParameters->dm * JC2000) * PI / 180.;
|
double meanAnomaly = (sunModelParameters->m_0 + sunModelParameters->dm * JC2000) * PI / 180.;
|
||||||
|
|
||||||
double eclipticLongitude = meanLongitude + sunModelParameters->p1 * sin(meanAnomaly) +
|
double eclipticLongitude = meanLongitude + sunModelParameters->p1 * sin(meanAnomaly) +
|
||||||
|
Loading…
Reference in New Issue
Block a user