LduMatrix< Type, DType, LUType >::smoother Class Referenceabstract

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

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. More...
 
 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)
 
virtual ~smoother ()
 
const wordfieldName () const
 
const LduMatrix< Type, DType, LUType > & matrix () const
 
virtual void smooth (Field< Type > &psi, const label nSweeps) const =0
 Smooth the solution for a given number of sweeps. More...
 

Static Public Member Functions

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

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 261 of file LduMatrix.H.

Constructor & Destructor Documentation

◆ smoother()

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

Definition at line 106 of file LduMatrixSmoother.C.

◆ ~smoother()

virtual ~smoother ( )
inlinevirtual

Definition at line 332 of file LduMatrix.H.

Member Function Documentation

◆ type()

virtual const word& type ( ) const
pure virtual

Runtime type information.

◆ declareRunTimeSelectionTable() [1/2]

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

◆ declareRunTimeSelectionTable() [2/2]

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

◆ New()

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 32 of file LduMatrixSmoother.C.

References Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, LduMatrix< Type, DType, LUType >::smoother::fieldName(), dictionary::lookup(), and LduMatrix< Type, DType, LUType >::smoother::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()

const word& fieldName ( ) const
inline

Definition at line 340 of file LduMatrix.H.

References LduMatrix< Type, DType, LUType >::smoother::fieldName_.

Referenced by LduMatrix< Type, DType, LUType >::smoother::New().

Here is the caller graph for this function:

◆ matrix()

const LduMatrix<Type, DType, LUType>& matrix ( ) const
inline

◆ smooth()

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 >.

Member Data Documentation

◆ fieldName_

word fieldName_
protected

Definition at line 267 of file LduMatrix.H.

Referenced by LduMatrix< Type, DType, LUType >::smoother::fieldName().

◆ matrix_

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

Definition at line 268 of file LduMatrix.H.

Referenced by LduMatrix< Type, DType, LUType >::smoother::matrix().


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