![]() |
OGS
|
|
Interface for a first-order implicit quasi-linear ODE.
ODEs using this interface also provide a Jacobian in addition to the functionality of the Picard-related interface.
Definition at line 101 of file ODESystem.h.
#include <ODESystem.h>
Public Member Functions | |
| void | preAssemble (const double t, double const dt, GlobalVector const &x) override=0 |
Calls process' pre-assembly with the provided state (t, dt, x). | |
| virtual void | assembleWithJacobian (const double t, double const dt, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, int const process_id, GlobalVector &b, GlobalMatrix &Jac)=0 |
| Public Member Functions inherited from NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard > | |
| virtual std::vector< GlobalIndexType > | getIndicesOfResiduumWithoutInitialCompensation () const |
| virtual void | setReleaseNodalForces (GlobalVector const *, int const) |
| virtual void | assemble (const double t, double const dt, std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, int const process_id, GlobalMatrix &M, GlobalMatrix &K, GlobalVector &b)=0 |
Assemble M, K and b at the provided state (t, x). | |
| virtual std::vector< NumLib::IndexValueVector< Index > > const * | getKnownSolutions (double const, GlobalVector const &, int const) const |
| virtual void | updateConstraints (GlobalVector &, GlobalVector &, int const) |
| virtual bool | shouldLinearSolverComputeOnlyUponTimestepChange () const |
| Public Member Functions inherited from NumLib::EquationSystem | |
| virtual bool | isLinear () const =0 |
| virtual bool | requiresNormalization () const =0 |
| virtual void | preIteration (const unsigned iter, GlobalVector const &x) |
| virtual IterationResult | postIteration (GlobalVector const &x) |
| virtual MathLib::MatrixSpecifications | getMatrixSpecifications (const int process_id) const =0 |
| virtual | ~EquationSystem ()=default |
Additional Inherited Members | |
| Public Types inherited from NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard > | |
| using | Index = MathLib::MatrixVectorTraits<GlobalMatrix>::Index |
| Static Public Attributes inherited from NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard > | |
| static const ODESystemTag | ODETag |
| A tag indicating the type of ODE. | |
|
pure virtual |
Assemble b and the Jacobian \( \mathtt{Jac} := \partial r/\partial x_N \) at the provided state (t, x).
For the meaning of the other parameters refer to the the introductory remarks on time discretization.
|
overridepure virtual |
Calls process' pre-assembly with the provided state (t, dt, x).
Implements NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >.