|
🛰️航天仿真算法库 SpaceAST 0.3.1
|
#include <HPOPEquation.hpp>
类 ast::HPOPEquation 继承关系图:Public 成员函数 | |
| A_DISABLE_COPY (HPOPEquation) | |
| int | getDimension () const final |
| errc_t | evaluate (const double *y, double *dy, double t) final |
| void | setEpoch (const TimePoint &epoch) |
| const BlockDynamicSystem & | dynamicSystem () const |
| BlockDynamicSystem & | dynamicSystem () |
| errc_t | initialize (const HPOPForceModel &forceModel, const SpacecraftParam &spacecraftParam, Frame *frame=nullptr) |
| BlockDrag * | dragBlock () const |
| BlockSRP * | srpBlock () const |
Public 成员函数 继承自 ast::OrdinaryDifferentialEquation | |
| A_ALWAYS_INLINE errc_t | evaluate (const double t, const double *y, double *dy) |
高精度轨道预报方程
该类继承自 OrdinaryDifferentialEquation ,用于求解轨道动力学问题。 其内部包含一个动力学系统 BlockDynamicSystem 动力学系统 BlockDynamicSystem 由多个独立的函数块 FuncBlock 组成。 每个函数块 FuncBlock 负责计算系统的一个或多个状态量或者导数。 函数块之间可以通过输入输出端口进行信号连接,实现复杂的动力学模型。
|
finalvirtual |
计算常微分方程在给定时间点和状态下的导数。
为什么将时间作为最后一个参数
| y | 状态向量。 |
| dy | 输出导数向量。 |
| t | 时间点。 |
|
finalvirtual |
| errc_t ast::HPOPEquation::initialize | ( | const HPOPForceModel & | forceModel, |
| const SpacecraftParam & | spacecraftParam, | ||
| Frame * | frame = nullptr ) |
初始化仿真引擎(力模型/航天器参数/预报坐标系作为外部配置传入,不存储)
初始化仿真引擎
| [in] | forceModel | HPOP力模型配置 |
| [in] | spacecraftParam | 航天器参数 |
| [in] | frame | 预报坐标系(可为空,默认用中心天体惯性系) |
幂等:仅在建图尚未完成(初次调用)时执行。配置变更需由调用方重建方程(HPOP 通过置空 equation_ 实现)。