GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
DASPK Class Reference

#include "DASPK.h"

Inheritance diagram for DASPK:
Collaboration diagram for DASPK:

Public Types

typedef Matrix(* DAEJacFunc) (const ColumnVector &x, const ColumnVector &xdot, double t, double cj)
 
typedef ColumnVector(* DAERHSFunc) (const ColumnVector &x, const ColumnVector &xdot, double t, octave_idx_type &ires)
 

Public Member Functions

 DASPK (const ColumnVector &s, const ColumnVector &deriv, double tm, DAEFunc &f)
 
 DASPK (const ColumnVector &s, double tm, DAEFunc &f)
 
 DASPK (void)
 
 ~DASPK (void)=default
 
void clear_stop_time (void)
 
Matrix do_integrate (const ColumnVector &tout)
 
Matrix do_integrate (const ColumnVector &tout, const ColumnVector &tcrit)
 
ColumnVector do_integrate (double t)
 
std::string error_message (void) const
 
virtual void force_restart (void)
 
DAERHSFunc function (void) const
 
void initialize (const ColumnVector &x0, const ColumnVector &xdot0, double t0)
 
void initialize (const ColumnVector &x0, double t0)
 
Matrix integrate (const ColumnVector &tout, Matrix &xdot_out)
 
Matrix integrate (const ColumnVector &tout, Matrix &xdot_out, const ColumnVector &tcrit)
 
bool integration_ok (void) const
 
octave_idx_type integration_state (void) const
 
DAEJacFunc jacobian_function (void) const
 
DAEFuncset_function (DAERHSFunc f)
 
DAEFuncset_jacobian_function (DAEJacFunc j)
 
void set_stop_time (double tt)
 
octave_idx_type size (void) const
 
ColumnVector state (void) const
 
ColumnVector state_derivative (void)
 
double time (void) const
 

Protected Attributes

DAERHSFunc fun
 
bool integration_error
 
octave_idx_type istate
 
DAEJacFunc jac
 
bool reset
 
bool restart
 
double stop_time
 
bool stop_time_set
 
double t
 
ColumnVector x
 
ColumnVector xdot
 

Private Attributes

Array< double > abs_tol
 
Array< octave_f77_int_type > info
 
bool initialized
 
Array< octave_f77_int_type > iwork
 
octave_f77_int_type liw
 
octave_f77_int_type lrw
 
Array< double > rel_tol
 
Array< double > rwork
 

Detailed Description

Definition at line 38 of file DASPK.h.

Member Typedef Documentation

◆ DAEJacFunc

typedef Matrix(* DAEFunc::DAEJacFunc) (const ColumnVector &x, const ColumnVector &xdot, double t, double cj)
inherited

Definition at line 47 of file DAEFunc.h.

◆ DAERHSFunc

typedef ColumnVector(* DAEFunc::DAERHSFunc) (const ColumnVector &x, const ColumnVector &xdot, double t, octave_idx_type &ires)
inherited

Definition at line 39 of file DAEFunc.h.

Constructor & Destructor Documentation

◆ DASPK() [1/3]

DASPK::DASPK ( void  )
inline

Definition at line 44 of file DASPK.h.

◆ DASPK() [2/3]

DASPK::DASPK ( const ColumnVector s,
double  tm,
DAEFunc f 
)
inline

Definition at line 48 of file DASPK.h.

◆ DASPK() [3/3]

DASPK::DASPK ( const ColumnVector s,
const ColumnVector deriv,
double  tm,
DAEFunc f 
)
inline

Definition at line 52 of file DASPK.h.

◆ ~DASPK()

DASPK::~DASPK ( void  )
default

Member Function Documentation

◆ clear_stop_time()

void base_diff_eqn::clear_stop_time ( void  )
inlineinherited

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

Referenced by LSODE::do_integrate(), DASRT::integrate(), integrate(), and DASSL::integrate().

◆ do_integrate() [1/3]

Matrix DASPK::do_integrate ( const ColumnVector tout)

Definition at line 539 of file DASPK.cc.

References integrate().

◆ do_integrate() [2/3]

Matrix DASPK::do_integrate ( const ColumnVector tout,
const ColumnVector tcrit 
)

Definition at line 583 of file DASPK.cc.

References integrate().

◆ do_integrate() [3/3]

◆ error_message()

std::string DASPK::error_message ( void  ) const
virtual

Implements base_diff_eqn.

Definition at line 694 of file DASPK.cc.

References base_diff_eqn::istate, retval, and base_diff_eqn::t.

Referenced by DEFMETHOD().

◆ force_restart()

virtual void base_diff_eqn::force_restart ( void  )
inlinevirtualinherited

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

Referenced by LSODE::do_integrate(), DASRT::integrate(), integrate(), and DASSL::integrate().

◆ function()

DAERHSFunc DAEFunc::function ( void  ) const
inlineinherited

Definition at line 76 of file DAEFunc.h.

Referenced by do_integrate(), DASSL::do_integrate(), and DASRT::integrate().

◆ initialize() [1/2]

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

Definition at line 69 of file base-dae.h.

References base_diff_eqn::initialize().

◆ initialize() [2/2]

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

Definition at line 63 of file base-dae.h.

References base_diff_eqn::initialize(), and Array< T >::numel().

Referenced by DAERT::initialize().

◆ integrate() [1/2]

◆ integrate() [2/2]

◆ 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()

DAEJacFunc DAEFunc::jacobian_function ( void  ) const
inlineinherited

Definition at line 85 of file DAEFunc.h.

Referenced by do_integrate(), DASSL::do_integrate(), and DASRT::integrate().

◆ set_function()

DAEFunc& DAEFunc::set_function ( DAERHSFunc  f)
inlineinherited

Definition at line 78 of file DAEFunc.h.

References f.

◆ set_jacobian_function()

DAEFunc& DAEFunc::set_jacobian_function ( DAEJacFunc  j)
inlineinherited

Definition at line 87 of file DAEFunc.h.

Referenced by DEFMETHOD().

◆ set_stop_time()

void base_diff_eqn::set_stop_time ( double  tt)
inlineinherited

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

Referenced by LSODE::do_integrate(), DASRT::integrate(), integrate(), and DASSL::integrate().

◆ 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.

References x.

◆ state_derivative()

ColumnVector base_diff_alg_eqn::state_derivative ( void  )
inlineinherited

Definition at line 76 of file base-dae.h.

◆ time()

double base_diff_eqn::time ( void  ) const
inlineinherited

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

Member Data Documentation

◆ abs_tol

Array<double> DASPK::abs_tol
private

Definition at line 85 of file DASPK.h.

Referenced by do_integrate().

◆ fun

DAERHSFunc DAEFunc::fun
protectedinherited

Definition at line 96 of file DAEFunc.h.

Referenced by DAEFunc::operator=().

◆ info

Array<octave_f77_int_type> DASPK::info
private

Definition at line 80 of file DASPK.h.

Referenced by do_integrate().

◆ initialized

bool DASPK::initialized
private

Definition at line 75 of file DASPK.h.

Referenced by do_integrate().

◆ integration_error

bool base_diff_eqn::integration_error
protectedinherited

◆ istate

◆ iwork

Array<octave_f77_int_type> DASPK::iwork
private

Definition at line 81 of file DASPK.h.

Referenced by do_integrate().

◆ jac

DAEJacFunc DAEFunc::jac
protectedinherited

Definition at line 97 of file DAEFunc.h.

Referenced by DAEFunc::operator=().

◆ liw

octave_f77_int_type DASPK::liw
private

Definition at line 77 of file DASPK.h.

Referenced by do_integrate().

◆ lrw

octave_f77_int_type DASPK::lrw
private

Definition at line 78 of file DASPK.h.

Referenced by do_integrate().

◆ rel_tol

Array<double> DASPK::rel_tol
private

Definition at line 86 of file DASPK.h.

Referenced by do_integrate().

◆ reset

bool DAEFunc::reset
protectedinherited

Definition at line 104 of file DAEFunc.h.

Referenced by do_integrate(), DASSL::do_integrate(), DASRT::integrate(), and DAEFunc::operator=().

◆ restart

bool base_diff_eqn::restart
protectedinherited

◆ rwork

Array<double> DASPK::rwork
private

Definition at line 83 of file DASPK.h.

Referenced by do_integrate().

◆ stop_time

double base_diff_eqn::stop_time
protectedinherited

◆ stop_time_set

bool base_diff_eqn::stop_time_set
protectedinherited

◆ t

◆ x

◆ xdot

ColumnVector base_diff_alg_eqn::xdot
protectedinherited

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