OGS 6.1.0-1721-g6382411ad
NumLib::EquationSystem Class Referenceabstract

Detailed Description

Collection of basic methods every equation system must provide.

Definition at line 30 of file EquationSystem.h.

#include <EquationSystem.h>

Inheritance diagram for NumLib::EquationSystem:
Collaboration diagram for NumLib::EquationSystem:

Public Member Functions

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

Member Function Documentation

◆ isLinear()

virtual bool NumLib::EquationSystem::isLinear ( ) const
pure virtual

Check whether this is actually a linear equation system.

Depending on its parameters an in general nonlinear equation system can be linear in special cases. With this method it is possible to detect that at runtime and thus save some computations.

◆ postIteration()

virtual IterationResult NumLib::EquationSystem::postIteration ( GlobalVector const &  x)

Post-processes an iteration in the solution process of this equation.

xthe current approximate solution of the equation.
A status flag indicating id the current iteration succeeded.

Definition at line 59 of file EquationSystem.h.

References NumLib::SUCCESS.

60  {
61  (void)x; // by default do nothing
63  }

◆ preIteration()

virtual void NumLib::EquationSystem::preIteration ( const unsigned  iter,
GlobalVector const &  x 

Prepares a new iteration in the solution process of this equation.

iterthe current iteration number, starting from 1.
xthe current approximate solution of the equation.

Definition at line 47 of file EquationSystem.h.

48  {
49  (void)iter;
50  (void)x; // by default do nothing
51  }

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