#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 | fun |
bool | integration_error |
octave_idx_type | istate |
ODEJacFunc | jac |
bool | reset |
bool | restart |
double | stop_time |
bool | stop_time_set |
double | t |
ColumnVector | x |
Private Attributes | |
Array< double > | abs_tol |
bool | initialized |
octave_f77_int_type | iopt |
octave_f77_int_type | itask |
octave_f77_int_type | itol |
Array< octave_f77_int_type > | iwork |
octave_f77_int_type | liw |
octave_f77_int_type | lrw |
octave_f77_int_type | method_flag |
double | rel_tol |
Array< double > | 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 374 of file LSODE.cc.
References do_integrate(), Array< T >::elem(), base_diff_eqn::integration_error, n, Array< T >::numel(), Array< T >::resize(), retval, base_diff_eqn::size(), and base_diff_eqn::x.
|
virtual |
Implements ODE.
Definition at line 404 of file LSODE.cc.
References base_diff_eqn::clear_stop_time(), do_integrate(), Array< T >::elem(), base_diff_eqn::force_restart(), base_diff_eqn::integration_error, n, Array< T >::numel(), Array< T >::resize(), retval, base_diff_eqn::set_stop_time(), base_diff_eqn::size(), and base_diff_eqn::x.
|
virtual |
Implements ODE.
Definition at line 102 of file LSODE.cc.
References abs_tol, dlsode(), F77_XFCN, Array< T >::fortran_vec(), initialized, base_diff_eqn::integration_error, iopt, base_diff_eqn::istate, itask, itol, iwork, ODEFunc::jac, ODEFunc::jacobian_function(), liw, lrw, lsode_f(), lsode_j(), method_flag, n, nn, Array< T >::numel(), rel_tol, ODEFunc::reset, Array< T >::resize(), base_diff_eqn::restart, retval, rwork, base_diff_eqn::size(), base_diff_eqn::stop_time, base_diff_eqn::stop_time_set, base_diff_eqn::t, tmp_x, user_fun, user_jac, and base_diff_eqn::x.
Referenced by do_integrate().
|
virtual |
Implements base_diff_eqn.
Definition at line 310 of file LSODE.cc.
References base_diff_eqn::istate, retval, and base_diff_eqn::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.
References x.
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 76 of file ODEFunc.h.
Referenced by do_integrate().
|
inlineinherited |
|
inlineinherited |
Definition at line 78 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.
References x.
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 87 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 88 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 95 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=().