10#ifndef CT_RESIDJACEVAL_H
11#define CT_RESIDJACEVAL_H
16#ifndef CT_SKIP_DEPRECATION_WARNINGS
17#pragma message("warning: ResidJacEval.h and class ResidJacEval are deprecated and " \
18 "will be removed after Cantera 3.0.")
91 virtual int evalResidNJ(
const double t,
const double delta_t,
92 const double*
const y,
93 const double*
const ydot,
97 const double delta_x = 0.0);
99 int eval(
const double t,
const double*
const y,
const double*
const ydot,
100 double*
const r)
override;
114 virtual double filterNewStep(
const double t,
const double*
const ybase,
150 const double*
const ydot);
166 const double delta_t,
167 const double*
const y,
168 const double*
const ydot);
188 const double*
const y,
189 const double*
const ydot,
190 double*
const delta_y,
191 const double*
const solnWeights = 0);
203 virtual void calcSolnScales(
const double t,
const double*
const y,
204 const double*
const y_old,
double*
const yScales);
219 virtual void user_out2(
const int ifunc,
const double t,
220 const double delta_t,
221 const double*
const y,
222 const double*
const ydot);
234 virtual void user_out(
const int ifunc,
const double t,
276 virtual int evalJacobian(
const double t,
const double delta_t,
double cj,
277 const double*
const y,
const double*
const ydot,
296 virtual int evalJacobianDP(
const double t,
const double delta_t,
double cj,
297 const double*
const y,
298 const double*
const ydot,
299 double*
const* jacobianColPts,
300 double*
const resid);
Headers for the DenseMatrix object, which deals with dense rectangular matrices and description of th...
A class for full (non-sparse) matrices with Fortran-compatible data storage, which adds matrix operat...
Virtual base class for DAE residual function evaluators.
Wrappers for the function evaluators for Nonlinear solvers and Time steppers.
virtual double filterNewStep(const double t, const double *const ybase, double *const step)
Filter the solution predictions.
virtual int evalTimeTrackingEqns(const double t, const double delta_t, const double *const y, const double *const ydot)
Evaluate the time tracking equations, if any.
virtual int evalResidNJ(const double t, const double delta_t, const double *const y, const double *const ydot, double *const resid, const ResidEval_Type_Enum evalType=Base_ResidEval, const int id_x=-1, const double delta_x=0.0)
Evaluate the residual function.
void setAtol(double atol)
Set a global value of the absolute tolerance.
int nEquations() const override
Return the number of equations in the equation system.
virtual void user_out(const int ifunc, const double t, const double *y, const double *ydot)
This function may be used to create output at various points in the execution of an application.
virtual int matrixConditioning(double *const matrix, const int nrows, double *const rhs)
Multiply the matrix by another matrix that leads to better conditioning.
virtual int calcDeltaSolnVariables(const double t, const double *const y, const double *const ydot, double *const delta_y, const double *const solnWeights=0)
Return a vector of delta y's for calculation of the numerical Jacobian.
virtual bool evalStoppingCritera(const double t, const double delta_t, const double *const y, const double *const ydot)
Evaluate any stopping criteria other than a final time limit.
virtual void user_out2(const int ifunc, const double t, const double delta_t, const double *const y, const double *const ydot)
This function may be used to create output at various points in the execution of an application.
virtual double filterSolnPrediction(const double t, double *const y)
Filter the solution predictions.
int eval(const double t, const double *const y, const double *const ydot, double *const r) override
Evaluate the residual function.
virtual int evalJacobian(const double t, const double delta_t, double cj, const double *const y, const double *const ydot, DenseMatrix &J, double *const resid)
Calculate an analytical Jacobian and the residual at the current time and values.
int getInitialConditions(const double t0, double *const y, double *const ydot) override
Fill in the initial conditions.
int neq_
Number of equations.
double m_atol
constant value of atol
virtual void calcSolnScales(const double t, const double *const y, const double *const y_old, double *const yScales)
Returns a vector of column scale factors that can be used to column scale Jacobians.
virtual int evalJacobianDP(const double t, const double delta_t, double cj, const double *const y, const double *const ydot, double *const *jacobianColPts, double *const resid)
Calculate an analytical Jacobian and the residual at the current time and values.
Namespace for the Cantera kernel.
ResidEval_Type_Enum
Differentiates the type of residual evaluations according to functionality.
@ JacDelta_ResidEval
Delta residual calculation for the Jacobian calculation.
@ Base_ShowSolution
Base residual calculation for the showSolution routine.
@ Base_ResidEval
Base residual calculation for the time-stepping function.
@ Base_LaggedSolutionComponents
Base residual calculation containing any lagged components.
@ JacBase_ResidEval
Base residual calculation for the Jacobian calculation.