FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

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

#include <src/OpenFOAM/matrices/lduMatrix/lduMatrix/lduMatrix.H>


Detailed Description

Abstract base-class for lduMatrix smoothers.

Definition at line 383 of file lduMatrix.H.

Inheritance diagram for lduMatrix::smoother:
Collaboration diagram for lduMatrix::smoother:

List of all members.

Public Member Functions

virtual const word &  type () const =0
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, smoother, symMatrix,(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces))
 declareRunTimeSelectionTable (autoPtr, smoother, asymMatrix,(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces))
 smoother (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)
virtual  ~smoother ()
const word &  fieldName () const
const lduMatrix &  matrix () const
const FieldField< Field, scalar > &  interfaceBouCoeffs () const
const FieldField< Field, scalar > &  interfaceIntCoeffs () const
const lduInterfaceFieldPtrsList &  interfaces () const
virtual void  smooth (scalarField &psi, const scalarField &source, const direction cmpt, const label nSweeps) const =0
 Smooth the solution for a given number of sweeps.

Static Public Member Functions

static word  getName (const dictionary &)
 Find the smoother name (directly or from a sub-dictionary)
static autoPtr< smoother >  New (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls)
 Return a new smoother.

Protected Attributes

word  fieldName_
const lduMatrix &  matrix_
const FieldField< Field, scalar > &  interfaceBouCoeffs_
const FieldField< Field, scalar > &  interfaceIntCoeffs_
const lduInterfaceFieldPtrsList &  interfaces_

Constructor & Destructor Documentation

smoother ( const word &   fieldName,
const lduMatrix &   matrix,
const FieldField< Field, scalar > &   interfaceBouCoeffs,
const FieldField< Field, scalar > &   interfaceIntCoeffs,
const lduInterfaceFieldPtrsList &   interfaces  
)

Definition at line 162 of file lduMatrixSmoother.C.

virtual ~smoother (  ) [inline, virtual]

Definition at line 478 of file lduMatrix.H.


Member Function Documentation

Foam::word getName ( const dictionary &   solverControls  ) [static]

Find the smoother name (directly or from a sub-dictionary)

Definition at line 40 of file lduMatrixSmoother.C.

References entry::dict(), e, entry::isDict(), dictionary::lookup(), dictionary::lookupEntry(), name(), and entry::stream().

virtual const word& type (  ) const [pure virtual]

Runtime type information.

declareRunTimeSelectionTable ( autoPtr   ,
smoother   ,
symMatrix   ,
(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)   ,
(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces)    
)
declareRunTimeSelectionTable ( autoPtr   ,
smoother   ,
asymMatrix   ,
(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)   ,
(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces)    
)
Foam::autoPtr< Foam::lduMatrix::smoother > New ( const word &   fieldName,
const lduMatrix &   matrix,
const FieldField< Field, scalar > &   interfaceBouCoeffs,
const FieldField< Field, scalar > &   interfaceIntCoeffs,
const lduInterfaceFieldPtrsList &   interfaces,
const dictionary &   solverControls  
) [static]
const word& fieldName (  ) const [inline]

Definition at line 486 of file lduMatrix.H.

References lduMatrix::smoother::fieldName_.

const lduMatrix& matrix (  ) const [inline]

Definition at line 491 of file lduMatrix.H.

References lduMatrix::smoother::matrix_.

const FieldField<Field, scalar>& interfaceBouCoeffs (  ) const [inline]

Definition at line 496 of file lduMatrix.H.

References lduMatrix::smoother::interfaceBouCoeffs_.

const FieldField<Field, scalar>& interfaceIntCoeffs (  ) const [inline]

Definition at line 501 of file lduMatrix.H.

References lduMatrix::smoother::interfaceIntCoeffs_.

const lduInterfaceFieldPtrsList& interfaces (  ) const [inline]

Definition at line 506 of file lduMatrix.H.

References lduMatrix::smoother::interfaces_.

virtual void smooth ( scalarField &   psi,
const scalarField &   source,
const direction   cmpt,
const label   nSweeps  
) const [pure virtual]

Smooth the solution for a given number of sweeps.

Implemented in DICSmoother, DICGaussSeidelSmoother, DILUSmoother, DILUGaussSeidelSmoother, and GaussSeidelSmoother.


Member Data Documentation

word fieldName_ [protected]

Definition at line 389 of file lduMatrix.H.

Referenced by lduMatrix::smoother::fieldName().

const lduMatrix& matrix_ [protected]

Definition at line 390 of file lduMatrix.H.

Referenced by lduMatrix::smoother::matrix().

const FieldField<Field, scalar>& interfaceBouCoeffs_ [protected]

Definition at line 391 of file lduMatrix.H.

Referenced by lduMatrix::smoother::interfaceBouCoeffs().

const FieldField<Field, scalar>& interfaceIntCoeffs_ [protected]

Definition at line 392 of file lduMatrix.H.

Referenced by lduMatrix::smoother::interfaceIntCoeffs().

Definition at line 393 of file lduMatrix.H.

Referenced by lduMatrix::smoother::interfaces().


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