🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
BlockThirdBodyPointMass.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstCore/BlockAstro.hpp"
25#include "AstCore/BlockDerivative.hpp"
26#include "AstMath/Vector.hpp"
27
28AST_NAMESPACE_BEGIN
29
51class AST_CORE_API BlockThirdBodyPointMass : public BlockDerivative
52{
53public:
55 explicit BlockThirdBodyPointMass(Point* thirdBody, double thirdBodyGM, Frame* propagationFrame);
56
57 errc_t run(const SimTime& simTime) override;
58protected:
59 Vector3d* posCBI{};
60 Vector3d* accThirdBody{&vectorBuffer};
61 Vector3d* velocityDerivative_{&vectorBuffer};
62 Vector3d vectorBuffer{};
63private:
64 Point* thirdBody_{};
65 double thirdBodyGM_;
66 Frame* propagationFrame_{};
67};
68
69AST_NAMESPACE_END
导数函数块
定义 BlockDerivative.hpp:46
三体点质量引力函数块
定义 BlockThirdBodyPointMass.hpp:52
坐标系类
定义 Frame.hpp:60
virtual errc_t run(const SimTime &simTime)=0
计算函数块
定义 Point.hpp:38
仿真时间
定义 SimTime.hpp:30