12 #ifndef CT_INTEGRATOR_H
13 #define CT_INTEGRATOR_H
71 warn(
"setTolerances");
80 warn(
"setTolerances");
96 warn(
"setProblemType");
109 virtual void reinitialize(doublereal t0,
FuncEval& func) {
110 warn(
"reinitialize");
127 virtual doublereal
step(doublereal tout) {
175 warn(
"setMethodType");
181 warn_deprecated(
"Integrator::setIterator",
"To be removed after Cantera 2.5.");
186 warn(
"setMaxStepSize");
191 warn(
"setMinStepSize");
196 warn(
"setMaxErrTestFails");
214 virtual void setBandwidth(
int N_Upper,
int N_Lower) {
215 warn(
"setBandwidth");
218 virtual int nSensParams() {
219 warn(
"nSensParams()");
223 virtual double sensitivity(
size_t k,
size_t p) {
230 void warn(
const std::string& msg)
const {
231 writelog(
">>>> Warning: method "+msg+
" of base class "
232 +
"Integrator called. Nothing done.\n");
237 Integrator* newIntegrator(
const std::string& itype);
Virtual base class for ODE right-hand-side function evaluators.
Abstract base class for ODE system integrators.
virtual doublereal step(doublereal tout)
Integrate the system of equations.
virtual doublereal * solution()
The current value of the solution of the system of equations.
virtual void setTolerances(doublereal reltol, doublereal abstol)
Set error tolerances.
virtual void setMaxStepSize(double hmax)
Set the maximum step size.
virtual void setMaxSteps(int nmax)
Set the maximum number of time-steps the integrator can take before reaching the next output time.
virtual void setProblemType(int probtype)
Set the problem type.
virtual int maxSteps()
Returns the maximum number of time-steps the integrator can take before reaching the next output time...
Integrator()
Default Constructor.
virtual void setMaxErrTestFails(int n)
Set the maximum permissible number of error test failures.
virtual void setTolerances(doublereal reltol, size_t n, doublereal *abstol)
Set error tolerances.
virtual void initialize(doublereal t0, FuncEval &func)
Initialize the integrator for a new problem.
virtual double * derivative(double tout, int n)
n-th derivative of the output function at time tout.
virtual void setMinStepSize(double hmin)
Set the minimum step size.
virtual void integrate(doublereal tout)
Integrate the system of equations.
virtual void setIterator(IterType t)
Set the linear iterator.
virtual int lastOrder() const
Order used during the last solution step.
virtual int nEvals() const
The number of function evaluations.
virtual int nEquations() const
The number of equations.
virtual void setSensitivityTolerances(doublereal reltol, doublereal abstol)
Set the sensitivity error tolerances.
virtual ~Integrator()
Destructor.
virtual doublereal & solution(size_t k)
The current value of the solution of equation k.
virtual void setMethod(MethodType t)
Set the solution method.
virtual void setMaxOrder(int n)
Set the maximum integration order that will be used.
This file contains definitions for utility functions and text for modules, inputfiles,...
void writelog(const std::string &fmt, const Args &... args)
Write a formatted message to the screen.
Namespace for the Cantera kernel.
MethodType
Specifies the method used to integrate the system of equations.
@ BDF_Method
Backward Differentiation.
IterType
Specifies the method used for iteration.
@ Functional_Iter
Functional Iteration.
@ Newton_Iter
Newton Iteration.