Documentation 6b54b78464
Loading...
Searching...
No Matches
CAbstractPreconditioner< ScalarType > Class Template Referencefinal

Applies a std::function as the preconditioning operation. More...

#include <CPreconditioner.hpp>

Inheritance diagram for CAbstractPreconditioner< ScalarType >:
[legend]

Public Member Functions

 CAbstractPreconditioner ()=delete
 
template<class F >
 CAbstractPreconditioner (const F &function)
 
void operator() (const CSysVector< ScalarType > &u, CSysVector< ScalarType > &v) const override
 Overload of operator (), applies the preconditioner to "u" storing the result in "v".
 
- Public Member Functions inherited from CPreconditioner< ScalarType >
virtual ~CPreconditioner ()=0
 Destructor of the class.
 
virtual void Build ()
 Generic "preprocessing" hook derived classes may implement to build the preconditioner.
 
virtual bool IsIdentity () const
 Return true to identify the identity preconditioner, may allow some solvers to be more efficient.
 

Additional Inherited Members

- Static Public Member Functions inherited from CPreconditioner< ScalarType >
static CPreconditioner * Create (ENUM_LINEAR_SOLVER_PREC kind, CSysMatrix< ScalarType > &jacobian, CGeometry *geometry, const CConfig *config)
 Factory method.
 

Detailed Description

template<class ScalarType>
class CAbstractPreconditioner< ScalarType >

Applies a std::function as the preconditioning operation.

Note
This can be used to treat almost anything as a preconditioner.

Constructor & Destructor Documentation

◆ CAbstractPreconditioner() [1/2]

template<class ScalarType >
CAbstractPreconditioner< ScalarType >::CAbstractPreconditioner ( )
delete

◆ CAbstractPreconditioner() [2/2]

template<class ScalarType >
template<class F >
CAbstractPreconditioner< ScalarType >::CAbstractPreconditioner ( const F &  function)
inlineexplicit

Member Function Documentation

◆ operator()()

template<class ScalarType >
void CAbstractPreconditioner< ScalarType >::operator() ( const CSysVector< ScalarType > &  u,
CSysVector< ScalarType > &  v 
) const
inlineoverridevirtual

Overload of operator (), applies the preconditioner to "u" storing the result in "v".

Implements CPreconditioner< ScalarType >.


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