🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
JacchiaRoberts.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstCore/AtmosphereBase.hpp"
25#include "AstCore/SunPosition.hpp"
26
27
28AST_NAMESPACE_BEGIN
29
36class AST_CORE_API JacchiaRoberts final: public AtmosphereBase
37{
38public:
39 JacchiaRoberts(Frame* frame, BodyShape* bodyShape, CelestialBody* sun, double f107Daily, double f107Average, double kp);
40
41 double getDensity(const TimePoint& tp, const Vector3d& posInBodyFixed) const override;
42
43 void setSunPosition(ESunPosition sunPosition){sunPosition_ = sunPosition;}
44 ESunPosition getSunPosition() const {return sunPosition_;}
45private:
46 CelestialBody* sun_{nullptr};
47 double F107Daily_{0.0};
48 double F107Average_{0.0};
49 double kp_{0};
50 ESunPosition sunPosition_{ESunPosition::eTrue};
51};
52
55AST_NAMESPACE_END
定义 AtmosphereBase.hpp:34
double getDensity(const TimePoint &tp, const Vector3d &posInBodyFixed) const override=0
获取大气密度
天体形状基类
定义 BodyShape.hpp:33
天体
定义 CelestialBody.hpp:72
坐标系类
定义 Frame.hpp:60
Jacchia Roberts大气模型
定义 JacchiaRoberts.hpp:37
绝对时间点
定义 TimePoint.hpp:107
ESunPosition
太阳位置
定义 SunPosition.hpp:35