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

DICPreconditioner Class Reference

Simplified diagonal-based incomplete Cholesky preconditioner for symmetric matrices (symmetric equivalent of DILU). The reciprocal of the preconditioned diagonal is calculated and stored. More...

#include <OpenFOAM/DICPreconditioner.H>


Detailed Description

Simplified diagonal-based incomplete Cholesky preconditioner for symmetric matrices (symmetric equivalent of DILU). The reciprocal of the preconditioned diagonal is calculated and stored.

Source files

Definition at line 51 of file DICPreconditioner.H.

Inheritance diagram for DICPreconditioner:
Collaboration diagram for DICPreconditioner:

List of all members.

Public Member Functions

 TypeName ("DIC")
 Runtime type information.
 DICPreconditioner (const lduMatrix::solver &, const dictionary &solverControlsUnused)
 Construct from matrix components and preconditioner solver controls.
virtual  ~DICPreconditioner ()
virtual void  precondition (scalarField &wA, const scalarField &rA, const direction cmpt=0) const
 Return wA the preconditioned form of residual rA.

Static Public Member Functions

static void  calcReciprocalD (scalarField &rD, const lduMatrix &matrix)
 Calculate the reciprocal of the preconditioned diagonal.

Constructor & Destructor Documentation

DICPreconditioner ( const lduMatrix::solver &   sol,
const dictionary &   solverControlsUnused  
)

Construct from matrix components and preconditioner solver controls.

Definition at line 43 of file DICPreconditioner.C.

References lduMatrix::solver::matrix().

virtual ~DICPreconditioner (  ) [inline, virtual]

Definition at line 79 of file DICPreconditioner.H.


Member Function Documentation

TypeName ( "DIC"    )

Runtime type information.

void calcReciprocalD ( scalarField &   rD,
const lduMatrix &   matrix  
) [static]

Calculate the reciprocal of the preconditioned diagonal.

Definition at line 58 of file DICPreconditioner.C.

References UList< T >::begin(), lduMatrix::lduAddr(), lduAddressing::lowerAddr(), List< T >::size(), lduMatrix::upper(), and lduAddressing::upperAddr().

void precondition ( scalarField &   wA,
const scalarField &   rA,
const direction   cmpt = 0  
) const [virtual]

Return wA the preconditioned form of residual rA.

Implements lduMatrix::preconditioner.

Definition at line 88 of file DICPreconditioner.C.

References UList< T >::begin(), and List< T >::size().


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