#include "LSODE.h"
Public Types | |
typedef Matrix(* | ODEJacFunc) (const ColumnVector &, double) |
typedef ColumnVector(* | ODERHSFunc) (const ColumnVector &, double) |
Public Member Functions | |
LSODE (const ColumnVector &s, double tm, const ODEFunc &f) | |
LSODE (void) | |
~LSODE (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) |
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 |
ODEFunc & | set_function (ODERHSFunc f) |
ODEFunc & | set_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 |
Private Attributes | |
Array< double > | m_abs_tol |
bool | m_initialized |
octave_f77_int_type | m_iopt |
octave_f77_int_type | m_itask |
octave_f77_int_type | m_itol |
Array< octave_f77_int_type > | m_iwork |
octave_f77_int_type | m_liw |
octave_f77_int_type | m_lrw |
octave_f77_int_type | m_method_flag |
double | m_rel_tol |
Array< double > | m_rwork |
|
inherited |
|
inherited |
|
inline |
|
default |
|
inlineinherited |
Definition at line 92 of file base-de.h.
Referenced by do_integrate(), DASRT::integrate(), DASPK::integrate(), and DASSL::integrate().
|
virtual |
Implements ODE.
Definition at line 415 of file LSODE.cc.
References do_integrate(), Array< T, Alloc >::elem(), base_diff_eqn::m_integration_error, base_diff_eqn::m_x, n, Array< T, Alloc >::numel(), Matrix::resize(), and base_diff_eqn::size().
|
virtual |
Implements ODE.
Definition at line 445 of file LSODE.cc.
References base_diff_eqn::clear_stop_time(), do_integrate(), Array< T, Alloc >::elem(), base_diff_eqn::force_restart(), base_diff_eqn::m_integration_error, base_diff_eqn::m_x, n, Array< T, Alloc >::numel(), Matrix::resize(), base_diff_eqn::set_stop_time(), and base_diff_eqn::size().
|
virtual |
Implements ODE.
Definition at line 111 of file LSODE.cc.
References dlsode(), F77_XFCN, Array< T, Alloc >::fortran_vec(), ODEFunc::jacobian_function(), lsode_f(), lsode_j(), m_abs_tol, m_initialized, base_diff_eqn::m_integration_error, m_iopt, base_diff_eqn::m_istate, m_itask, m_itol, m_iwork, ODEFunc::m_jac, m_liw, m_lrw, m_method_flag, m_rel_tol, ODEFunc::m_reset, base_diff_eqn::m_restart, m_rwork, base_diff_eqn::m_stop_time, base_diff_eqn::m_stop_time_set, base_diff_eqn::m_t, base_diff_eqn::m_x, n, nn, Array< T, Alloc >::numel(), Array< T, Alloc >::resize(), base_diff_eqn::size(), tmp_x, user_fcn, user_jac, and user_jac_ignore_ml_mu.
Referenced by do_integrate().
|
virtual |
Implements base_diff_eqn.
Definition at line 351 of file LSODE.cc.
References base_diff_eqn::m_istate, and base_diff_eqn::m_t.
Referenced by DEFMETHOD().
|
inlinevirtualinherited |
Definition at line 98 of file base-de.h.
Referenced by do_integrate(), DASRT::integrate(), DASPK::integrate(), and DASSL::integrate().
|
inlineinherited |
|
inlineinherited |
Definition at line 70 of file base-de.h.
Referenced by ODES::initialize(), and base_diff_alg_eqn::initialize().
|
inlinevirtualinherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
Definition at line 96 of file ODE.h.
References initialize().
|
inlinevirtualinherited |
Definition at line 111 of file ODE.h.
References initialize().
|
inlinevirtualinherited |
Definition at line 83 of file ODE.h.
References initialize().
|
inlinevirtualinherited |
Definition at line 79 of file ODE.h.
Referenced by DEFMETHOD().
|
inlineinherited |
Definition at line 100 of file base-de.h.
Referenced by DEFMETHOD().
|
inlineinherited |
Definition at line 102 of file base-de.h.
Referenced by DEFMETHOD().
|
inlineinherited |
Definition at line 75 of file ODEFunc.h.
Referenced by do_integrate().
|
inlineinherited |
|
inlineinherited |
Definition at line 77 of file ODEFunc.h.
Referenced by DEFMETHOD().
|
inlineinherited |
Definition at line 85 of file base-de.h.
Referenced by do_integrate(), DASRT::integrate(), DASPK::integrate(), and DASSL::integrate().
|
inlineinherited |
Definition at line 79 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASPK::integrate(), DASSL::integrate(), and DASRT::integrate().
|
inlineinherited |
|
private |
Definition at line 79 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 86 of file ODEFunc.h.
Referenced by ODEFunc::operator=().
|
private |
Definition at line 64 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 118 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASPK::integrate(), DASSL::integrate(), DASRT::integrate(), and base_diff_eqn::operator=().
|
private |
Definition at line 68 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 120 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASPK::error_message(), DASRT::error_message(), DASSL::error_message(), error_message(), DASRT::integrate(), and base_diff_eqn::operator=().
|
private |
Definition at line 67 of file LSODE.h.
Referenced by do_integrate().
|
private |
Definition at line 69 of file LSODE.h.
Referenced by do_integrate().
|
private |
Definition at line 74 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 87 of file ODEFunc.h.
Referenced by do_integrate(), and ODEFunc::operator=().
|
private |
Definition at line 71 of file LSODE.h.
Referenced by do_integrate().
|
private |
Definition at line 72 of file LSODE.h.
Referenced by do_integrate().
|
private |
Definition at line 66 of file LSODE.h.
Referenced by do_integrate().
|
private |
Definition at line 77 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 94 of file ODEFunc.h.
Referenced by do_integrate(), and ODEFunc::operator=().
|
protectedinherited |
Definition at line 116 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASRT::integrate(), and base_diff_eqn::operator=().
|
private |
Definition at line 75 of file LSODE.h.
Referenced by do_integrate().
|
protectedinherited |
Definition at line 112 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASRT::integrate(), and base_diff_eqn::operator=().
|
protectedinherited |
Definition at line 114 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASRT::integrate(), and base_diff_eqn::operator=().
|
protectedinherited |
Definition at line 110 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASPK::error_message(), DASRT::error_message(), DASSL::error_message(), error_message(), DASRT::integrate(), and base_diff_eqn::operator=().
|
protectedinherited |
Definition at line 108 of file base-de.h.
Referenced by DASPK::do_integrate(), DASSL::do_integrate(), do_integrate(), DASPK::integrate(), DASSL::integrate(), DASRT::integrate(), and base_diff_eqn::operator=().