turbulentTemperatureCoupledBaffleMixedFvPatchScalarField Class Reference

Mixed boundary condition for temperature, to be used for heat-transfer on back-to-back baffles. Optional thin thermal layer resistances can be specified through thicknessLayers and kappaLayers entries. More...

Inheritance diagram for turbulentTemperatureCoupledBaffleMixedFvPatchScalarField:
[legend]
Collaboration diagram for turbulentTemperatureCoupledBaffleMixedFvPatchScalarField:
[legend]

Public Member Functions

 TypeName ("compressible::turbulentTemperatureCoupledBaffleMixed")
 Runtime type information. More...
 
 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField (const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField (const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField &)
 Construct as copy setting internal field reference. More...
 
virtual tmp< fvPatchScalarFieldclone () const
 Construct and return a clone. More...
 
 turbulentTemperatureCoupledBaffleMixedFvPatchScalarField (const turbulentTemperatureCoupledBaffleMixedFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Construct as copy setting internal field reference. More...
 
virtual tmp< fvPatchScalarFieldclone (const DimensionedField< scalar, volMesh > &iF) const
 Construct and return a clone setting internal field reference. More...
 
virtual void autoMap (const fvPatchFieldMapper &)
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const fvPatchField< scalar > &, const labelList &)
 Reverse map the given fvPatchField onto this fvPatchField. More...
 
virtual tmp< scalarFieldkappa (const scalarField &Tp) const
 
virtual void updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void manipulateMatrix (fvMatrix< scalar > &m, const label iMatrix, const direction cmpt)
 Manipulate matrix. More...
 
virtual void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from temperatureCoupledBase
 temperatureCoupledBase (const fvPatch &patch, const word &calculationMethod, const word &kappaName, const word &alphaAniName, const word &alphaName)
 Construct from patch and K name. More...
 
 temperatureCoupledBase (const fvPatch &patch, const dictionary &dict)
 Construct from patch and dictionary. More...
 
 temperatureCoupledBase (const fvPatch &patch, const temperatureCoupledBase &base)
 Construct from patch and temperatureCoupledBase. More...
 
 temperatureCoupledBase (const temperatureCoupledBase &)
 Construct as copy. More...
 
virtual ~temperatureCoupledBase ()=default
 Destructor. More...
 
word KMethod () const
 Method to obtain K. More...
 
const wordkappaName () const
 Name of thermal conductivity field. More...
 
const wordalphaName () const
 Name of thermal diffusivity field. More...
 
virtual tmp< scalarFieldalpha (const scalarField &Tp) const
 Given patch temperature calculate corresponding alphaEff field. More...
 
void write (Ostream &os) const
 Write. More...
 
- Public Member Functions inherited from mappedPatchFieldBase< scalar >
 mappedPatchFieldBase (const mappedPatchBase &mapper, const fvPatchField< scalar > &patchField, const word &fieldName, const bool setAverage, const scalar average, const word &interpolationScheme)
 Construct from components. More...
 
 mappedPatchFieldBase (const mappedPatchBase &mapper, const fvPatchField< scalar > &patchField, const dictionary &dict)
 Construct from dictionary. More...
 
 mappedPatchFieldBase (const mappedPatchBase &mapper, const fvPatchField< scalar > &patchField, const dictionary &dict, const Field< scalar > &fld)
 Construct from dictionary and initial field value. More...
 
 mappedPatchFieldBase (const mappedPatchBase &mapper, const fvPatchField< scalar > &patchField)
 Construct empty. More...
 
 mappedPatchFieldBase (const mappedPatchFieldBase< scalar > &mapper)
 Construct copy. More...
 
 mappedPatchFieldBase (const mappedPatchBase &mapper, const fvPatchField< scalar > &patchField, const mappedPatchFieldBase< scalar > &base)
 Construct copy, resetting patch and field. More...
 
virtual ~mappedPatchFieldBase ()=default
 Destructor. More...
 
const GeometricField< T, fvPatchField, volMesh > & sampleField (const word &fieldName) const
 Field to sample. Either on my or nbr mesh. More...
 
const GeometricField< scalar, fvPatchField, volMesh > & sampleField () const
 Field to sample. Either on my or nbr mesh. More...
 
const Foam::GeometricField< Type2, Foam::fvPatchField, Foam::volMesh > & sampleField (const word &fieldName) const
 
virtual tmp< Field< scalar > > mappedField () const
 Map sampleField onto *this patch. More...
 
virtual tmp< Field< scalar > > mappedInternalField () const
 Map internal of sampleField onto *this patch. More...
 
virtual tmp< scalarFieldmappedWeightField () const
 Map optional weightField onto *this patch. Default is deltaCoeffs. More...
 
virtual void mappedWeightField (const word &weightFieldName, tmp< scalarField > &thisWeights, tmp< scalarField > &nbrWeights) const
 Map optional weightField (given by name) onto *this patch. More...
 
void distribute (const word &fieldName, Field< T > &newValues) const
 

Additional Inherited Members

- Public Types inherited from temperatureCoupledBase
enum  KMethodType {
  mtFluidThermo, mtSolidThermo, mtDirectionalSolidThermo, mtLookup,
  mtFunction
}
 Type of supplied Kappa. More...
 
- Static Public Member Functions inherited from mappedPatchFieldBase< scalar >
static const mappedPatchBasemapper (const fvPatch &p, const DimensionedField< scalar, volMesh > &iF)
 Check that patch is of correct type. More...
 
- Protected Member Functions inherited from mappedPatchFieldBase< scalar >
void initRetrieveField (const objectRegistry &obr, const word &region, const word &patch, const labelListList &map, const word &fieldName, const Field< T > &fld) const
 Construct field from registered elements. More...
 
void initRetrieveField (const word &fieldName, const Field< T > &fld) const
 Initialise field to retrieve (e.g. when value read from dictionary) More...
 
bool storeAndRetrieveField (const word &fieldName, const label myComm, const labelListList &subMap, const label constructSize, const labelListList &constructMap, const labelListList &address, const scalarListList &weights, Field< T > &fld) const
 Helper : storeField and retrieveField and interpolate. Leaves fld. More...
 
void storeField (const objectRegistry &obr, const word &region, const word &patch, const label myComm, const labelListList &procToMap, const word &fieldName, const Field< T > &fld) const
 Store elements of field onto (sub) registry. More...
 
bool retrieveField (const bool allowUnset, const objectRegistry &obr, const word &region, const word &patch, const label myComm, const labelListList &procToMap, const word &fieldName, Field< T > &fld) const
 Construct field from registered elements. More...
 
- Protected Attributes inherited from temperatureCoupledBase
const fvPatchpatch_
 Underlying patch. More...
 
const KMethodType method_
 How to get K. More...
 
const word kappaName_
 Name of thermal conductivity field (if looked up from database) More...
 
const word alphaAniName_
 Name of the non-Isotropic alpha (default: Anialpha) More...
 
const word alphaName_
 Name of thermal diffusivity. More...
 
autoPtr< PatchFunction1< scalar > > kappaFunction1_
 Function1 for kappa. More...
 
autoPtr< PatchFunction1< scalar > > alphaFunction1_
 Function1 for alpha. More...
 
- Protected Attributes inherited from mappedPatchFieldBase< scalar >
const mappedPatchBasemapper_
 Mapping engine. More...
 
const fvPatchField< scalar > & patchField_
 Underlying patch field. More...
 
word fieldName_
 Name of field to sample. More...
 
const bool setAverage_
 If true adjust the mapped field to maintain average value average_. More...
 
const scalar average_
 
word interpolationScheme_
 Interpolation scheme to use for nearestcell mode. More...
 
- Static Protected Attributes inherited from temperatureCoupledBase
static const Enum< KMethodTypeKMethodTypeNames_
 

Detailed Description

Mixed boundary condition for temperature, to be used for heat-transfer on back-to-back baffles. Optional thin thermal layer resistances can be specified through thicknessLayers and kappaLayers entries.

Specifies gradient and temperature such that the equations are the same on both sides:

  • refGradient = zero gradient
  • refValue = neighbour value
  • mixFraction = nbrKDelta / (nbrKDelta + myKDelta())

where KDelta is heat-transfer coefficient K * deltaCoeffs

The thermal conductivity kappa can either be retrieved from various possible sources, as detailed in the class temperatureCoupledBase.

Usage
Property Description Required Default value
Tnbr name of the field no T
thicknessLayers list of thicknesses per layer [m] no
kappaLayers list of thermal conductivities per layer [W/m/K] no
thicknessLayer single thickness of layer [m] no
kappaLayer corresponding thermal conductivity [W/m/K] no
kappaMethod inherited from temperatureCoupledBase inherited
kappa inherited from temperatureCoupledBase inherited

Example of the boundary condition specification:

    <patchName>
    {
        type            compressible::turbulentTemperatureCoupledBaffleMixed;
        Tnbr            T;
        thicknessLayers (0.1 0.2 0.3 0.4);
        kappaLayers     (1 2 3 4);
        kappaMethod     lookup;
        kappa           kappa;
        value           uniform 300;
    }

Needs to be on underlying mapped(Wall)FvPatch.

See also
Foam::temperatureCoupledBase
Source files

Definition at line 140 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField() [1/5]

Construct from patch and internal field.

Definition at line 46 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

◆ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField() [2/5]

turbulentTemperatureCoupledBaffleMixedFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const dictionary dict 
)

Construct from patch, internal field and dictionary.

// Store patch value as initial guess when running in database mode mappedPatchFieldBase<scalar>::initRetrieveField ( this->internalField().name(), *this ); mappedPatchFieldBase<scalar>::initRetrieveField ( this->internalField().name() + "_weights", this->patch().deltaCoeffs() );

Definition at line 100 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References dict, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, PatchFunction1< Type >::NewIfPresent(), fvPatchField< scalar >::operator=(), p, Foam::foamVersion::patch, and WarningInFunction.

Here is the call graph for this function:

◆ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField() [3/5]

◆ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField() [4/5]

◆ turbulentTemperatureCoupledBaffleMixedFvPatchScalarField() [5/5]

Construct as copy setting internal field reference.

Definition at line 188 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "compressible::turbulentTemperatureCoupledBaffleMixed"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchScalarField> clone ( ) const
inlinevirtual

Construct and return a clone.

Definition at line 212 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H.

◆ clone() [2/2]

virtual tmp<fvPatchScalarField> clone ( const DimensionedField< scalar, volMesh > &  iF) const
inlinevirtual

Construct and return a clone setting internal field reference.

Definition at line 232 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.H.

◆ autoMap()

void autoMap ( const fvPatchFieldMapper mapper)
virtual

Map (and resize as needed) from self given a mapping object.

Implements temperatureCoupledBase.

Definition at line 234 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References temperatureCoupledBase::autoMap().

Here is the call graph for this function:

◆ rmap()

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

Reverse map the given fvPatchField onto this fvPatchField.

Implements temperatureCoupledBase.

Definition at line 250 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References Foam::refCast(), and temperatureCoupledBase::rmap().

Here is the call graph for this function:

◆ kappa()

tmp< Foam::scalarField > kappa ( const scalarField Tp) const
virtual

Given patch temperature calculate corresponding K field. Override temperatureCoupledBase::kappa to includes effect of any explicit kappaThickness

Reimplemented from temperatureCoupledBase.

Definition at line 275 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References forAll, temperatureCoupledBase::kappa(), and Foam::foamVersion::patch.

Referenced by turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateCoeffs()

◆ manipulateMatrix()

void manipulateMatrix ( fvMatrix< scalar > &  m,
const label  iMatrix,
const direction  cmpt 
)
virtual

Manipulate matrix.

Definition at line 422 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from mappedPatchFieldBase< scalar >.

Definition at line 469 of file turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C.

References os(), Foam::vtk::write(), temperatureCoupledBase::write(), and mappedPatchFieldBase< Type >::write().

Here is the call graph for this function:

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