🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
J2J4Analytical.hpp
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstCore/OrbitElement.hpp"
25#include "AstCore/TimePoint.hpp"
26
27AST_NAMESPACE_BEGIN
28
29
35class ModOrbElem;
36class TimePoint;
37
38
39
45class AST_CORE_API J2J4Analytical
46{
47public:
48 J2J4Analytical(const ModOrbElem& modOrbElem, const TimePoint& epoch, double gm)
49 : modOrbElem_(modOrbElem)
50 , epoch_(epoch)
51 , gm_(gm)
52 , raanDot_(0)
53 , argPeriDot_(0)
54 , meanAnomalyDot_(0)
55 {}
56
65 errc_t prop(double duration, Vector3d& r, Vector3d& v);
66
74 errc_t prop(double duration, ModOrbElem& modOrbElem);
75
76
85 errc_t prop(const TimePoint& epoch, Vector3d& r, Vector3d& v);
86
94 errc_t prop(const TimePoint& epoch, ModOrbElem& modOrbElem);
95protected:
101 errc_t propNoNormalize(double duration, ModOrbElem& modOrbElem);
102protected:
106 void setRaanDot(double raanDot) { raanDot_ = raanDot; }
110 void setArgPeriDot(double argPeriDot) { argPeriDot_ = argPeriDot; }
114 void setMeanAnomalyDot(double meanAnomalyDot) { meanAnomalyDot_ = meanAnomalyDot; }
115protected:
118 double gm_;
119 double raanDot_;
120 double argPeriDot_;
122};
123
124
127AST_NAMESPACE_END
时间点
定义 J2J4Analytical.hpp:46
double meanAnomalyDot_
平近点角速度
定义 J2J4Analytical.hpp:121
ModOrbElem modOrbElem_
改进轨道根数
定义 J2J4Analytical.hpp:116
double gm_
引力常数
定义 J2J4Analytical.hpp:118
double argPeriDot_
近心点角速度
定义 J2J4Analytical.hpp:120
void setRaanDot(double raanDot)
设置升交点角速度
定义 J2J4Analytical.hpp:106
TimePoint epoch_
参考时间点
定义 J2J4Analytical.hpp:117
void setMeanAnomalyDot(double meanAnomalyDot)
设置平近点角速度
定义 J2J4Analytical.hpp:114
void setArgPeriDot(double argPeriDot)
设置近心点角速度
定义 J2J4Analytical.hpp:110
double raanDot_
升交点角速度
定义 J2J4Analytical.hpp:119
修正轨道根数
定义 OrbitElement.hpp:127
绝对时间点
定义 TimePoint.hpp:106