OGS 6.2.1-76-gbb689931b
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.

Remarks
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)
inlinevirtual

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

Parameters
xthe current approximate solution of the equation.
Returns
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 
)
inlinevirtual

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

Parameters
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: