🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
HarrisPriester.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AtmosphereBase.hpp"
25#include "AstCore/SunPosition.hpp"
26
27AST_NAMESPACE_BEGIN
28
34class AST_CORE_API HarrisPriester: public AtmosphereBase
35{
36public:
37 HarrisPriester(Frame* frame, BodyShape* bodyShape, CelestialBody* sun, double f107);
38
39 HarrisPriester(const HarrisPriester&) = delete;
40 HarrisPriester& operator=(const HarrisPriester&) = delete;
41
42 double getDensity(const TimePoint& tp, const Vector3d& posInBodyFixed) const override;
43
44 void setSunPosition(ESunPosition sunPosition){sunPosition_ = sunPosition;}
45 ESunPosition getSunPosition() const {return sunPosition_;}
46private:
47 CelestialBody* sun_{nullptr};
48 double f107_{0};
49 ESunPosition sunPosition_{ESunPosition::eTrue};
50 int n_{6};
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:62
定义 HarrisPriester.hpp:35
绝对时间点
定义 TimePoint.hpp:108
ESunPosition
太阳位置
定义 SunPosition.hpp:35