turbulentTemperatureRadCoupledMixedFvPatchScalarField Class Reference

Mixed boundary condition for temperature and radiation heat transfer to be used for in multiregion cases. Optional thin thermal layer resistances can be specified through thicknessLayers and kappaLayers entries. More...

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

Public Member Functions

 TypeName ("compressible::turbulentTemperatureRadCoupledMixed")
 Runtime type information. More...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const turbulentTemperatureRadCoupledMixedFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const turbulentTemperatureRadCoupledMixedFvPatchScalarField &)
 Construct as copy. More...
 
virtual tmp< fvPatchScalarFieldclone () const
 Construct and return a clone. More...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const turbulentTemperatureRadCoupledMixedFvPatchScalarField &, 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 void autoMap (const fvPatchFieldMapper &)=0
 Map (and resize as needed) from self given a mapping object. More...
 
virtual void rmap (const fvPatchField< scalar > &, const labelList &)=0
 Reverse map the given fvPatchField onto this fvPatchField. More...
 
virtual tmp< scalarFieldkappa (const scalarField &Tp) const
 Given patch temperature calculate corresponding K 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...
 
virtual void write (Ostream &os) const
 Write. 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 and radiation heat transfer to be used for in multiregion cases. Optional thin thermal layer resistances can be specified through thicknessLayers and kappaLayers entries.

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
qrNbr name of the radiative flux in the nbr region no none
qr name of the radiative flux in this region no none
thicknessLayers list of thicknesses per layer [m] no
kappaLayers list of thermal conductivites 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
thermalInertia Add thermal inertia to wall node no false

Example of the boundary condition specification:

    <patchName>
    {
        type            compressible::turbulentTemperatureRadCoupledMixed;
        Tnbr            T;
        qrNbr           qr; // or none. Name of qr field on neighbour region
        qr              qr; // or none. Name of qr field on local region
        thicknessLayers (0.1 0.2 0.3 0.4);
        kappaLayers     (1 2 3 4);
        thermalInertia  false/true;
        kappaMethod     lookup;
        kappa           kappa;
        value           uniform 300;
    }

Needs to be on underlying mapped(Wall)FvPatch.

See also
Foam::temperatureCoupledBase
Source files

Definition at line 154 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ turbulentTemperatureRadCoupledMixedFvPatchScalarField() [1/5]

Construct from patch and internal field.

Definition at line 46 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

◆ turbulentTemperatureRadCoupledMixedFvPatchScalarField() [2/5]

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

Construct from patch, internal field and dictionary.

Definition at line 107 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

References dict, Foam::exit(), Foam::FatalError, FatalErrorInFunction, dictionary::found(), IOobject::name(), Time::New(), PatchFunction1< Type >::NewIfPresent(), fvPatchField< scalar >::operator=(), p, dictionary::readEntry(), dictionary::readIfPresent(), UList< T >::size(), and ensightPTraits< Type >::typeName.

Here is the call graph for this function:

◆ turbulentTemperatureRadCoupledMixedFvPatchScalarField() [3/5]

◆ turbulentTemperatureRadCoupledMixedFvPatchScalarField() [4/5]

◆ turbulentTemperatureRadCoupledMixedFvPatchScalarField() [5/5]

Construct as copy setting internal field reference.

Definition at line 234 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "compressible::turbulentTemperatureRadCoupledMixed"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp< fvPatchScalarField > clone ( ) const
inlinevirtual

Construct and return a clone.

Reimplemented in thermalBaffleFvPatchScalarField.

Definition at line 247 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.H.

◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Reimplemented in thermalBaffleFvPatchScalarField.

Definition at line 266 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.H.

◆ autoMap()

void autoMap ( const fvPatchFieldMapper mapper)
virtual

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

Implements temperatureCoupledBase.

Definition at line 287 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

References temperatureCoupledBase::autoMap(), and mappedPatchFieldBase< scalar >::mapper().

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 303 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.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 328 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

References Foam::constant::electromagnetic::kappa.

Referenced by turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().

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 583 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.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 >.

Reimplemented in thermalBaffleFvPatchScalarField.

Definition at line 728 of file turbulentTemperatureRadCoupledMixedFvPatchScalarField.C.

References os(), UList< T >::size(), ObukhovLength::write(), Ostream::writeEntry(), UList< T >::writeEntry(), and Ostream::writeEntryIfDifferent().

Here is the call graph for this function:

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