Abstract base class for the systems of ordinary differential equations. More...
Public Member Functions | |
ODESystem () | |
Construct null. More... | |
virtual | ~ODESystem () |
Destructor. More... | |
virtual label | nEqns () const =0 |
Return the number of equations in the system. More... | |
virtual void | derivatives (const scalar x, const scalarField &y, const label li, scalarField &dydx) const =0 |
Calculate the derivatives in dydx. More... | |
virtual void | jacobian (const scalar x, const scalarField &y, const label li, scalarField &dfdx, scalarSquareMatrix &dfdy) const =0 |
Calculate the Jacobian of the system. More... | |
Protected Member Functions | |
void | check (const scalar x, const scalarField &y, const scalarField &dy, const label li) const |
Print correspondence between derivatives and Jacobian methods. More... | |
Abstract base class for the systems of ordinary differential equations.
Definition at line 46 of file ODESystem.H.
ODESystem | ( | ) |
Construct null.
Definition at line 30 of file ODESystem.C.
|
virtual |
Destructor.
Definition at line 36 of file ODESystem.C.
References ODESystem::check().
|
protected |
Print correspondence between derivatives and Jacobian methods.
Definition at line 43 of file ODESystem.C.
References ODESystem::derivatives(), forAll, Foam::Info, ODESystem::jacobian(), ODESystem::nEqns(), Foam::nl, Foam::stabilise(), Foam::y0(), and Foam::y1().
Referenced by ODESystem::~ODESystem().
|
pure virtual |
Return the number of equations in the system.
Implemented in odeChemistryModel.
Referenced by ODESystem::check(), and ODESolver::resize().
|
pure virtual |
Calculate the derivatives in dydx.
for the current state x and y and optional index into the list of systems to solve li
Implemented in chemistryModel< ThermoType >.
Referenced by ODESystem::check(), seulex::seulex(), Trapezoid::solve(), adaptiveSolver::solve(), Rosenbrock12::solve(), Rosenbrock23::solve(), rodas23::solve(), rodas34::solve(), RKCK45::solve(), RKDP45::solve(), RKF45::solve(), Rosenbrock34::solve(), and SIBS::solve().
|
pure virtual |
Calculate the Jacobian of the system.
for the current state x and y and optional index into the list of systems to solve li. Need by stiff-system solvers
Implemented in chemistryModel< ThermoType >.
Referenced by ODESystem::check(), EulerSI::solve(), Rosenbrock12::solve(), rodas23::solve(), Rosenbrock23::solve(), rodas34::solve(), Rosenbrock34::solve(), SIBS::solve(), and seulex::solve().