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

#include <RKV8.hpp>

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

Public 成员函数

errc_t initialize (ODE &ode) final
 
errc_t singleStep (ODE &ode, double *y, double t0, double step) final
 
- Public 成员函数 继承自 ast::ODEFixedStepIntegrator
double getStepSize () const
 
void setStepSize (double stepSize)
 
int getNumSteps () const
 
const WorkspacegetWorkspace () const
 
WorkspacegetWorkspace ()
 
errc_t integrate (ODE &ode, double *y, double &t, double tf) override
 
errc_t integrateStep (ODE &ode, double *y, double &t, double tf) override
 
errc_t integrate (ODE &ode, double *y, double &t, double tf, std::vector< double > &xlist, std::vector< std::vector< double > > &ylist)
 
template<typename Func >
errc_t integrate (int ndim, Func func, double *y, double &t, double tf)
 
- Public 成员函数 继承自 ast::ODEIntegrator
errc_t integrate (ODE &ode, double *y, double &t, double tf, std::vector< double > &xlist, std::vector< std::vector< double > > &ylist)
 
template<typename Func >
errc_t integrate (int ndim, Func func, double *y, double &t, double tf)
 
void addEventDetector (ODEEventDetector *detector)
 
template<typename Func >
std::enable_if<!std::is_base_of< ODEEventDetector, typenamestd::remove_pointer< Func >::type >::value, ODEEventDetector * >::type addEventDetector (Func func)
 
void removeEventDetector (ODEEventDetector *detector)
 
void addStateObserver (ODEStateObserver *observer)
 
template<typename Func >
std::enable_if<!std::is_base_of< ODEStateObserver, typenamestd::remove_pointer< Func >::type >::value, ODEStateObserver * >::type addStateObserver (Func func)
 
void removeStateObserver (ODEStateObserver *observer)
 
ODEgetODE ()
 
double * stateAtStepStart ()
 
double * stateAtStepEnd ()
 
double & timeAtStepStart ()
 
double & timeAtStepEnd ()
 
double * stateTemp ()
 
virtual errc_t integrate (ODE &ode, double *y, double &t, double tf)=0
 
- Public 成员函数 继承自 ast::IODEIntegrator

额外继承的成员函数

- Protected 成员函数 继承自 ast::ODEFixedStepIntegrator
void resetWorkspace (int dimension, int stage)
 
- Protected 成员函数 继承自 ast::ODEIntegrator
void initWorkStateObserver ()
 
 A_DISABLE_COPY (ODEIntegrator)
 
- Protected 属性 继承自 ast::ODEIntegrator
ODEode_ {nullptr}
 
ODEStateObserverworkStateObserver_ {nullptr}
 
ODEEventDetectorList eventDetectorList_
 
ODEStateObserverList stateObserverList_
 
ODEInnerStateObserverinnerStateObserver_ {nullptr}
 
double * stateAtStepStart_ {nullptr}
 
double * stateAtStepEnd_ {nullptr}
 
double * stateTemp_ {nullptr}
 
double timeAtStepStart_ {0.0}
 
double timeAtStepEnd_ {0.0}
 

详细描述

RKV8 积分器


参考文献:Verner "Some Explicit Runge-Kutta Methods of High Order" 1972

成员函数说明

◆ initialize()

errc_t ast::RKV8::initialize ( ODE & ode)
finalvirtual

初始化积分器

初始化积分器,设置ODE的维度和步长等参数

参数
ode常微分方程对象

重载 ast::ODEIntegrator .

◆ singleStep()

errc_t ast::RKV8::singleStep ( ODE & ode,
double * y,
double t0,
double step )
finalvirtual

执行一步积分

参数
ode常微分方程对象
[in,out]y状态向量
t0当前时间
step时间步长

实现了 ast::IODEIntegrator.


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