Loading...
Searching...
No Matches
PBiCICG< Type, DType, LUType > Class Template Reference

Preconditioned bi-conjugate gradient solver for asymmetric lduMatrices using a run-time selectable preconditioner. More...

#include <PBiCICG.H>

Inheritance diagram for PBiCICG< Type, DType, LUType >:
Collaboration diagram for PBiCICG< Type, DType, LUType >:

Public Member Functions

 TypeName ("PBiCICG")
 Runtime type information.
 PBiCICG (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict)
 Construct from matrix components and solver data dictionary.
virtual ~PBiCICG ()=default
virtual SolverPerformance< Type > solve (Field< Type > &psi) const
 Solve the matrix with this solver.
Public Member Functions inherited from LduMatrix< Type, DType, LUType >::solver
virtual const wordtype () const =0
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, solver, symMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict),(fieldName, matrix, solverDict))
 declareRunTimeSelectionTable (autoPtr, solver, asymMatrix,(const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict),(fieldName, matrix, solverDict))
 solver (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict)
 Construct for given field name, matrix and controls.
virtual ~solver ()=default
 Destructor.
const wordfieldName () const noexcept
const LduMatrix< Type, DType, LUType > & matrix () const noexcept
virtual void read (const dictionary &)
 Read and reset the solver parameters from the given dictionary.
Type normFactor (const Field< Type > &psi, const Field< Type > &Apsi, Field< Type > &tmpField, const lduMatrix::normTypes normType) const
 Return the matrix norm using the specified norm method.
Type normFactor (const Field< Type > &psi, const Field< Type > &Apsi, Field< Type > &tmpField) const
 Return the matrix norm used to normalise the residual for the stopping criterion.

Additional Inherited Members

Static Public Member Functions inherited from LduMatrix< Type, DType, LUType >::solver
static autoPtr< solverNew (const word &fieldName, const LduMatrix< Type, DType, LUType > &matrix, const dictionary &solverDict)
 Return a new solver.
Protected Member Functions inherited from LduMatrix< Type, DType, LUType >::solver
virtual void readControls ()
 Read the control parameters from controlDict_.
template<class T>
void readControl (const dictionary &dict, T &val, const word &key)
 Deprecated(2021-09) Read control parameter from dictionary.
Protected Attributes inherited from LduMatrix< Type, DType, LUType >::solver
word fieldName_
const LduMatrix< Type, DType, LUType > & matrix_
dictionary controlDict_
 Dictionary of solution controls.
int log_
 Verbosity level for solver output statements.
label minIter_
 Minimum number of iterations in the solver.
label maxIter_
 Maximum number of iterations in the solver.
lduMatrix::normTypes normType_
 The matrix normalisation type.
Type tolerance_
 Final convergence tolerance.
Type relTol_
 Convergence tolerance relative to the initial.

Detailed Description

template<class Type, class DType, class LUType>
class Foam::PBiCICG< Type, DType, LUType >

Preconditioned bi-conjugate gradient solver for asymmetric lduMatrices using a run-time selectable preconditioner.

Source files

Definition at line 49 of file PBiCICG.H.

Constructor & Destructor Documentation

◆ PBiCICG()

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

Construct from matrix components and solver data dictionary.

Definition at line 27 of file PBiCICG.C.

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

Here is the call graph for this function:

◆ ~PBiCICG()

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

References psi.

Member Function Documentation

◆ TypeName()

template<class Type, class DType, class LUType>
TypeName ( "PBiCICG< Type, DType, LUType >" )

Runtime type information.

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

Here is the call graph for this function:

◆ solve()


The documentation for this class was generated from the following files:
  • src/OpenFOAM/matrices/LduMatrix/Solvers/PBiCICG/PBiCICG.H
  • src/OpenFOAM/matrices/LduMatrix/Solvers/PBiCICG/PBiCICG.C