GNU Octave  4.0.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Types | Public Member Functions | Protected Attributes | Private Attributes | List of all members
LSODE Class Reference

#include "LSODE.h"

Inheritance diagram for LSODE:
Inheritance graph
[legend]
Collaboration diagram for LSODE:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

 LSODE (void)
 
 LSODE (const ColumnVector &s, double tm, const ODEFunc &f)
 
 ~LSODE (void)
 
Array< doubleabsolute_tolerance (void) const
 
void clear_stop_time (void)
 
ColumnVector do_integrate (double t)
 
Matrix do_integrate (const ColumnVector &tout)
 
Matrix do_integrate (const ColumnVector &tout, const ColumnVector &tcrit)
 
std::string error_message (void) const
 
virtual void force_restart (void)
 
ODERHSFunc function (void) const
 
void init (void)
 
double initial_step_size (void) const
 
void initialize (const ColumnVector &x0, double t0)
 
virtual ColumnVector integrate (double tt)
 
virtual ColumnVector integrate (const ColumnVector &x0, double t0, double tt)
 
virtual Matrix integrate (const ColumnVector &tt)
 
virtual Matrix integrate (const ColumnVector &x0, double t0, const ColumnVector &tt)
 
virtual Matrix integrate (const ColumnVector &tt, const ColumnVector &ttcrit)
 
virtual Matrix integrate (const ColumnVector &x0, double t0, const ColumnVector &tt, const ColumnVector &ttcrit)
 
std::string integration_method (void) const
 
bool integration_ok (void) const
 
octave_idx_type integration_state (void) const
 
ODEJacFunc jacobian_function (void) const
 
octave_idx_type maximum_order (void) const
 
double maximum_step_size (void) const
 
double minimum_step_size (void) const
 
double relative_tolerance (void) const
 
void set_absolute_tolerance (double val)
 
void set_absolute_tolerance (const Array< double > &val)
 
void set_default_options (void)
 
ODEFuncset_function (ODERHSFunc f)
 
void set_initial_step_size (double val)
 
void set_integration_method (const std::string &val)
 
ODEFuncset_jacobian_function (ODEJacFunc j)
 
void set_maximum_order (octave_idx_type val)
 
void set_maximum_step_size (double val)
 
void set_minimum_step_size (double val)
 
void set_options (const LSODE_options &opt)
 
void set_relative_tolerance (double val)
 
void set_step_limit (octave_idx_type val)
 
void set_stop_time (double tt)
 
octave_idx_type size (void) const
 
ColumnVector state (void) const
 
octave_idx_type step_limit (void) const
 
double time (void) const
 

Protected Attributes

ODERHSFunc fun
 
bool integration_error
 
octave_idx_type istate
 
ODEJacFunc jac
 
bool reset
 
bool reset
 
bool restart
 
double stop_time
 
bool stop_time_set
 
double t
 
ColumnVector x
 

Private Attributes

Array< doubleabs_tol
 
bool initialized
 
octave_idx_type iopt
 
octave_idx_type itask
 
octave_idx_type itol
 
Array< octave_idx_typeiwork
 
octave_idx_type liw
 
octave_idx_type lrw
 
octave_idx_type maxord
 
octave_idx_type method_flag
 
double rel_tol
 
Array< doublerwork
 

Detailed Description

Definition at line 31 of file LSODE.h.

Member Typedef Documentation

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

Definition at line 35 of file ODEFunc.h.

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

Definition at line 34 of file ODEFunc.h.

Constructor & Destructor Documentation

LSODE::LSODE ( void  )
inline

Definition at line 37 of file LSODE.h.

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

Definition at line 42 of file LSODE.h.

LSODE::~LSODE ( void  )
inline

Definition at line 47 of file LSODE.h.

Member Function Documentation

Array<double> LSODE_options::absolute_tolerance ( void  ) const
inlineinherited

Definition at line 132 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

void base_diff_eqn::clear_stop_time ( void  )
inlineinherited

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

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

ColumnVector LSODE::do_integrate ( double  t)
virtual
Matrix LSODE::do_integrate ( const ColumnVector tout)
virtual
Matrix LSODE::do_integrate ( const ColumnVector tout,
const ColumnVector tcrit 
)
virtual
std::string LSODE::error_message ( void  ) const
virtual

Implements base_diff_eqn.

Definition at line 316 of file LSODE.cc.

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

Referenced by Flsode().

virtual void base_diff_eqn::force_restart ( void  )
inlinevirtualinherited

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

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

ODERHSFunc ODEFunc::function ( void  ) const
inlineinherited

Definition at line 62 of file ODEFunc.h.

void LSODE_options::init ( void  )
inlineinherited

Definition at line 64 of file LSODE-opts.h.

double LSODE_options::initial_step_size ( void  ) const
inlineinherited

Definition at line 141 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

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

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

References x.

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

virtual ColumnVector ODE::integrate ( double  tt)
inlinevirtualinherited

Definition at line 73 of file ODE.h.

Referenced by Flsode().

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

Definition at line 77 of file ODE.h.

References initialize().

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

Definition at line 85 of file ODE.h.

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

Definition at line 90 of file ODE.h.

References initialize().

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

Definition at line 99 of file ODE.h.

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

Definition at line 105 of file ODE.h.

References initialize().

std::string LSODE_options::integration_method ( void  ) const
inlineinherited

Definition at line 138 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

bool base_diff_eqn::integration_ok ( void  ) const
inlineinherited

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

Referenced by Fdaspk(), Fdasrt(), Fdassl(), and Flsode().

octave_idx_type base_diff_eqn::integration_state ( void  ) const
inlineinherited

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

Referenced by Fdaspk(), Fdasrt(), Fdassl(), and Flsode().

ODEJacFunc ODEFunc::jacobian_function ( void  ) const
inlineinherited

Definition at line 71 of file ODEFunc.h.

Referenced by do_integrate().

octave_idx_type LSODE_options::maximum_order ( void  ) const
inlineinherited

Definition at line 144 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

double LSODE_options::maximum_step_size ( void  ) const
inlineinherited

Definition at line 147 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

double LSODE_options::minimum_step_size ( void  ) const
inlineinherited

Definition at line 150 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

double LSODE_options::relative_tolerance ( void  ) const
inlineinherited

Definition at line 135 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

void LSODE_options::set_absolute_tolerance ( double  val)
inlineinherited

Definition at line 93 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_absolute_tolerance ( const Array< double > &  val)
inlineinherited

Definition at line 100 of file LSODE-opts.h.

void LSODE_options::set_default_options ( void  )
inlineinherited

Definition at line 91 of file LSODE-opts.h.

ODEFunc& ODEFunc::set_function ( ODERHSFunc  f)
inlineinherited

Definition at line 64 of file ODEFunc.h.

References f.

void LSODE_options::set_initial_step_size ( double  val)
inlineinherited

Definition at line 118 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_integration_method ( const std::string &  val)
inlineinherited

Definition at line 106 of file LSODE-opts.h.

References current_liboctave_error_handler.

Referenced by set_LSODE_options().

ODEFunc& ODEFunc::set_jacobian_function ( ODEJacFunc  j)
inlineinherited

Definition at line 73 of file ODEFunc.h.

Referenced by Flsode().

void LSODE_options::set_maximum_order ( octave_idx_type  val)
inlineinherited

Definition at line 121 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_maximum_step_size ( double  val)
inlineinherited

Definition at line 124 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_minimum_step_size ( double  val)
inlineinherited

Definition at line 127 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_options ( const LSODE_options opt)
inlineinherited
void LSODE_options::set_relative_tolerance ( double  val)
inlineinherited

Definition at line 103 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void LSODE_options::set_step_limit ( octave_idx_type  val)
inlineinherited

Definition at line 130 of file LSODE-opts.h.

Referenced by set_LSODE_options().

void base_diff_eqn::set_stop_time ( double  tt)
inlineinherited

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

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

octave_idx_type base_diff_eqn::size ( void  ) const
inlineinherited
ColumnVector base_diff_eqn::state ( void  ) const
inlineinherited

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

References x.

octave_idx_type LSODE_options::step_limit ( void  ) const
inlineinherited

Definition at line 153 of file LSODE-opts.h.

Referenced by do_integrate(), print_LSODE_options(), and show_LSODE_options().

double base_diff_eqn::time ( void  ) const
inlineinherited

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

Member Data Documentation

Array<double> LSODE::abs_tol
private

Definition at line 75 of file LSODE.h.

Referenced by do_integrate().

ODERHSFunc ODEFunc::fun
protectedinherited

Definition at line 82 of file ODEFunc.h.

Referenced by ODEFunc::operator=().

bool LSODE::initialized
private

Definition at line 59 of file LSODE.h.

Referenced by do_integrate().

bool base_diff_eqn::integration_error
protectedinherited
octave_idx_type LSODE::iopt
private

Definition at line 64 of file LSODE.h.

Referenced by do_integrate().

octave_idx_type base_diff_eqn::istate
protectedinherited
octave_idx_type LSODE::itask
private

Definition at line 63 of file LSODE.h.

Referenced by do_integrate().

octave_idx_type LSODE::itol
private

Definition at line 65 of file LSODE.h.

Referenced by do_integrate().

Array<octave_idx_type> LSODE::iwork
private

Definition at line 70 of file LSODE.h.

Referenced by do_integrate().

ODEJacFunc ODEFunc::jac
protectedinherited

Definition at line 83 of file ODEFunc.h.

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

octave_idx_type LSODE::liw
private

Definition at line 67 of file LSODE.h.

Referenced by do_integrate().

octave_idx_type LSODE::lrw
private

Definition at line 68 of file LSODE.h.

Referenced by do_integrate().

octave_idx_type LSODE::maxord
private

Definition at line 62 of file LSODE.h.

Referenced by do_integrate().

octave_idx_type LSODE::method_flag
private

Definition at line 61 of file LSODE.h.

Referenced by do_integrate().

double LSODE::rel_tol
private

Definition at line 73 of file LSODE.h.

Referenced by do_integrate().

bool ODEFunc::reset
protectedinherited

Definition at line 90 of file ODEFunc.h.

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

bool LSODE_options::reset
protectedinherited
bool base_diff_eqn::restart
protectedinherited
Array<double> LSODE::rwork
private

Definition at line 71 of file LSODE.h.

Referenced by do_integrate().

double base_diff_eqn::stop_time
protectedinherited
bool base_diff_eqn::stop_time_set
protectedinherited
double base_diff_eqn::t
protectedinherited
ColumnVector base_diff_eqn::x
protectedinherited

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