OpenFOAM logo
Open Source CFD Toolkit

fvMatrix Class Template Reference

Inheritance diagram for fvMatrix:

Inheritance graph
[legend]
Collaboration diagram for fvMatrix:

Collaboration graph
[legend]
List of all members.

template<class Type>
class Foam::fvMatrix< Type >


Public Types

typedef GeometricField< Type,
fvPatchField, surfaceMesh > * 
surfaceTypeFieldPtr
 Declare return type of the faceFluxCorrectionPtr() function.

Public Member Functions

 ClassName ("fvMatrix")
 fvMatrix (GeometricField< Type, fvPatchField, volMesh > &, const dimensionSet &)
 Construct given a field to solve for.
 fvMatrix (const fvMatrix< Type > &)
 Construct as copy.
 fvMatrix (GeometricField< Type, fvPatchField, volMesh > &, Istream &)
 Construct as copy of tmp<fvMatrix<Type> > deleting argument Construct from Istream given field to solve for.
virtual ~fvMatrix ()
const GeometricField< Type,
fvPatchField, volMesh > & 
psi () const
GeometricField< Type, fvPatchField,
volMesh > & 
psi ()
const dimensionSetdimensions () const
Field< Type > & source ()
const Field< Type > & source () const
FieldField< Field, Type > & internalCoeffs ()
 fvBoundary scalar field containing pseudo-matrix coeffs
FieldField< Field, Type > & boundaryCoeffs ()
 fvBoundary scalar field containing pseudo-matrix coeffs
surfaceTypeFieldPtrfaceFluxCorrectionPtr ()
 Return pointer to face-flux non-orthogonal correction field.
void setValues (const labelList &cells, const Field< Type > &values)
 Set solution in given cells and eliminate corresponding.
void setReference (const label cell, const Type &value)
 Set reference level for solution.
void setComponentReference (const label patchi, const label facei, const direction cmpt, const scalar value)
 Set reference level for a component of the solution.
void relax (const scalar alpha)
 Relax matrix (for steady-state solution).
void relax ()
 Relax matrix (for steadty-state solution).
lduMatrix::solverPerformance solve (Istream &)
 Solve returning the solution statistics.
lduMatrix::solverPerformance solve ()
 Solve returning the solution statistics.
tmp< Field< Type > > residual () const
 Return the matrix residual.
tmp< scalarFieldD () const
 Return the matrix diagonal.
tmp< volScalarFieldA () const
 Return the central coefficient.
tmp< GeometricField< Type,
fvPatchField, volMesh > > 
H () const
 Return the H operation source.
tmp< GeometricField< Type,
fvPatchField, surfaceMesh > > 
flux () const
 Return the face-flux field from the matrix.
void operator= (const fvMatrix< Type > &)
void operator= (const tmp< fvMatrix< Type > > &)
void negate ()
void operator+= (const fvMatrix< Type > &)
void operator+= (const tmp< fvMatrix< Type > > &)
void operator-= (const fvMatrix< Type > &)
void operator-= (const tmp< fvMatrix< Type > > &)
void operator+= (const GeometricField< Type, fvPatchField, volMesh > &)
void operator+= (const tmp< GeometricField< Type, fvPatchField, volMesh > > &)
void operator-= (const GeometricField< Type, fvPatchField, volMesh > &)
void operator-= (const tmp< GeometricField< Type, fvPatchField, volMesh > > &)
void operator+= (const dimensioned< Type > &)
void operator-= (const dimensioned< Type > &)
void operator *= (const volScalarField &)
void operator *= (const tmp< volScalarField > &)
void operator *= (const dimensioned< scalar > &)
template<>
void setComponentReference (const label patchi, const label facei, const direction, const scalar value)
template<>
lduMatrix::solverPerformance solve (Istream &)
template<>
tmp< scalarFieldresidual () const
template<>
tmp< volScalarFieldH () const

Friends

tmp< GeometricField< Type,
fvPatchField, volMesh > > 
operator & (const fvMatrix< Type > &, const GeometricField< Type, fvPatchField, volMesh > &)
tmp< GeometricField< Type,
fvPatchField, volMesh > > 
operator & (const fvMatrix< Type > &, const tmp< GeometricField< Type, fvPatchField, volMesh > > &)
tmp< GeometricField< Type,
fvPatchField, volMesh > > 
operator & (const tmp< fvMatrix< Type > > &, const GeometricField< Type, fvPatchField, volMesh > &)
tmp< GeometricField< Type,
fvPatchField, volMesh > > 
operator & (const tmp< fvMatrix< Type > > &, const tmp< GeometricField< Type, fvPatchField, volMesh > > &)
Ostreamoperator (Ostream &, const fvMatrix< Type > &)

Member Typedef Documentation

typedef GeometricField<Type, fvPatchField, surfaceMesh>* surfaceTypeFieldPtr
 

Declare return type of the faceFluxCorrectionPtr() function.

Definition at line 273 of file fvMatrix.H.

Referenced by fvMatrix::internalCoeffs().


Constructor & Destructor Documentation

fvMatrix GeometricField< Type, fvPatchField, volMesh > &  ,
const dimensionSet
 

Construct given a field to solve for.

fvMatrix const fvMatrix< Type > &   ) 
 

Construct as copy.

fvMatrix GeometricField< Type, fvPatchField, volMesh > &  ,
Istream
 

Construct as copy of tmp<fvMatrix<Type> > deleting argument Construct from Istream given field to solve for.

virtual ~fvMatrix  )  [virtual]
 


Member Function Documentation

tmp<volScalarField> A  )  const
 

Return the central coefficient.

FieldField<Field, Type>& boundaryCoeffs  )  [inline]
 

fvBoundary scalar field containing pseudo-matrix coeffs

for boundary cells

Definition at line 265 of file fvMatrix.H.

ClassName "fvMatrix< Type >"   ) 
 

tmp<scalarField> D  )  const
 

Return the matrix diagonal.

const dimensionSet& dimensions  )  const [inline]
 

Definition at line 237 of file fvMatrix.H.

surfaceTypeFieldPtr& faceFluxCorrectionPtr  )  [inline]
 

Return pointer to face-flux non-orthogonal correction field.

Definition at line 276 of file fvMatrix.H.

References Foam::direction, Foam::label, and Foam::volScalarField.

tmp<GeometricField<Type, fvPatchField, surfaceMesh> > flux  )  const
 

Return the face-flux field from the matrix.

tmp< volScalarField > H  )  const
 

tmp<GeometricField<Type, fvPatchField, volMesh> > H  )  const
 

Return the H operation source.

FieldField<Field, Type>& internalCoeffs  )  [inline]
 

fvBoundary scalar field containing pseudo-matrix coeffs

for internal cells

Definition at line 256 of file fvMatrix.H.

References fvMatrix::surfaceTypeFieldPtr.

void negate  ) 
 

Reimplemented from lduMatrix.

void operator *= const dimensioned< scalar > &   ) 
 

void operator *= const tmp< volScalarField > &   ) 
 

void operator *= const volScalarField  ) 
 

void operator+= const dimensioned< Type > &   ) 
 

void operator+= const tmp< GeometricField< Type, fvPatchField, volMesh > > &   ) 
 

void operator+= const GeometricField< Type, fvPatchField, volMesh > &   ) 
 

void operator+= const tmp< fvMatrix< Type > > &   ) 
 

void operator+= const fvMatrix< Type > &   ) 
 

void operator-= const dimensioned< Type > &   ) 
 

void operator-= const tmp< GeometricField< Type, fvPatchField, volMesh > > &   ) 
 

void operator-= const GeometricField< Type, fvPatchField, volMesh > &   ) 
 

void operator-= const tmp< fvMatrix< Type > > &   ) 
 

void operator-= const fvMatrix< Type > &   ) 
 

void operator= const tmp< fvMatrix< Type > > &   ) 
 

void operator= const fvMatrix< Type > &   ) 
 

GeometricField<Type, fvPatchField, volMesh>& psi  )  [inline]
 

Definition at line 232 of file fvMatrix.H.

const GeometricField<Type, fvPatchField, volMesh>& psi  )  const [inline]
 

Definition at line 227 of file fvMatrix.H.

void relax  ) 
 

Relax matrix (for steadty-state solution).

alpha is read from controlDict

void relax const scalar  alpha  ) 
 

Relax matrix (for steady-state solution).

alpha = 1 : diagonally equal alpha < 1 : ,, dominant alpha = 0 : do nothing

tmp< scalarField > residual  )  const
 

tmp<Field<Type> > residual  )  const
 

Return the matrix residual.

void setComponentReference const label  patchi,
const label  facei,
const   direction,
const scalar  value
 

void setComponentReference const label  patchi,
const label  facei,
const direction  cmpt,
const scalar  value
 

Set reference level for a component of the solution.

on a given patch face

void setReference const label  cell,
const Type &  value
 

Set reference level for solution.

void setValues const labelList cells,
const Field< Type > &  values
 

Set solution in given cells and eliminate corresponding.

equations from the matrix

lduMatrix::solverPerformance solve Istream  ) 
 

lduMatrix::solverPerformance solve  ) 
 

Solve returning the solution statistics.

Solver controls read from fvSolution

lduMatrix::solverPerformance solve Istream  ) 
 

Solve returning the solution statistics.

Solver controls read Istream

const Field<Type>& source  )  const [inline]
 

Definition at line 247 of file fvMatrix.H.

Field<Type>& source  )  [inline]
 

Definition at line 242 of file fvMatrix.H.


Friends And Related Function Documentation

Ostream& operator Ostream ,
const fvMatrix< Type > & 
[friend]
 

tmp<GeometricField<Type,fvPatchField,volMesh> > operator & const tmp< fvMatrix< Type > > &  ,
const tmp< GeometricField< Type, fvPatchField, volMesh > > & 
[friend]
 

tmp<GeometricField<Type,fvPatchField,volMesh> > operator & const tmp< fvMatrix< Type > > &  ,
const GeometricField< Type, fvPatchField, volMesh > & 
[friend]
 

tmp<GeometricField<Type,fvPatchField,volMesh> > operator & const fvMatrix< Type > &  ,
const tmp< GeometricField< Type, fvPatchField, volMesh > > & 
[friend]
 

tmp<GeometricField<Type,fvPatchField,volMesh> > operator & const fvMatrix< Type > &  ,
const GeometricField< Type, fvPatchField, volMesh > & 
[friend]
 


The documentation for this class was generated from the following file:
For further information go to www.openfoam.org