Public Member Functions | List of all members
mixedFvPatchField< Type > Class Template Reference

This boundary condition provides a base class for 'mixed' type boundary conditions, i.e. conditions that mix fixed value and patch-normal gradient conditions. More...

Inheritance diagram for mixedFvPatchField< Type >:
Inheritance graph
[legend]
Collaboration diagram for mixedFvPatchField< Type >:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("mixed")
 
 mixedFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &)
 
 mixedFvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
 
 mixedFvPatchField (const mixedFvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
 mixedFvPatchField (const mixedFvPatchField< Type > &)
 
virtual tmp< fvPatchField< Type > > clone () const
 
 mixedFvPatchField (const mixedFvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 
virtual tmp< fvPatchField< Type > > clone (const DimensionedField< Type, volMesh > &iF) const
 
virtual bool fixesValue () const
 
virtual bool assignable () const
 
virtual Field< Type > & refValue ()
 
virtual const Field< Type > & refValue () const
 
virtual Field< Type > & refGrad ()
 
virtual const Field< Type > & refGrad () const
 
virtual scalarFieldvalueFraction ()
 
virtual const scalarFieldvalueFraction () const
 
virtual Field< Type > & source ()
 
virtual const Field< Type > & source () const
 
virtual void autoMap (const fvPatchFieldMapper &)
 
virtual void rmap (const fvPatchField< Type > &, const labelList &)
 
virtual tmp< Field< Type > > snGrad () const
 
virtual void evaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 
virtual tmp< Field< Type > > valueInternalCoeffs (const tmp< scalarField > &) const
 
virtual tmp< Field< Type > > valueBoundaryCoeffs (const tmp< scalarField > &) const
 
virtual tmp< Field< Type > > gradientInternalCoeffs () const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs () const
 
virtual void write (Ostream &) const
 
virtual void operator= (const UList< Type > &)
 
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 &)
 
virtual void operator+= (const Type &)
 
virtual void operator-= (const Type &)
 
virtual void operator*= (const scalar)
 
virtual void operator/= (const scalar)
 
- Public Member Functions inherited from fvPatchField< Type >
 TypeName ("fvPatchField")
 
 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 > &)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Type &value)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const word &patchType)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const Field< Type > &)
 
 fvPatchField (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &, const bool valueRequired=true)
 
 fvPatchField (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
 fvPatchField (const fvPatchField< Type > &)
 
 fvPatchField (const fvPatchField< Type > &, const DimensionedField< Type, volMesh > &)
 
virtual tmp< fvPatchField< Type > > clone () const
 
Foam::tmp< Foam::fvPatchField< Type > > NewCalculatedType (const fvPatch &p)
 
Foam::tmp< Foam::fvPatchField< Type > > NewCalculatedType (const fvPatchField< Type2 > &pf)
 
virtual ~fvPatchField ()=default
 
bool useImplicit () const noexcept
 
bool useImplicit (bool on) noexcept
 
virtual bool fixesValue () const
 
virtual bool assignable () const
 
virtual bool coupled () const
 
const objectRegistrydb () const
 
const fvPatchpatch () const
 
const DimensionedField< Type, volMesh > & internalField () const
 
const Field< Type > & primitiveField () const
 
const wordpatchType () const
 
wordpatchType ()
 
bool updated () const
 
bool manipulatedMatrix () const
 
virtual tmp< Field< Type > > snGrad () const
 
virtual tmp< Field< Type > > snGrad (const scalarField &deltaCoeffs) const
 
virtual void updateCoeffs ()
 
virtual void updateWeightedCoeffs (const scalarField &weights)
 
virtual tmp< Field< Type > > patchInternalField () const
 
virtual void patchInternalField (Field< Type > &) const
 
virtual tmp< Field< Type > > patchNeighbourField () const
 
virtual void initEvaluate (const Pstream::commsTypes commsType=Pstream::commsTypes::blocking)
 
virtual tmp< Field< Type > > valueInternalCoeffs (const tmp< Field< scalar >> &) const
 
virtual tmp< Field< Type > > valueBoundaryCoeffs (const tmp< Field< scalar >> &) const
 
virtual tmp< Field< Type > > gradientInternalCoeffs () const
 
virtual tmp< Field< Type > > gradientInternalCoeffs (const scalarField &deltaCoeffs) const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs () const
 
virtual tmp< Field< Type > > gradientBoundaryCoeffs (const scalarField &deltaCoeffs) const
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix)
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix, const scalarField &weights)
 
virtual void manipulateMatrix (fvMatrix< Type > &matrix, const label iMatrix, const direction cmp)
 
void check (const fvPatchField< Type > &) const
 
virtual void operator== (const fvPatchField< Type > &)
 
virtual void operator== (const Field< Type > &)
 
virtual void operator== (const Type &)
 

Additional Inherited Members

- Public Types inherited from fvPatchField< Type >
typedef fvPatch Patch
 
typedef calculatedFvPatchField< Type > Calculated
 
- Static Public Member Functions inherited from fvPatchField< Type >
static tmp< fvPatchField< Type > > New (const word &, const fvPatch &, const DimensionedField< Type, volMesh > &)
 
static tmp< fvPatchField< Type > > New (const word &, const word &actualPatchType, const fvPatch &, const DimensionedField< Type, volMesh > &)
 
static tmp< fvPatchField< Type > > New (const fvPatchField< Type > &, const fvPatch &, const DimensionedField< Type, volMesh > &, const fvPatchFieldMapper &)
 
static tmp< fvPatchField< Type > > New (const fvPatch &, const DimensionedField< Type, volMesh > &, const dictionary &)
 
static tmp< fvPatchField< Type > > NewCalculatedType (const fvPatch &)
 
static tmp< fvPatchField< Type > > NewCalculatedType (const fvPatchField< Type2 > &)
 
static const wordcalculatedType ()
 
- Static Public Attributes inherited from fvPatchField< Type >
static int disallowGenericFvPatchField
 

Detailed Description

template<class Type>
class Foam::mixedFvPatchField< Type >

This boundary condition provides a base class for 'mixed' type boundary conditions, i.e. conditions that mix fixed value and patch-normal gradient conditions.

The respective contributions from each is determined by a weight field:

\[ x_p = w x_p + (1-w) \left(x_c + \frac{\nabla_\perp x}{\Delta}\right) \]

where

$ x_p $ = patch values
$ x_c $ = patch internal cell values
$ \Delta$ = inverse distance from face centre to internal cell centre
$ w $ = weighting values (0-1)
Usage
Property Description Required Default
refValue fixed value yes
refGradient patch normal gradient yes
valueFraction value weighting (0-1) yes
Note
This condition is not usually applied directly; instead, use a derived mixed condition such as inletOutlet
See also
Foam::inletOutletFvPatchField
Source files

Definition at line 119 of file mixedFvPatchField.H.

Constructor & Destructor Documentation

◆ mixedFvPatchField() [1/5]

mixedFvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF 
)

Definition at line 27 of file mixedFvPatchField.C.

◆ mixedFvPatchField() [2/5]

mixedFvPatchField ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const dictionary dict 
)

Definition at line 42 of file mixedFvPatchField.C.

◆ mixedFvPatchField() [3/5]

mixedFvPatchField ( const mixedFvPatchField< Type > &  ptf,
const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const fvPatchFieldMapper mapper 
)

Definition at line 61 of file mixedFvPatchField.C.

◆ mixedFvPatchField() [4/5]

mixedFvPatchField ( const mixedFvPatchField< Type > &  ptf)

Definition at line 88 of file mixedFvPatchField.C.

◆ mixedFvPatchField() [5/5]

mixedFvPatchField ( const mixedFvPatchField< Type > &  ptf,
const DimensionedField< Type, volMesh > &  iF 
)

Definition at line 102 of file mixedFvPatchField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "mixed"  )

◆ clone() [1/2]

virtual tmp<fvPatchField<Type> > clone ( ) const
inlinevirtual

◆ clone() [2/2]

virtual tmp<fvPatchField<Type> > clone ( const DimensionedField< Type, volMesh > &  iF) const
inlinevirtual

◆ fixesValue()

virtual bool fixesValue ( ) const
inlinevirtual

Definition at line 212 of file mixedFvPatchField.H.

◆ assignable()

virtual bool assignable ( ) const
inlinevirtual

◆ refValue() [1/2]

virtual Field<Type>& refValue ( )
inlinevirtual

Definition at line 226 of file mixedFvPatchField.H.

Referenced by freestreamFvPatchField< Type >::freestreamValue(), and codedMixedFvPatchField< Type >::updateCoeffs().

Here is the caller graph for this function:

◆ refValue() [2/2]

virtual const Field<Type>& refValue ( ) const
inlinevirtual

Definition at line 231 of file mixedFvPatchField.H.

◆ refGrad() [1/2]

virtual Field<Type>& refGrad ( )
inlinevirtual

Definition at line 236 of file mixedFvPatchField.H.

Referenced by codedMixedFvPatchField< Type >::updateCoeffs().

Here is the caller graph for this function:

◆ refGrad() [2/2]

virtual const Field<Type>& refGrad ( ) const
inlinevirtual

Definition at line 241 of file mixedFvPatchField.H.

◆ valueFraction() [1/2]

virtual scalarField& valueFraction ( )
inlinevirtual

Definition at line 246 of file mixedFvPatchField.H.

Referenced by codedMixedFvPatchField< Type >::updateCoeffs().

Here is the caller graph for this function:

◆ valueFraction() [2/2]

virtual const scalarField& valueFraction ( ) const
inlinevirtual

Definition at line 251 of file mixedFvPatchField.H.

◆ source() [1/2]

virtual Field<Type>& source ( )
inlinevirtual

Definition at line 256 of file mixedFvPatchField.H.

Referenced by mixedEnergyFvPatchScalarField::manipulateMatrix().

Here is the caller graph for this function:

◆ source() [2/2]

virtual const Field<Type>& source ( ) const
inlinevirtual

Definition at line 261 of file mixedFvPatchField.H.

◆ autoMap()

void autoMap ( const fvPatchFieldMapper m)
virtual

◆ rmap()

void rmap ( const fvPatchField< Type > &  ptf,
const labelList addr 
)
virtual

◆ snGrad()

Foam::tmp< Foam::Field< Type > > snGrad
virtual

Definition at line 175 of file mixedFvPatchField.C.

◆ evaluate()

void evaluate ( const Pstream::commsTypes  commsType = Pstream::commsTypes::blocking)
virtual

Reimplemented from fvPatchField< Type >.

Reimplemented in codedMixedFvPatchField< Type >.

Definition at line 151 of file mixedFvPatchField.C.

◆ valueInternalCoeffs()

Foam::tmp< Foam::Field< Type > > valueInternalCoeffs ( const tmp< scalarField > &  ) const
virtual

Definition at line 188 of file mixedFvPatchField.C.

◆ valueBoundaryCoeffs()

Foam::tmp< Foam::Field< Type > > valueBoundaryCoeffs ( const tmp< scalarField > &  ) const
virtual

Definition at line 199 of file mixedFvPatchField.C.

◆ gradientInternalCoeffs()

Foam::tmp< Foam::Field< Type > > gradientInternalCoeffs
virtual

Definition at line 211 of file mixedFvPatchField.C.

◆ gradientBoundaryCoeffs()

Foam::tmp< Foam::Field< Type > > gradientBoundaryCoeffs
virtual

Definition at line 219 of file mixedFvPatchField.C.

◆ write()

void write ( Ostream os) const
virtual

◆ operator=() [1/3]

virtual void operator= ( const UList< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 324 of file mixedFvPatchField.H.

◆ operator=() [2/3]

virtual void operator= ( const fvPatchField< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Reimplemented in uniformInletOutletFvPatchField< Type >, and inletOutletFvPatchField< Type >.

Definition at line 326 of file mixedFvPatchField.H.

◆ operator+=() [1/3]

virtual void operator+= ( const fvPatchField< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 327 of file mixedFvPatchField.H.

◆ operator-=() [1/3]

virtual void operator-= ( const fvPatchField< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 328 of file mixedFvPatchField.H.

◆ operator*=() [1/3]

virtual void operator*= ( const fvPatchField< scalar > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 329 of file mixedFvPatchField.H.

◆ operator/=() [1/3]

virtual void operator/= ( const fvPatchField< scalar > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 330 of file mixedFvPatchField.H.

◆ operator+=() [2/3]

virtual void operator+= ( const Field< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 332 of file mixedFvPatchField.H.

◆ operator-=() [2/3]

virtual void operator-= ( const Field< Type > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 333 of file mixedFvPatchField.H.

◆ operator*=() [2/3]

virtual void operator*= ( const Field< scalar > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 335 of file mixedFvPatchField.H.

◆ operator/=() [2/3]

virtual void operator/= ( const Field< scalar > &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 336 of file mixedFvPatchField.H.

◆ operator=() [3/3]

virtual void operator= ( const Type &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 338 of file mixedFvPatchField.H.

◆ operator+=() [3/3]

virtual void operator+= ( const Type &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 339 of file mixedFvPatchField.H.

◆ operator-=() [3/3]

virtual void operator-= ( const Type &  )
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 340 of file mixedFvPatchField.H.

◆ operator*=() [3/3]

virtual void operator*= ( const  scalar)
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 341 of file mixedFvPatchField.H.

◆ operator/=() [3/3]

virtual void operator/= ( const  scalar)
inlinevirtual

Reimplemented from fvPatchField< Type >.

Definition at line 342 of file mixedFvPatchField.H.


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