Cantera
2.0
|
Wrapper class for 'cvode' integrator from LLNL. More...
#include <CVodeInt.h>
Public Member Functions | |
CVodeInt () | |
Constructor. | |
virtual | ~CVodeInt () |
Destructor. | |
virtual void | setTolerances (double reltol, size_t n, double *abstol) |
Set or reset the number of equations. | |
virtual void | setTolerances (double reltol, double abstol) |
Set error tolerances. | |
virtual void | setProblemType (int probtype) |
Set the problem type. | |
virtual void | initialize (double t0, FuncEval &func) |
Initialize the integrator for a new problem. | |
virtual void | reinitialize (double t0, FuncEval &func) |
virtual void | integrate (double tout) |
Integrate the system of equations. | |
virtual doublereal | step (double tout) |
Integrate the system of equations. | |
virtual double & | solution (size_t k) |
The current value of the solution of equation k. | |
virtual double * | 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 | setSensitivityTolerances (doublereal reltol, doublereal abstol) |
Set the sensitivity error tolerances. | |
virtual void | setBandwidth (int N_Upper, int N_Lower) |
virtual int | nSensParams () |
virtual double | sensitivity (size_t k, size_t p) |
Private Attributes | |
int | m_neq |
void * | m_cvode_mem |
double | m_t0 |
void * | m_y |
void * | m_abstol |
int | m_type |
int | m_itol |
int | m_method |
int | m_iter |
int | m_maxord |
double | m_reltol |
double | m_abstols |
int | m_nabs |
double | m_hmax |
double | m_hmin |
int | m_maxsteps |
vector_fp | m_ropt |
long int * | m_iopt |
void * | m_data |
Wrapper class for 'cvode' integrator from LLNL.
The unmodified cvode code is in directory ext/cvode.
Definition at line 35 of file CVodeInt.h.
CVodeInt | ( | ) |
Constructor.
Default settings: dense jacobian, no user-supplied Jacobian function, Newton iteration.
Definition at line 93 of file CVodeInt.cpp.
|
virtual |
Destructor.
Definition at line 116 of file CVodeInt.cpp.
|
virtual |
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 from Integrator.
Definition at line 139 of file CVodeInt.cpp.
|
virtual |
Set error tolerances.
reltol | scalar relative tolerance |
abstol | scalar absolute tolerance |
Reimplemented from Integrator.
Definition at line 155 of file CVodeInt.cpp.
|
virtual |
Set the problem type.
probtype | Type of the problem |
Reimplemented from Integrator.
Definition at line 162 of file CVodeInt.cpp.
|
virtual |
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 from Integrator.
Definition at line 207 of file CVodeInt.cpp.
References cvode_jac(), cvode_rhs(), DATA_PTR, FuncEval::getInitialConditions(), and FuncEval::neq().
|
virtual |
Integrate the system of equations.
tout | Integrate to this time. Note that this is the absolute time value, not a time interval. |
Reimplemented from Integrator.
Definition at line 310 of file CVodeInt.cpp.
References Cantera::int2str().
|
virtual |
Integrate the system of equations.
tout | integrate to this time. Note that this is the absolute time value, not a time interval. |
Reimplemented from Integrator.
Definition at line 320 of file CVodeInt.cpp.
References Cantera::int2str().
|
virtual |
The current value of the solution of equation k.
Reimplemented from Integrator.
Definition at line 130 of file CVodeInt.cpp.
|
virtual |
The current value of the solution of the system of equations.
Reimplemented from Integrator.
Definition at line 134 of file CVodeInt.cpp.
|
inlinevirtual |
|
virtual |
The number of function evaluations.
Reimplemented from Integrator.
Definition at line 331 of file CVodeInt.cpp.
|
inlinevirtual |
Set the maximum integration order that will be used.
Reimplemented from Integrator.
Definition at line 55 of file CVodeInt.h.
|
virtual |
Set the solution method.
Reimplemented from Integrator.
Definition at line 167 of file CVodeInt.cpp.
References Cantera::Adams_Method, and Cantera::BDF_Method.
|
virtual |
Set the linear iterator.
Reimplemented from Integrator.
Definition at line 196 of file CVodeInt.cpp.
References Cantera::Functional_Iter, and Cantera::Newton_Iter.
|
virtual |
Set the maximum step size.
Reimplemented from Integrator.
Definition at line 178 of file CVodeInt.cpp.
|
virtual |
Set the minimum step size.
Reimplemented from Integrator.
Definition at line 184 of file CVodeInt.cpp.
|
inlinevirtualinherited |
Set the sensitivity error tolerances.
reltol | scalar relative tolerance |
abstol | scalar absolute tolerance |
Definition at line 94 of file Integrator.h.