GNU Octave  8.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
ODE Class Referenceabstract

#include "ODE.h"

Inheritance diagram for ODE:
Collaboration diagram for ODE:

Public Types

typedef Matrix(* ODEJacFunc) (const ColumnVector &, double)
 
typedef ColumnVector(* ODERHSFunc) (const ColumnVector &, double)
 

Public Member Functions

 ODE (const ColumnVector &s, double tm, const ODEFunc &f)
 
 ODE (const ODE &a)
 
 ODE (void)
 
virtual ~ODE (void)=default
 
void clear_stop_time (void)
 
virtual Matrix do_integrate (const ColumnVector &tt)=0
 
virtual Matrix do_integrate (const ColumnVector &tt, const ColumnVector &ttcrit)=0
 
virtual ColumnVector do_integrate (double tt)=0
 
virtual std::string error_message (void) const =0
 
virtual void force_restart (void)
 
ODERHSFunc function (void) const
 
void initialize (const ColumnVector &x0, double t0)
 
virtual Matrix integrate (const ColumnVector &tt)
 
virtual Matrix integrate (const ColumnVector &tt, const ColumnVector &ttcrit)
 
virtual Matrix integrate (const ColumnVector &x0, double t0, const ColumnVector &tt)
 
virtual Matrix integrate (const ColumnVector &x0, double t0, const ColumnVector &tt, const ColumnVector &ttcrit)
 
virtual ColumnVector integrate (const ColumnVector &x0, double t0, double tt)
 
virtual ColumnVector integrate (double tt)
 
bool integration_ok (void) const
 
octave_idx_type integration_state (void) const
 
ODEJacFunc jacobian_function (void) const
 
ODEoperator= (const ODE &a)
 
ODEFuncset_function (ODERHSFunc f)
 
ODEFuncset_jacobian_function (ODEJacFunc j)
 
void set_stop_time (double tt)
 
octave_idx_type size (void) const
 
ColumnVector state (void) const
 
double time (void) const
 

Protected Attributes

ODERHSFunc m_fcn
 
bool m_integration_error
 
octave_idx_type m_istate
 
ODEJacFunc m_jac
 
bool m_reset
 
bool m_restart
 
double m_stop_time
 
bool m_stop_time_set
 
double m_t
 
ColumnVector m_x
 

Detailed Description

Definition at line 35 of file ODE.h.

Member Typedef Documentation

◆ ODEJacFunc

typedef Matrix(* ODEFunc::ODEJacFunc) (const ColumnVector &, double)
inherited

Definition at line 39 of file ODEFunc.h.

◆ ODERHSFunc

typedef ColumnVector(* ODEFunc::ODERHSFunc) (const ColumnVector &, double)
inherited

Definition at line 38 of file ODEFunc.h.

Constructor & Destructor Documentation

◆ ODE() [1/3]

ODE::ODE ( void  )
inline

Definition at line 40 of file ODE.h.

◆ ODE() [2/3]

ODE::ODE ( const ColumnVector s,
double  tm,
const ODEFunc f 
)
inline

Definition at line 43 of file ODE.h.

◆ ODE() [3/3]

ODE::ODE ( const ODE a)
inline

Definition at line 46 of file ODE.h.

◆ ~ODE()

virtual ODE::~ODE ( void  )
virtualdefault

Member Function Documentation

◆ clear_stop_time()

void base_diff_eqn::clear_stop_time ( void  )
inlineinherited

◆ do_integrate() [1/3]

virtual Matrix ODE::do_integrate ( const ColumnVector tt)
pure virtual

Implemented in LSODE.

◆ do_integrate() [2/3]

virtual Matrix ODE::do_integrate ( const ColumnVector tt,
const ColumnVector ttcrit 
)
pure virtual

Implemented in LSODE.

◆ do_integrate() [3/3]

virtual ColumnVector ODE::do_integrate ( double  tt)
pure virtual

Implemented in LSODE.

◆ error_message()

virtual std::string base_diff_eqn::error_message ( void  ) const
pure virtualinherited

Implemented in LSODE, DASSL, DASRT, and DASPK.

◆ force_restart()

virtual void base_diff_eqn::force_restart ( void  )
inlinevirtualinherited

◆ function()

ODERHSFunc ODEFunc::function ( void  ) const
inlineinherited

Definition at line 66 of file ODEFunc.h.

◆ initialize()

void base_diff_eqn::initialize ( const ColumnVector x0,
double  t0 
)
inlineinherited

Definition at line 70 of file base-de.h.

Referenced by ODES::initialize(), and base_diff_alg_eqn::initialize().

◆ integrate() [1/6]

virtual Matrix ODE::integrate ( const ColumnVector tt)
inlinevirtual

Definition at line 91 of file ODE.h.

◆ integrate() [2/6]

virtual Matrix ODE::integrate ( const ColumnVector tt,
const ColumnVector ttcrit 
)
inlinevirtual

Definition at line 105 of file ODE.h.

◆ integrate() [3/6]

virtual Matrix ODE::integrate ( const ColumnVector x0,
double  t0,
const ColumnVector tt 
)
inlinevirtual

Definition at line 96 of file ODE.h.

References initialize().

◆ integrate() [4/6]

virtual Matrix ODE::integrate ( const ColumnVector x0,
double  t0,
const ColumnVector tt,
const ColumnVector ttcrit 
)
inlinevirtual

Definition at line 111 of file ODE.h.

References initialize().

◆ integrate() [5/6]

virtual ColumnVector ODE::integrate ( const ColumnVector x0,
double  t0,
double  tt 
)
inlinevirtual

Definition at line 83 of file ODE.h.

References initialize().

◆ integrate() [6/6]

virtual ColumnVector ODE::integrate ( double  tt)
inlinevirtual

Definition at line 79 of file ODE.h.

Referenced by DEFMETHOD().

◆ integration_ok()

bool base_diff_eqn::integration_ok ( void  ) const
inlineinherited

Definition at line 100 of file base-de.h.

Referenced by DEFMETHOD().

◆ integration_state()

octave_idx_type base_diff_eqn::integration_state ( void  ) const
inlineinherited

Definition at line 102 of file base-de.h.

Referenced by DEFMETHOD().

◆ jacobian_function()

ODEJacFunc ODEFunc::jacobian_function ( void  ) const
inlineinherited

Definition at line 75 of file ODEFunc.h.

Referenced by LSODE::do_integrate().

◆ operator=()

ODE& ODE::operator= ( const ODE a)
inline

Definition at line 49 of file ODE.h.

References base_diff_eqn::operator=(), and ODEFunc::operator=().

◆ set_function()

ODEFunc& ODEFunc::set_function ( ODERHSFunc  f)
inlineinherited

Definition at line 68 of file ODEFunc.h.

References f.

◆ set_jacobian_function()

ODEFunc& ODEFunc::set_jacobian_function ( ODEJacFunc  j)
inlineinherited

Definition at line 77 of file ODEFunc.h.

Referenced by DEFMETHOD().

◆ set_stop_time()

void base_diff_eqn::set_stop_time ( double  tt)
inlineinherited

◆ size()

octave_idx_type base_diff_eqn::size ( void  ) const
inlineinherited

◆ state()

ColumnVector base_diff_eqn::state ( void  ) const
inlineinherited

Definition at line 81 of file base-de.h.

◆ time()

double base_diff_eqn::time ( void  ) const
inlineinherited

Definition at line 83 of file base-de.h.

Member Data Documentation

◆ m_fcn

ODERHSFunc ODEFunc::m_fcn
protectedinherited

Definition at line 86 of file ODEFunc.h.

Referenced by ODEFunc::operator=().

◆ m_integration_error

bool base_diff_eqn::m_integration_error
protectedinherited

◆ m_istate

◆ m_jac

ODEJacFunc ODEFunc::m_jac
protectedinherited

Definition at line 87 of file ODEFunc.h.

Referenced by LSODE::do_integrate(), and ODEFunc::operator=().

◆ m_reset

bool ODEFunc::m_reset
protectedinherited

Definition at line 94 of file ODEFunc.h.

Referenced by LSODE::do_integrate(), and ODEFunc::operator=().

◆ m_restart

bool base_diff_eqn::m_restart
protectedinherited

◆ m_stop_time

double base_diff_eqn::m_stop_time
protectedinherited

◆ m_stop_time_set

bool base_diff_eqn::m_stop_time_set
protectedinherited

◆ m_t

◆ m_x


The documentation for this class was generated from the following file: