OGS 6.2.0-405-gb717f6088
NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard > Class Template Referenceabstract

Detailed Description

template<>
class NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >

Interface for a first-order implicit quasi-linear ODE.

See also
ODESystemTag::FirstOrderImplicitQuasilinear

Definition at line 39 of file ODESystem.h.

#include <ODESystem.h>

Inheritance diagram for NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >:
Collaboration diagram for NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >:

Public Types

using Index = MathLib::MatrixVectorTraits< GlobalMatrix >::Index
 

Public Member Functions

virtual void preAssemble (const double t, GlobalVector const &x)=0
 Calls process' pre-assembly with the provided state (t, x). More...
 
virtual void assemble (const double t, GlobalVector const &x, GlobalMatrix &M, GlobalMatrix &K, GlobalVector &b)=0
 Assemble M, K and b at the provided state (t, x). More...
 
virtual std::vector< NumLib::IndexValueVector< Index > > const * getKnownSolutions (double const t, GlobalVector const &x) const
 
- Public Member Functions inherited from NumLib::EquationSystem
virtual bool isLinear () const =0
 
virtual void preIteration (const unsigned iter, GlobalVector const &x)
 
virtual IterationResult postIteration (GlobalVector const &x)
 
- Public Member Functions inherited from NumLib::MatrixSpecificationsProvider
virtual MathLib::MatrixSpecifications getMatrixSpecifications (const int process_id) const =0
 
virtual ~MatrixSpecificationsProvider ()=default
 

Static Public Attributes

static const ODESystemTag ODETag
 A tag indicating the type of ODE. More...
 

Member Typedef Documentation

◆ Index

Member Function Documentation

◆ assemble()

virtual void NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >::assemble ( const double  t,
GlobalVector const &  x,
GlobalMatrix &  M,
GlobalMatrix &  K,
GlobalVector &  b 
)
pure virtual

Assemble M, K and b at the provided state (t, x).

◆ getKnownSolutions()

virtual std::vector<NumLib::IndexValueVector<Index> > const* NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >::getKnownSolutions ( double const  t,
GlobalVector const &  x 
) const
inlinevirtual

Provides known solutions (Dirichlet boundary conditions) vector for the ode system at the given time t.

Definition at line 60 of file ODESystem.h.

61  {
62  (void)t;
63  (void)x;
64  return nullptr; // by default there are no known solutions
65  }

◆ preAssemble()

virtual void NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Picard >::preAssemble ( const double  t,
GlobalVector const &  x 
)
pure virtual

Calls process' pre-assembly with the provided state (t, x).

Implemented in NumLib::ODESystem< ODESystemTag::FirstOrderImplicitQuasilinear, NonlinearSolverTag::Newton >.

Member Data Documentation

◆ ODETag

Initial value:

A tag indicating the type of ODE.

Definition at line 44 of file ODESystem.h.


The documentation for this class was generated from the following file: