Loading...
Searching...
No Matches
LduMatrix< Type, DType, LUType >::smoother Class Referenceabstract

Abstract base-class for LduMatrix smoothers. More...

#include <LduMatrix.H>

Inheritance diagram for LduMatrix< Type, DType, LUType >::smoother:
Collaboration diagram for LduMatrix< Type, DType, LUType >::smoother:

Public Member Functions

virtual const wordtype () const =0
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, smoother, symMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix),(fieldName, matrix))
 declareRunTimeSelectionTable (autoPtr, smoother, asymMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix),(fieldName, matrix))
 smoother (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix)
 Construct for given field name and matrix.
virtual ~smoother ()=default
 Destructor.
const wordfieldName () const noexcept
const LduMatrix< Type, DType, LUType > & matrix () const noexcept
virtual void smooth (Field< Type > &psi, const label nSweeps) const =0
 Smooth the solution for a given number of sweeps.

Static Public Member Functions

static autoPtr< smootherNew (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &smootherDict)
 Return a new smoother.

Protected Attributes

word fieldName_
const LduMatrix< Type, DType, LUType > & matrix_

Detailed Description

template<class Type, class DType, class LUType>
class Foam::LduMatrix< Type, DType, LUType >::smoother

Abstract base-class for LduMatrix smoothers.

Definition at line 334 of file LduMatrix.H.

Constructor & Destructor Documentation

◆ smoother()

template<class Type, class DType, class LUType>
smoother ( const word & fieldName,
const LduMatrix< Type, DType, LUType > & matrix )

Construct for given field name and matrix.

Definition at line 97 of file LduMatrixSmoother.C.

References fieldName(), fieldName_, LduMatrix< Type, DType, LUType >::LduMatrix(), matrix(), and matrix_.

Referenced by declareRunTimeSelectionTable(), declareRunTimeSelectionTable(), and TGaussSeidelSmoother< Type, DType, LUType >::TGaussSeidelSmoother().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~smoother()

template<class Type, class DType, class LUType>
virtual ~smoother ( )
virtualdefault

Destructor.

Member Function Documentation

◆ type()

template<class Type, class DType, class LUType>
virtual const word & type ( ) const
pure virtual

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

template<class Type, class DType, class LUType>
declareRunTimeSelectionTable ( autoPtr ,
smoother ,
symMatrix ,
(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix) ,
(fieldName, matrix)  )

References fieldName(), LduMatrix< Type, DType, LUType >::LduMatrix(), matrix(), and smoother().

Here is the call graph for this function:

◆ declareRunTimeSelectionTable() [2/2]

template<class Type, class DType, class LUType>
declareRunTimeSelectionTable ( autoPtr ,
smoother ,
asymMatrix ,
(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix) ,
(fieldName, matrix)  )

References fieldName(), LduMatrix< Type, DType, LUType >::LduMatrix(), matrix(), and smoother().

Here is the call graph for this function:

◆ New()

template<class Type, class DType, class LUType>
Foam::autoPtr< typename Foam::LduMatrix< Type, DType, LUType >::smoother > New ( const word & fieldName,
const LduMatrix< Type, DType, LUType > & matrix,
const dictionary & smootherDict )
static

Return a new smoother.

Definition at line 28 of file LduMatrixSmoother.C.

References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, FatalIOErrorInLookup, fieldName(), dictionary::get(), LduMatrix< Type, DType, LUType >::LduMatrix(), and matrix().

Referenced by SmoothSolver< Type, DType, LUType >::solve().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fieldName()

template<class Type, class DType, class LUType>
const word & fieldName ( ) const
inlinenoexcept

◆ matrix()

template<class Type, class DType, class LUType>
const LduMatrix< Type, DType, LUType > & matrix ( ) const
inlinenoexcept

◆ smooth()

template<class Type, class DType, class LUType>
virtual void smooth ( Field< Type > & psi,
const label nSweeps ) const
pure virtual

Smooth the solution for a given number of sweeps.

Implemented in TGaussSeidelSmoother< Type, DType, LUType >.

References psi.

Member Data Documentation

◆ fieldName_

template<class Type, class DType, class LUType>
word fieldName_
protected

◆ matrix_

template<class Type, class DType, class LUType>
const LduMatrix<Type, DType, LUType>& matrix_
protected

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