18 }
catch (std::exception& err) {
22 writelog(
"FuncEval::eval_nothrow: unhandled exception:\n");
28 string msg =
"FuncEval::eval_nothrow: unhandled exception of unknown type\n";
50 }
catch (std::exception& err) {
54 writelog(
"FuncEval::eval_nothrow: unhandled exception:\n");
60 string msg =
"FuncEval::eval_nothrow: unhandled exception of unknown type\n";
72 std::stringstream errs;
91 }
catch (std::exception& err) {
95 writelog(
"FuncEval::preconditioner_setup_nothrow: unhandled exception:\n");
101 string msg =
"FuncEval::preconditioner_setup_nothrow: unhandled exception"
102 " of unknown type\n";
124 }
catch (std::exception& err) {
128 writelog(
"FuncEval::preconditioner_solve_nothrow: unhandled exception:\n");
134 string msg =
"FuncEval::preconditioner_solve_nothrow: unhandled exception"
135 " of unknown type\n";
Base class for exceptions thrown by Cantera classes.
const char * what() const override
Get a description of the error.
virtual void evalDae(double t, double *y, double *ydot, double *p, double *residual)
Evaluate the right-hand-side DAE function.
int preconditioner_solve_nothrow(double *rhs, double *output)
Preconditioner solve that doesn't throw an error but returns a CVODES flag.
int preconditioner_setup_nothrow(double t, double *y, double gamma)
Preconditioner setup that doesn't throw an error but returns a CVODES flag.
int evalDaeNoThrow(double t, double *y, double *ydot, double *residual)
Evaluate the right-hand side using return code to indicate status.
int evalNoThrow(double t, double *y, double *ydot)
Evaluate the right-hand side using return code to indicate status.
bool suppressErrors() const
Get current state of error suppression.
virtual void eval(double t, double *y, double *ydot, double *p)
Evaluate the right-hand-side ODE function.
vector< string > m_errors
Errors occurring during function evaluations.
string getErrors() const
Return a string containing the text of any suppressed errors.
vector< double > m_sens_params
Values for the problem parameters for which sensitivities are computed This is the array which is per...
virtual void preconditionerSolve(double *rhs, double *output)
Evaluate the linear system Ax=b where A is the preconditioner.
virtual void preconditionerSetup(double t, double *y, double gamma)
Evaluate the setup processes for the Jacobian preconditioner.
void writelog(const string &fmt, const Args &... args)
Write a formatted message to the screen.
void writelogendl()
Write an end of line character to the screen and flush output.
Namespace for the Cantera kernel.