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

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


Detailed Description

Abstract base-class for lduMatrix solvers.

Definition at line 211 of file lduMatrix.H.

Inheritance diagram for lduMatrix::solver:
Collaboration diagram for lduMatrix::solver:

List of all members.

Public Member Functions

virtual const word &  type () const =0
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, solver, 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, solver, 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))
 solver (const word &fieldName, const lduMatrix &matrix, const FieldField< Field, scalar > &interfaceBouCoeffs, const FieldField< Field, scalar > &interfaceIntCoeffs, const lduInterfaceFieldPtrsList &interfaces, const dictionary &solverControls)
virtual  ~solver ()
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  read (const dictionary &)
 Read and reset the solver parameters from the given stream.
virtual solverPerformance  solve (scalarField &psi, const scalarField &source, const direction cmpt=0) const =0
scalar  normFactor (const scalarField &psi, const scalarField &source, const scalarField &Apsi, scalarField &tmpField) const
 Return the matrix norm used to normalise the residual for the.

Static Public Member Functions

static autoPtr< solver >  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 solver.

Protected Member Functions

virtual void  readControls ()
 Read the control parameters from the controlDict_.

Protected Attributes

word  fieldName_
const lduMatrix &  matrix_
const FieldField< Field, scalar > &  interfaceBouCoeffs_
const FieldField< Field, scalar > &  interfaceIntCoeffs_
lduInterfaceFieldPtrsList  interfaces_
dictionary  controlDict_
 dictionary of controls
label  maxIter_
 Maximum number of iterations in the solver.
scalar  tolerance_
 Final convergence tolerance.
scalar  relTol_
 Convergence tolerance relative to the initial.

Constructor & Destructor Documentation

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

Definition at line 142 of file lduMatrixSolver.C.

virtual ~solver (  ) [inline, virtual]

Definition at line 326 of file lduMatrix.H.


Member Function Documentation

void readControls (  ) [protected, virtual]

Read the control parameters from the controlDict_.

Reimplemented in GAMGPreconditioner, and smoothSolver.

Definition at line 164 of file lduMatrixSolver.C.

References lduMatrix::solver::controlDict_, e, dictionary::lookupOrDefault(), lduMatrix::solver::maxIter_, lduMatrix::solver::relTol_, and lduMatrix::solver::tolerance_.

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

Runtime type information.

declareRunTimeSelectionTable ( autoPtr   ,
solver   ,
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   ,
solver   ,
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)    
)
Foam::autoPtr< Foam::lduMatrix::solver > 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 334 of file lduMatrix.H.

References lduMatrix::solver::fieldName_.

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

Definition at line 344 of file lduMatrix.H.

References lduMatrix::solver::interfaceBouCoeffs_.

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

Definition at line 349 of file lduMatrix.H.

References lduMatrix::solver::interfaceIntCoeffs_.

const lduInterfaceFieldPtrsList& interfaces (  ) const [inline]

Definition at line 354 of file lduMatrix.H.

References lduMatrix::solver::interfaces_.

void read ( const dictionary &   solverControls  ) [virtual]

Read and reset the solver parameters from the given stream.

Reimplemented in diagonalSolver.

Definition at line 172 of file lduMatrixSolver.C.

virtual solverPerformance solve ( scalarField &   psi,
const scalarField &   source,
const direction   cmpt = 0  
) const [pure virtual]

Implemented in diagonalSolver, GAMGSolver, PBiCG, PCG, and smoothSolver.

Foam::scalar normFactor ( const scalarField &   psi,
const scalarField &   source,
const scalarField &   Apsi,
scalarField &   tmpField  
) const

Return the matrix norm used to normalise the residual for the.

stopping criterion

Definition at line 180 of file lduMatrixSolver.C.

References Foam::gAverage(), Foam::gSum(), and Foam::mag().


Member Data Documentation

word fieldName_ [protected]

Definition at line 217 of file lduMatrix.H.

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

const lduMatrix& matrix_ [protected]

Definition at line 218 of file lduMatrix.H.

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

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

Definition at line 219 of file lduMatrix.H.

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

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

Definition at line 220 of file lduMatrix.H.

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

Definition at line 221 of file lduMatrix.H.

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

dictionary controlDict_ [protected]

dictionary of controls

Definition at line 224 of file lduMatrix.H.

Referenced by smoothSolver::readControls(), and lduMatrix::solver::readControls().

label maxIter_ [protected]

Maximum number of iterations in the solver.

Definition at line 227 of file lduMatrix.H.

Referenced by lduMatrix::solver::readControls().

scalar tolerance_ [protected]

Final convergence tolerance.

Definition at line 230 of file lduMatrix.H.

Referenced by lduMatrix::solver::readControls().

scalar relTol_ [protected]

Convergence tolerance relative to the initial.

Definition at line 233 of file lduMatrix.H.

Referenced by lduMatrix::solver::readControls().


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