OpenFOAM logo
The Open Source CFD Toolbox
  Source Guide OpenCFD Solutions Contact OpenFOAM

fvPatchField< Type > Class Template Reference

Abstract base class with a fat-interface to all derived classes covering all possible ways in which they might be used. More...

Inheritance diagram for fvPatchField< Type >:
Collaboration diagram for fvPatchField< Type >:

List of all members.


Public Types

typedef fvPatch Patch

Public Member Functions

 TypeName ("fvPatchField")
 Runtime type information.
 declareRunTimeSelectionTable (tmp, fvPatchField, patch,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF),(p, iF))
 declareRunTimeSelectionTable (tmp, fvPatchField, patchMapper,(const fvPatchField< Type > &ptf, const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const fvPatchFieldMapper &m),(dynamic_cast< const fvPatchFieldType & >(ptf), p, iF, m))
 declareRunTimeSelectionTable (tmp, fvPatchField, dictionary,(const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const dictionary &dict),(p, iF, dict))
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &)
 Construct from patch and internal field.
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Field< Type > &)
 Construct from patch and internal field and patch field.
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &, const bool valueRequired=false)
 Construct from patch, internal field and dictionary.
 fvPatchField (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping the given fvPatchField onto a new patch.
 fvPatchField (const fvPatchField< Type > &)
 Construct as copy.
virtual tmp< fvPatchField< Type > > clone () const
 Construct and return a clone.
 fvPatchField (const fvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 Construct as copy setting internal field reference.
virtual tmp< fvPatchField< Type > > clone (const DimensionedField< Type, volMesh > &iF) const
 Construct and return a clone setting internal field reference.
virtual ~fvPatchField ()
const objectRegistrydb () const
 Return local objectRegistry.
const fvPatchpatch () const
 Return patch.
const DimensionedField< Type,
volMesh > & 
dimensionedInternalField () const
 Return dimensioned internal field reference.
const Field< Type > & internalField () const
 Return internal field reference.
virtual bool fixesValue () const
 Return true if this patch field fixes a value.
virtual bool coupled () const
 Return true if this patch field is coupled.
bool updated () const
 Return true if the boundary condition has already been updated.
virtual void autoMap (const fvPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object.
virtual void rmap (const fvPatchField< Type > &, const labelList &)
 Reverse map the given fvPatchField onto this fvPatchField.
virtual tmp< Field< Type > > snGrad () const
 Return patch-normal gradient.
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field.
virtual tmp< Field< Type > > patchInternalField () const
 Return internal field next to patch as patch field.
virtual tmp< Field< Type > > patchNeighbourField () const
 Return patchField on the opposite patch of a coupled patch.
virtual void initEvaluate (const Pstream::commsTypes commsType=Pstream::blocking)
 Initialise the evaluation of the patch field.
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::blocking)
 Evaluate the patch field, sets Updated to false.
virtual tmp< Field< Type > > valueInternalCoeffs (const tmp< Field< scalar > > &) const
 Return the matrix diagonal coefficients corresponding to the.
virtual tmp< Field< Type > > valueBoundaryCoeffs (const tmp< Field< scalar > > &) const
 Return the matrix source coefficients corresponding to the.
virtual tmp< Field< Type > > gradientInternalCoeffs () const
 Return the matrix diagonal coefficients corresponding to the.
virtual tmp< Field< Type > > gradientBoundaryCoeffs () const
 Return the matrix source coefficients corresponding to the.
virtual void manipulateMatrix (fvMatrix< Type > &matrix)
 Manipulate matrix.
virtual void write (Ostream &) const
 Write.
template<class EntryType >
void writeEntryIfDifferent (Ostream &os, const word &entryName, const EntryType &value1, const EntryType &value2) const
 Helper function to write the keyword and entry only if the.
void check (const fvPatchField< Type > &) const
 Check fvPatchField<Type> against given fvPatchField<Type>.
virtual void operator= (const UList< Type > &)
 Assignment from UList operator. Takes linear time.
virtual void operator= (const fvPatchField< Type > &)
virtual void operator+= (const fvPatchField< Type > &)
virtual void operator-= (const fvPatchField< Type > &)
virtual void operator*= (const fvPatchField< scalar > &)
virtual void operator/= (const fvPatchField< scalar > &)
virtual void operator+= (const Field< Type > &)
virtual void operator-= (const Field< Type > &)
virtual void operator*= (const Field< scalar > &)
virtual void operator/= (const Field< scalar > &)
virtual void operator= (const Type &)
 Assignment of all entries to the given value.
virtual void operator+= (const Type &)
virtual void operator-= (const Type &)
virtual void operator*= (const scalar)
virtual void operator/= (const scalar)
virtual void operator== (const fvPatchField< Type > &)
virtual void operator== (const Field< Type > &)
virtual void operator== (const Type &)

Static Public Member Functions

static tmp< fvPatchField< Type > > New (const word &, const fvPatch &, const DimensionedField< Type, volMesh > &)
 Return a pointer to a new patchField created on freestore given.
static tmp< fvPatchField< Type > > New (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 Return a pointer to a new patchField created on freestore from.
static tmp< fvPatchField< Type > > New (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
 Return a pointer to a new patchField created on freestore.
template<class Type2 >
static tmp< fvPatchField< Type > > NewCalculatedType (const fvPatchField< Type2 > &)
 Return a pointer to a new calculatedFvPatchField created on.
static const wordcalculatedType ()
 Return the type of the calculated for of fvPatchField.

Static Public Attributes

static int disallowGenericFvPatchField
 Debug switch to disallow the use of genericFvPatchField.

Friends

Ostreamoperator (Ostream &, const fvPatchField< Type > &)

Detailed Description

template<class Type>
class Foam::fvPatchField< Type >

Abstract base class with a fat-interface to all derived classes covering all possible ways in which they might be used.

The first level of derivation is to basic patchFields which cover zero-gradient, fixed-gradient, fixed-value and mixed conditions.

The next level of derivation covers all the specialised types with specific evaluation proceedures, particularly with respect to specific fields.

Source files

Definition at line 75 of file fvPatchField.H.


Member Typedef Documentation

typedef fvPatch Patch

Definition at line 103 of file fvPatchField.H.


Constructor & Destructor Documentation

fvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF 
) [inline]

Construct from patch and internal field.

Definition at line 28 of file fvPatchField.C.

fvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const Field< Type > &  f 
) [inline]

Construct from patch and internal field and patch field.

Definition at line 43 of file fvPatchField.C.

fvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const dictionary dict,
const bool  valueRequired = false 
) [inline]

Construct from patch, internal field and dictionary.

Definition at line 76 of file fvPatchField.C.

fvPatchField ( const fvPatchField< Type > &  ptf,
const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const fvPatchFieldMapper mapper 
) [inline]

Construct by mapping the given fvPatchField onto a new patch.

Definition at line 59 of file fvPatchField.C.

fvPatchField ( const fvPatchField< Type > &  ptf  )  [inline]

Construct as copy.

Definition at line 120 of file fvPatchField.C.

fvPatchField ( const fvPatchField< Type > &  ptf,
const DimensionedField< Type, volMesh > &  iF 
) [inline]

Construct as copy setting internal field reference.

Definition at line 134 of file fvPatchField.C.

virtual ~fvPatchField (  )  [inline, virtual]


Member Function Documentation

TypeName ( "fvPatchField< Type >"   ) 

Runtime type information.

declareRunTimeSelectionTable ( tmp  ,
fvPatchField< Type ,
patch  ,
(const fvPatch &p, const DimensionedField< Type, volMesh > &iF)  ,
(p, iF)   
)

declareRunTimeSelectionTable ( tmp  ,
fvPatchField< Type ,
patchMapper  ,
(const fvPatchField< Type > &ptf, const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const fvPatchFieldMapper &m)  ,
(dynamic_cast< const fvPatchFieldType & >(ptf), p, iF, m)   
)

declareRunTimeSelectionTable ( tmp  ,
fvPatchField< Type ,
dictionary  ,
(const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const dictionary &dict)  ,
(p, iF, dict)   
)

virtual tmp<fvPatchField<Type> > clone (  )  const [inline, virtual]

Construct and return a clone.

Reimplemented from Field< Type >.

Reimplemented in basicSymmetryFvPatchField< Type >, calculatedFvPatchField< Type >, coupledFvPatchField< Type >, directionMixedFvPatchField< Type >, fixedGradientFvPatchField< Type >, fixedValueFvPatchField< Type >, genericFvPatchField< Type >, mixedFvPatchField< Type >, slicedFvPatchField< Type >, transformFvPatchField< Type >, zeroGradientFvPatchField< Type >, cyclicFvPatchField< Type >, emptyFvPatchField< Type >, processorFvPatchField< Type >, symmetryFvPatchField< Type >, wedgeFvPatchField< Type >, advectiveFvPatchField< Type >, directMappedFixedValueFvPatchField< Type >, expDirectionMixedFvPatchField< Type >, fanFvPatchField< Type >, fixedInternalValueFvPatchField< Type >, fixedNormalSlipFvPatchField< Type >, freestreamFvPatchField< Type >, inletOutletFvPatchField< Type >, oscillatingFixedValueFvPatchField< Type >, outletInletFvPatchField< Type >, partialSlipFvPatchField< Type >, slipFvPatchField< Type >, timeVaryingMappedFixedValueFvPatchField< Type >, timeVaryingUniformFixedValueFvPatchField< Type >, turbulentInletFvPatchField< Type >, uniformFixedValueFvPatchField< Type >, waveTransmissiveFvPatchField< Type >, cellMotionFvPatchField< Type >, surfaceSlipDisplacementFvPatchField< Type >, epsilonWallFunctionFvPatchScalarField, kqRWallFunctionFvPatchField< Type >, omegaWallFunctionFvPatchScalarField, epsilonWallFunctionFvPatchScalarField, kqRWallFunctionFvPatchField< Type >, omegaWallFunctionFvPatchScalarField, mixedFixedValueSlipFvPatchField< Type >, basicSymmetryFvPatchField< Type >, calculatedFvPatchField< Type >, coupledFvPatchField< Type >, fixedValueFvPatchField< Type >, mixedFvPatchField< Type >, transformFvPatchField< Type >, zeroGradientFvPatchField< scalar >, zeroGradientFvPatchField< Type >, cyclicFvPatchField< Type >, advectiveFvPatchField< Type >, fixedInternalValueFvPatchField< scalar >, inletOutletFvPatchField< Type >, and slipFvPatchField< Type >.

Definition at line 194 of file fvPatchField.H.

virtual tmp<fvPatchField<Type> > clone ( const DimensionedField< Type, volMesh > &  iF  )  const [inline, virtual]

Construct and return a clone setting internal field reference.

Reimplemented in basicSymmetryFvPatchField< Type >, calculatedFvPatchField< Type >, coupledFvPatchField< Type >, directionMixedFvPatchField< Type >, fixedGradientFvPatchField< Type >, fixedValueFvPatchField< Type >, genericFvPatchField< Type >, mixedFvPatchField< Type >, slicedFvPatchField< Type >, transformFvPatchField< Type >, zeroGradientFvPatchField< Type >, cyclicFvPatchField< Type >, emptyFvPatchField< Type >, processorFvPatchField< Type >, symmetryFvPatchField< Type >, wedgeFvPatchField< Type >, advectiveFvPatchField< Type >, directMappedFixedValueFvPatchField< Type >, expDirectionMixedFvPatchField< Type >, fanFvPatchField< Type >, fixedInternalValueFvPatchField< Type >, fixedNormalSlipFvPatchField< Type >, freestreamFvPatchField< Type >, inletOutletFvPatchField< Type >, oscillatingFixedValueFvPatchField< Type >, outletInletFvPatchField< Type >, partialSlipFvPatchField< Type >, slipFvPatchField< Type >, timeVaryingMappedFixedValueFvPatchField< Type >, timeVaryingUniformFixedValueFvPatchField< Type >, turbulentInletFvPatchField< Type >, uniformFixedValueFvPatchField< Type >, waveTransmissiveFvPatchField< Type >, cellMotionFvPatchField< Type >, surfaceSlipDisplacementFvPatchField< Type >, epsilonWallFunctionFvPatchScalarField, kqRWallFunctionFvPatchField< Type >, omegaWallFunctionFvPatchScalarField, epsilonWallFunctionFvPatchScalarField, kqRWallFunctionFvPatchField< Type >, omegaWallFunctionFvPatchScalarField, mixedFixedValueSlipFvPatchField< Type >, basicSymmetryFvPatchField< Type >, calculatedFvPatchField< Type >, coupledFvPatchField< Type >, fixedValueFvPatchField< Type >, mixedFvPatchField< Type >, transformFvPatchField< Type >, zeroGradientFvPatchField< scalar >, zeroGradientFvPatchField< Type >, cyclicFvPatchField< Type >, advectiveFvPatchField< Type >, fixedInternalValueFvPatchField< scalar >, inletOutletFvPatchField< Type >, and slipFvPatchField< Type >.

Definition at line 208 of file fvPatchField.H.

Foam::tmp< Foam::fvPatchField< Type > > New ( const word patchFieldType,
const fvPatch p,
const DimensionedField< Type, volMesh > &  iF 
) [inline, static]

Return a pointer to a new patchField created on freestore given.

patch and internal field (does not set the patch field values)

Definition at line 22 of file newFvPatchField.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorIn, and Foam::Info.

Here is the call graph for this function:

Foam::tmp< Foam::fvPatchField< Type > > New ( const fvPatchField< Type > &  ptf,
const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const fvPatchFieldMapper pfMapper 
) [inline, static]

Return a pointer to a new patchField created on freestore from.

a given fvPatchField mapped onto a new patch

Definition at line 144 of file newFvPatchField.C.

Foam::tmp< Foam::fvPatchField< Type > > New ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const dictionary dict 
) [inline, static]

Return a pointer to a new patchField created on freestore.

from dictionary

Definition at line 68 of file newFvPatchField.C.

tmp< fvPatchField< Type > > NewCalculatedType ( const fvPatchField< Type2 > &  pf  )  [inline, static]

Return a pointer to a new calculatedFvPatchField created on.

freestore without setting patchField values

Definition at line 95 of file calculatedFvPatchField.C.

const Foam::objectRegistry & db (  )  const [inline]

Return local objectRegistry.

Definition at line 150 of file fvPatchField.C.

const fvPatch& patch (  )  const [inline]

Return patch.

Definition at line 278 of file fvPatchField.H.

const DimensionedField<Type, volMesh>& dimensionedInternalField (  )  const [inline]

Return dimensioned internal field reference.

Definition at line 285 of file fvPatchField.H.

const Field<Type>& internalField (  )  const [inline]

Return internal field reference.

Definition at line 291 of file fvPatchField.H.

const word & calculatedType (  )  [inline, static]

Return the type of the calculated for of fvPatchField.

Definition at line 27 of file calculatedFvPatchField.C.

virtual bool fixesValue (  )  const [inline, virtual]

Return true if this patch field fixes a value.

Needed to check if a level has to be specified while solving Poissons equations.

Reimplemented in calculatedFvPatchField< Type >, directionMixedFvPatchField< Type >, fixedValueFvPatchField< Type >, mixedFvPatchField< Type >, slicedFvPatchField< Type >, calculatedFvPatchField< Type >, fixedValueFvPatchField< Type >, and mixedFvPatchField< Type >.

Definition at line 304 of file fvPatchField.H.

Referenced by Foam::fv::makeFvGradScheme().

Here is the caller graph for this function:

virtual bool coupled (  )  const [inline, virtual]

Return true if this patch field is coupled.

Reimplemented in coupledFvPatchField< Type >, processorFvPatchField< Type >, and coupledFvPatchField< Type >.

Definition at line 310 of file fvPatchField.H.

Referenced by Foam::fv::makeFvGradScheme().

Here is the caller graph for this function:

bool updated (  )  const [inline]

Return true if the boundary condition has already been updated.

Definition at line 316 of file fvPatchField.H.

Foam::tmp< Foam::Field< Type > > patchInternalField (  )  const [inline, virtual]

Return internal field next to patch as patch field.

Reimplemented in slicedFvPatchField< Type >.

Definition at line 179 of file fvPatchField.C.

References fvPatch::deltaCoeffs().

Referenced by mutSpalartAllmarasWallFunctionFvPatchScalarField::calcUTau().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual tmp<Field<Type> > patchNeighbourField (  )  const [inline, virtual]

Return patchField on the opposite patch of a coupled patch.

Reimplemented in coupledFvPatchField< Type >, slicedFvPatchField< Type >, cyclicFvPatchField< Type >, jumpCyclicFvPatchField< Type >, processorFvPatchField< Type >, coupledFvPatchField< Type >, cyclicFvPatchField< Type >, and jumpCyclicFvPatchField< Type >.

Definition at line 356 of file fvPatchField.H.

Referenced by Foam::fv::makeFvGradScheme().

Here is the caller graph for this function:

virtual void initEvaluate ( const Pstream::commsTypes  commsType = Pstream::blocking  )  [inline, virtual]

Initialise the evaluation of the patch field.

Reimplemented in coupledFvPatchField< Type >, slicedFvPatchField< Type >, processorFvPatchField< Type >, and coupledFvPatchField< Type >.

Definition at line 364 of file fvPatchField.H.

virtual tmp<Field<Type> > valueInternalCoeffs ( const tmp< Field< scalar > > &   )  const [inline, virtual]

Return the matrix diagonal coefficients corresponding to the.

evaluation of the value of this patchField with given weights

Definition at line 381 of file fvPatchField.H.

virtual tmp<Field<Type> > valueBoundaryCoeffs ( const tmp< Field< scalar > > &   )  const [inline, virtual]

Return the matrix source coefficients corresponding to the.

evaluation of the value of this patchField with given weights

Definition at line 398 of file fvPatchField.H.

void manipulateMatrix ( fvMatrix< Type > &  matrix  )  [inline, virtual]

Manipulate matrix.

Reimplemented in fixedInternalValueFvPatchField< Type >, and fixedInternalValueFvPatchField< scalar >.

Definition at line 219 of file fvPatchField.C.

References fvPatchField< Type >::updateCoeffs().

Here is the call graph for this function:

void writeEntryIfDifferent ( Ostream os,
const word entryName,
const EntryType &  value1,
const EntryType &  value2 
) const [inline]

Helper function to write the keyword and entry only if the.

values are not equal. The value is then output as value2

Definition at line 241 of file fvPatchField.C.

void check ( const fvPatchField< Type > &  ptf  )  const [inline]

Check fvPatchField<Type> against given fvPatchField<Type>.

Definition at line 157 of file fvPatchField.C.

References fvPatch::boundaryMesh(), and fvBoundaryMesh::mesh().

Here is the call graph for this function:

void operator= ( const Type  )  [inline, virtual]

void operator== ( const fvPatchField< Type > &  ptf  )  [inline, virtual]

Definition at line 431 of file fvPatchField.C.

References Field< Type >::operator/=().

Referenced by uniformFixedValueFvPatchField< Type >::autoMap(), and uniformFixedValueFvPatchField< Type >::uniformFixedValueFvPatchField().

Here is the call graph for this function:

Here is the caller graph for this function:

void operator== ( const Field< Type > &  tf  )  [inline, virtual]

Definition at line 441 of file fvPatchField.C.

References Field< Type >::operator=().

Here is the call graph for this function:

void operator== ( const Type t  )  [inline, virtual]

Definition at line 451 of file fvPatchField.C.

References Field< Type >::operator=(), and tf.

Here is the call graph for this function:


Friends And Related Function Documentation

Ostream& operator ( Ostream ,
const fvPatchField< Type > &   
) [friend]


Member Data Documentation

int disallowGenericFvPatchField [inline, static]

Debug switch to disallow the use of genericFvPatchField.

Definition at line 110 of file fvPatchField.H.


The documentation for this class was generated from the following files:
Copyright © 2000-2009 OpenCFD Ltd