Loading...
Searching...
No Matches
symGaussSeidelSmoother Class Reference

A lduMatrix::smoother for symmetric Gauss-Seidel. More...

#include <symGaussSeidelSmoother.H>

Inheritance diagram for symGaussSeidelSmoother:
Collaboration diagram for symGaussSeidelSmoother:

Public Member Functions

 TypeName ("symGaussSeidel")
 Runtime type information.
 symGaussSeidelSmoother (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls)
 Construct from components.
virtual void smooth (solveScalarField &psi, const scalarField &Source, const direction cmpt, const label nSweeps) const
 Smooth the solution for a given number of sweeps.
virtual void scalarSmooth (solveScalarField &psi, const solveScalarField &source, const direction cmpt, const label nSweeps) const
 Smooth the solution for a given number of sweeps.
Public Member Functions inherited from lduMatrix::smoother
virtual const wordtype () 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, const dictionary &solverControls),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls))
 declareRunTimeSelectionTable (autoPtr, smoother, asymMatrix,(const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls),(fieldName, matrix, interfaceBouCoeffs, interfaceIntCoeffs, interfaces, solverControls))
 smoother (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces)
 Construct for given field name, matrix etc.
virtual ~smoother ()=default
 Destructor.
const wordfieldName () const noexcept
const lduMatrixmatrix () const noexcept
const FieldField< Field, scalar > & interfaceBouCoeffs () const noexcept
const FieldField< Field, scalar > & interfaceIntCoeffs () const noexcept
const lduInterfaceFieldPtrsListinterfaces () const noexcept

Static Public Member Functions

static void smooth (const word &fieldName, solveScalarField &psi, const lduMatrix &matrix, const solveScalarField &source, const FieldField< Field, scalar > &interfaceBouCoeffs, const lduInterfaceFieldPtrsList &interfaces, const direction cmpt, const label nSweeps)
 Smooth for the given number of sweeps.
Static Public Member Functions inherited from lduMatrix::smoother
static word getName (const dictionary &)
 Find the smoother name (directly or from a sub-dictionary).
static autoPtr< smootherNew (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.

Additional Inherited Members

Protected Attributes inherited from lduMatrix::smoother
word fieldName_
const lduMatrixmatrix_
const FieldField< Field, scalar > & interfaceBouCoeffs_
const FieldField< Field, scalar > & interfaceIntCoeffs_
const lduInterfaceFieldPtrsListinterfaces_

Detailed Description

A lduMatrix::smoother for symmetric Gauss-Seidel.

Source files

Definition at line 50 of file symGaussSeidelSmoother.H.

Constructor & Destructor Documentation

◆ symGaussSeidelSmoother()

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

Member Function Documentation

◆ TypeName()

TypeName ( "symGaussSeidel" )

◆ smooth() [1/2]

void smooth ( const word & fieldName,
solveScalarField & psi,
const lduMatrix & matrix,
const solveScalarField & source,
const FieldField< Field, scalar > & interfaceBouCoeffs,
const lduInterfaceFieldPtrsList & interfaces,
const direction cmpt,
const label nSweeps )
static

Smooth for the given number of sweeps.

Definition at line 64 of file symGaussSeidelSmoother.C.

References UList< T >::begin(), lduMatrix::smoother::fieldName_, lduMatrix::smoother::interfaceBouCoeffs_, lduMatrix::smoother::interfaces_, lduMatrix::smoother::matrix_, UPstream::nRequests(), and psi.

Referenced by scalarSmooth().

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

◆ smooth() [2/2]

void smooth ( solveScalarField & psi,
const scalarField & Source,
const direction cmpt,
const label nSweeps ) const
virtual

Smooth the solution for a given number of sweeps.

Implements lduMatrix::smoother.

Definition at line 219 of file symGaussSeidelSmoother.C.

References psi, and scalarSmooth().

Here is the call graph for this function:

◆ scalarSmooth()

void scalarSmooth ( solveScalarField & psi,
const solveScalarField & source,
const direction cmpt,
const label nSweeps ) const
virtual

Smooth the solution for a given number of sweeps.

Implements lduMatrix::smoother.

Definition at line 197 of file symGaussSeidelSmoother.C.

References lduMatrix::smoother::fieldName_, lduMatrix::smoother::interfaceBouCoeffs_, lduMatrix::smoother::interfaces_, lduMatrix::smoother::matrix_, psi, and smooth().

Referenced by smooth().

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

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