🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ast::OrdinaryDifferentialEquation类 参考abstract

#include <OrdinaryDifferentialEquation.hpp>

+ 类 ast::OrdinaryDifferentialEquation 继承关系图:

Public 成员函数

virtual int getDimension () const =0
 
virtual errc_t evaluate (const double *y, double *dy, double t)=0
 
A_ALWAYS_INLINE errc_t evaluate (const double t, const double *y, double *dy)
 

详细描述

常微分方程基接口

该类定义了常微分方程的接口,包括获取维度和计算导数。 参考orekit的OrdinaryDifferentialEquation类

成员函数说明

◆ evaluate()

virtual errc_t ast::OrdinaryDifferentialEquation::evaluate ( const double * y,
double * dy,
double t )
pure virtual

计算常微分方程在给定时间点和状态下的导数。

为什么将时间作为最后一个参数

  1. 在很多情况下,ODE 系统是自洽系统(时间无关)
  2. 与 Boost.Odeint 库的接口设计保持一致
  3. 与 Julia 语言的ODE求解器设计保持一致
    参数
    y状态向量。
    dy输出导数向量。
    t时间点。
    返回
    错误码。

ast::HPOPEquation , 以及 ast::ODEGeneric< Func > 内被实现.

◆ getDimension()

virtual int ast::OrdinaryDifferentialEquation::getDimension ( ) const
pure virtual

获取微分方程的维度。

返回
微分方程的维度。

ast::HPOPEquation , 以及 ast::ODEGeneric< Func > 内被实现.


该类的文档由以下文件生成: