Cantera
2.0
|
Abstract base class for ODE system integrators. More...
#include <Integrator.h>
Public Member Functions | |
Integrator () | |
Default Constructor. | |
virtual | ~Integrator () |
Destructor. | |
virtual void | setTolerances (doublereal reltol, size_t n, doublereal *abstol) |
Set or reset the number of equations. | |
virtual void | setTolerances (doublereal reltol, doublereal abstol) |
Set error tolerances. | |
virtual void | setSensitivityTolerances (doublereal reltol, doublereal abstol) |
Set the sensitivity error tolerances. | |
virtual void | setProblemType (int probtype) |
Set the problem type. | |
virtual void | initialize (doublereal t0, FuncEval &func) |
Initialize the integrator for a new problem. | |
virtual void | reinitialize (doublereal t0, FuncEval &func) |
virtual void | integrate (doublereal tout) |
Integrate the system of equations. | |
virtual doublereal | step (doublereal tout) |
Integrate the system of equations. | |
virtual doublereal & | solution (size_t k) |
The current value of the solution of equation k. | |
virtual doublereal * | solution () |
The current value of the solution of the system of equations. | |
virtual int | nEquations () const |
The number of equations. | |
virtual int | nEvals () const |
The number of function evaluations. | |
virtual void | setMaxOrder (int n) |
Set the maximum integration order that will be used. | |
virtual void | setMethod (MethodType t) |
Set the solution method. | |
virtual void | setIterator (IterType t) |
Set the linear iterator. | |
virtual void | setMaxStepSize (double hmax) |
Set the maximum step size. | |
virtual void | setMinStepSize (double hmin) |
Set the minimum step size. | |
virtual void | setMaxSteps (int nmax) |
virtual void | setBandwidth (int N_Upper, int N_Lower) |
virtual int | nSensParams () |
virtual double | sensitivity (size_t k, size_t p) |
Private Member Functions | |
void | warn (std::string msg) const |
Private Attributes | |
doublereal | m_dummy |
Abstract base class for ODE system integrators.
Definition at line 53 of file Integrator.h.
|
inline |
Default Constructor.
Definition at line 59 of file Integrator.h.
|
inlinevirtual |
Destructor.
Definition at line 63 of file Integrator.h.
|
inlinevirtual |
Set or reset the number of equations.
Set error tolerances.
reltol | scalar relative tolerance |
n | Number of equations |
abstol | array of N absolute tolerance values |
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 75 of file Integrator.h.
Referenced by ImplicitSurfChem::initialize().
|
inlinevirtual |
Set error tolerances.
reltol | scalar relative tolerance |
abstol | scalar absolute tolerance |
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 85 of file Integrator.h.
|
inlinevirtual |
Set the sensitivity error tolerances.
reltol | scalar relative tolerance |
abstol | scalar absolute tolerance |
Definition at line 94 of file Integrator.h.
|
inlinevirtual |
Set the problem type.
probtype | Type of the problem |
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 101 of file Integrator.h.
Referenced by ImplicitSurfChem::ImplicitSurfChem().
|
inlinevirtual |
Initialize the integrator for a new problem.
Call after all options have been set.
t0 | initial time |
func | RHS evaluator object for system of equations. |
Reimplemented in CVodeInt.
Definition at line 111 of file Integrator.h.
Referenced by ImplicitSurfChem::initialize(), and ImplicitSurfChem::integrate().
|
inlinevirtual |
Integrate the system of equations.
tout | Integrate to this time. Note that this is the absolute time value, not a time interval. |
Reimplemented in CVodeInt.
Definition at line 124 of file Integrator.h.
Referenced by ImplicitSurfChem::integrate(), and ImplicitSurfChem::integrate0().
|
inlinevirtual |
Integrate the system of equations.
tout | integrate to this time. Note that this is the absolute time value, not a time interval. |
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 133 of file Integrator.h.
|
inlinevirtual |
The current value of the solution of equation k.
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 139 of file Integrator.h.
Referenced by ImplicitSurfChem::integrate(), and ImplicitSurfChem::integrate0().
|
inlinevirtual |
The current value of the solution of the system of equations.
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 145 of file Integrator.h.
|
inlinevirtual |
The number of equations.
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 151 of file Integrator.h.
|
inlinevirtual |
The number of function evaluations.
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 157 of file Integrator.h.
|
inlinevirtual |
Set the maximum integration order that will be used.
Reimplemented in CVodeInt.
Definition at line 163 of file Integrator.h.
|
inlinevirtual |
Set the solution method.
Reimplemented in CVodeInt.
Definition at line 168 of file Integrator.h.
Referenced by ImplicitSurfChem::ImplicitSurfChem().
|
inlinevirtual |
Set the linear iterator.
Reimplemented in BEulerInt, and CVodeInt.
Definition at line 173 of file Integrator.h.
Referenced by ImplicitSurfChem::ImplicitSurfChem().
|
inlinevirtual |
Set the maximum step size.
Reimplemented in CVodeInt.
Definition at line 178 of file Integrator.h.
Referenced by ImplicitSurfChem::integrate().
|
inlinevirtual |