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

#include <RKV8.hpp>

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

Public 成员函数

 AST_OBJECT (RKV8)
 
errc_t initialize (ODE &ode) final
 
errc_t singleStep (ODE &ode, double *y, double t0, double step) final
 
- Public 成员函数 继承自 ast::ODEFixedStepIntegrator
 AST_OBJECT (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 clearEventDetectors ()
 
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
- Public 成员函数 继承自 ast::ObjectNamed
 ObjectNamed ()=default
 
 ObjectNamed (StringView name)
 
const std::string & getName () const override
 
void setName (StringView name) override
 
- Public 成员函数 继承自 ast::Object
 Object (Object *parentScope)
 
 Object (std::nullptr_t)
 
 Object (initial_strong_ref_t)
 
virtual ClassgetType () const
 
virtual std::string getRepresentation () const
 
const std::string & name () const
 
errc_t showEditDialog ()
 
Attribute attr (StringView path)
 
errc_t getAttrBool (StringView path, bool &value) const
 
errc_t getAttrInt (StringView path, int &value) const
 
errc_t getAttrDouble (StringView path, double &value) const
 
errc_t getAttrString (StringView path, std::string &value) const
 
errc_t getAttrObject (StringView path, Object *&value) const
 
double getAttrDouble (StringView path) const
 
int getAttrInt (StringView path) const
 
bool getAttrBool (StringView path) const
 
std::string getAttrString (StringView path) const
 
ObjectgetAttrObject (StringView path) const
 
errc_t setAttrBool (StringView path, bool value)
 
errc_t setAttrInt (StringView path, int value)
 
errc_t setAttrDouble (StringView path, double value)
 
errc_t setAttrString (StringView path, StringView value)
 
errc_t setAttrObject (StringView path, Object *value)
 
Classtype () const
 
const std::string & typeName () const
 
PropertygetProperty (StringView fieldName) const
 
ObjectId getID () const
 
errc_t setParentScope (Object *parentScope)
 
ObjectgetParentScope () const
 
bool isOfType (const Class *type) const
 
bool isOfType (StringView typeName) const
 
template<typename T >
bool isOfType () const
 
uint32_t refCount () const
 
uint32_t weakRefCount () const
 
bool isDestructed () const
 
void destruct ()
 
uint32_t incWeakRef ()
 
uint32_t decWeakRef ()
 
uint32_t incRef ()
 
uint32_t decRef ()
 
uint32_t decRefNoDelete ()
 
template<typename Func >
void addDelayedLink (Func &&link)
 
template<typename Func >
void addDelayedLinkIfFailed (Func &&link)
 
void resolveLinks ()
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 ast::Object
static ObjectResolve (StringView value)
 
static void ClassInit (Class *cls)
 
static ClassStaticType ()
 
- 静态 Public 属性 继承自 ast::Object
static Class staticType
 
- Protected 成员函数 继承自 ast::ODEFixedStepIntegrator
void resetWorkspace (int dimension, int stage)
 
- Protected 成员函数 继承自 ast::ODEIntegrator
void initWorkStateObserver ()
 
 A_DISABLE_COPY (ODEIntegrator)
 
- Protected 成员函数 继承自 ast::Object
 Object (const Object &obj)
 
Objectoperator= (const Object &)
 
- 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.


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