thermalBaffleFvPatchScalarField Class Reference

This boundary condition provides a coupled temperature condition between multiple mesh regions. More...

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

Public Member Functions

 TypeName ("compressible::thermalBaffle")
 Runtime type information. More...
 
 thermalBaffleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &)
 Construct from patch and internal field. More...
 
 thermalBaffleFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &)
 Construct from patch, internal field and dictionary. More...
 
 thermalBaffleFvPatchScalarField (const thermalBaffleFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &)
 Construct by mapping given. More...
 
virtual tmp< fvPatchScalarFieldclone () const
 Construct and return a clone. More...
 
 thermalBaffleFvPatchScalarField (const thermalBaffleFvPatchScalarField &, 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 updateCoeffs ()
 Update the coefficients associated with the patch field. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from turbulentTemperatureRadCoupledMixedFvPatchScalarField
 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...
 
 turbulentTemperatureRadCoupledMixedFvPatchScalarField (const turbulentTemperatureRadCoupledMixedFvPatchScalarField &, const DimensionedField< scalar, volMesh > &)
 Construct as copy 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 manipulateMatrix (fvMatrix< scalar > &m, const label iMatrix, const direction cmpt)
 Manipulate matrix. 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

This boundary condition provides a coupled temperature condition between multiple mesh regions.

The regions are generally referred to as the:

  • primary region,
  • and baffle region.

The primary region creates the baffle region and evolves its energy equation either:

  • 1-D, normal to each patch face
  • 3-D, normal and tangential components

The thermodynamic properties of the baffle material are specified via dictionary entries on the master patch.

The underlying polyPatch on the primary region needs to be defined as a complete mappedWall. i.e:

    type            mappedWall;
    sampleMode      nearestPatchFace;
    samplePatch     <patchName>;
    sampleRegion    <regionName>;

    coupleGroup     <coupleGroupName>;

The /keyword{internal} is true when the thermal baffle is used on internal faces and the baffle is coupled on both sides (bottom and top).

If this baffle is used on a patch set internal = false. By default is true.

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 inherited from temperatureCoupledBase inherited
kappaLayers inherited from temperatureCoupledBase inherited
kappaMethod inherited from temperatureCoupledBase inherited
kappa inherited from temperatureCoupledBase inherited
thermalInertia Add thermal inertia to wall node no false
region Name of the solid region yes
active Active yes
internal Is the baffle an internal regiion no true
thermoType Solid thermo type yes
mixture Mixture solid yes
radiation Radiation model in the solid yes
extrudeModel Extrude model yes
nLayers Number of cell across the ragion yes
expansionRatio Expansion ratio for the solid region yes
columnCells true for 1D or false for 3D region yes
Usage
Example of the boundary condition specification:
<masterPatchName>
{
    type                compressible::thermalBaffle;

    // Underlying coupled boundary condition
    Tnbr               T;
    kappaMethod        fluidThermo; // or solidThermo
    kappa              none;
    qrNbr              qr;//or none.Name of qr field on neighbourregion
    qr                 none;// or none.Name of qr field on localregion
    value              uniform 300;

    // Baffle region name
    region              baffleRegion;
    active              yes;
    internal            yes;

    // Solid thermo in solid region
    thermoType
    {
        type            heSolidThermo;
        mixture         pureMixture;
        transport       constIso;
        thermo          hConst;
        equationOfState rhoConst;
        specie          specie;
        energy          sensibleEnthalpy;
    }

    mixture
    {
        specie
        {
            molWeight       20;
        }
        transport
        {
            kappa           0.01;
        }
        thermodynamics
        {
            Hf              0;
            Cp              15;
        }
        density
        {
            rho             80;
        }
    }

    radiation
    {
        radiationModel  opaqueSolid;
        absorptionEmissionModel none;
        scatterModel    none;
    }

    // Extrude model for new region

    extrudeModel        linearNormal;
    nLayers             50;
    expansionRatio      1;
    columnCells         false; //3D or 1D
    linearNormalCoeffs
    {
        thickness           0.02;
    }

}

If the thermal baffle is used on internal faces of the primary region, then the slave in this region is defined as :

Slave patch on primary region:

<slavePatchName>
{
    type                compressible::thermalBaffle;
    kappaMethod         fluidThermo;
    kappa               none;
    value               uniform 300;

Patches on baffle region:

bottom
{
    type                compressible::thermalBaffle;
    kappaMethod         solidThermo;
    kappa               none;
    value               uniform 300;
}

top
{
    type                compressible::thermalBaffle;
    kappaMethod         solidThermo;
    kappa               none;
    value               uniform 300;
}
See also
Foam::compressible::turbulentTemperatureCoupledBaffleMixedFvPatchScalarField Foam::regionModels::thermalBaffleModels::thermalBaffleModel
Source files

Definition at line 310 of file thermalBaffleFvPatchScalarField.H.

Constructor & Destructor Documentation

◆ thermalBaffleFvPatchScalarField() [1/4]

thermalBaffleFvPatchScalarField ( const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF 
)

Construct from patch and internal field.

Definition at line 44 of file thermalBaffleFvPatchScalarField.C.

Referenced by thermalBaffleFvPatchScalarField::clone().

Here is the caller graph for this function:

◆ thermalBaffleFvPatchScalarField() [2/4]

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

Construct from patch, internal field and dictionary.

Definition at line 82 of file thermalBaffleFvPatchScalarField.C.

References dict, objectRegistry::foundObject(), Foam::New(), Foam::foamVersion::patch, regionName, and fvMesh::time().

Here is the call graph for this function:

◆ thermalBaffleFvPatchScalarField() [3/4]

thermalBaffleFvPatchScalarField ( const thermalBaffleFvPatchScalarField ptf,
const fvPatch p,
const DimensionedField< scalar, volMesh > &  iF,
const fvPatchFieldMapper mapper 
)

Construct by mapping given.

thermalBaffleFvPatchScalarField onto a new patch

Definition at line 59 of file thermalBaffleFvPatchScalarField.C.

◆ thermalBaffleFvPatchScalarField() [4/4]

Construct as copy setting internal field reference.

Definition at line 126 of file thermalBaffleFvPatchScalarField.C.

Member Function Documentation

◆ TypeName()

TypeName ( "compressible::thermalBaffle"  )

Runtime type information.

◆ clone() [1/2]

virtual tmp<fvPatchScalarField> clone ( ) const
inlinevirtual

Construct and return a clone.

Reimplemented from turbulentTemperatureRadCoupledMixedFvPatchScalarField.

Definition at line 380 of file thermalBaffleFvPatchScalarField.H.

References thermalBaffleFvPatchScalarField::thermalBaffleFvPatchScalarField().

Here is the call graph for this function:

◆ clone() [2/2]

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

Construct and return a clone setting internal field reference.

Reimplemented from turbulentTemperatureRadCoupledMixedFvPatchScalarField.

Definition at line 397 of file thermalBaffleFvPatchScalarField.H.

References thermalBaffleFvPatchScalarField::thermalBaffleFvPatchScalarField().

Here is the call graph for this function:

◆ updateCoeffs()

void updateCoeffs ( )
virtual

Update the coefficients associated with the patch field.

Reimplemented from turbulentTemperatureRadCoupledMixedFvPatchScalarField.

Definition at line 235 of file thermalBaffleFvPatchScalarField.C.

References turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from turbulentTemperatureRadCoupledMixedFvPatchScalarField.

Definition at line 251 of file thermalBaffleFvPatchScalarField.C.

References dictionary::get(), os(), dictionary::subDict(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::write(), and dictionary::writeEntry().

Here is the call graph for this function:

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