This boundary condition applies a heat flux condition to temperature on an external wall in one of three modes: More...
Public Types | |
enum | operationMode { fixedPower, fixedHeatFlux, fixedHeatTransferCoeff } |
Operation mode enumeration. More... | |
Public Types inherited from temperatureCoupledBase | |
enum | KMethodType { mtFluidThermo, mtSolidThermo, mtDirectionalSolidThermo, mtLookup, mtFunction } |
Type of supplied Kappa. More... | |
Public Member Functions | |
TypeName ("externalWallHeatFluxTemperature") | |
Runtime type information. More... | |
externalWallHeatFluxTemperatureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &) | |
Construct from patch and internal field. More... | |
externalWallHeatFluxTemperatureFvPatchScalarField (const fvPatch &, const DimensionedField< scalar, volMesh > &, const dictionary &) | |
Construct from patch, internal field and dictionary. More... | |
externalWallHeatFluxTemperatureFvPatchScalarField (const externalWallHeatFluxTemperatureFvPatchScalarField &, const fvPatch &, const DimensionedField< scalar, volMesh > &, const fvPatchFieldMapper &) | |
Construct by mapping given. More... | |
externalWallHeatFluxTemperatureFvPatchScalarField (const externalWallHeatFluxTemperatureFvPatchScalarField &) | |
Construct as copy. More... | |
externalWallHeatFluxTemperatureFvPatchScalarField (const externalWallHeatFluxTemperatureFvPatchScalarField &, const DimensionedField< scalar, volMesh > &) | |
Construct as copy setting internal field reference. More... | |
virtual tmp< fvPatchField< scalar > > | clone () const |
Return a clone. More... | |
virtual tmp< fvPatchField< scalar > > | clone (const DimensionedField< scalar, volMesh > &iF) const |
Clone with an internal field reference. More... | |
virtual bool | fixesValue () const |
Allow manipulation of the boundary values. More... | |
virtual void | autoMap (const fvPatchFieldMapper &) |
Map (and resize as needed) from self given a mapping object. More... | |
virtual void | rmap (const fvPatchScalarField &, const labelList &) |
Reverse map the given fvPatchField onto this fvPatchField. More... | |
virtual void | updateCoeffs () |
Update the coefficients associated with the patch field. More... | |
void | write (Ostream &) const |
Write. More... | |
Public Member Functions inherited from temperatureCoupledBase | |
temperatureCoupledBase (const fvPatch &patch, const KMethodType method=KMethodType::mtFluidThermo) | |
Default construct from patch, using fluidThermo (default) or specified method. More... | |
temperatureCoupledBase (const fvPatch &patch, const KMethodType method, const word &kappaName, const word &alphaName, const word &alphaAniName) | |
Construct from patch, method type and field names. 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 &base) | |
Copy construct. More... | |
virtual | ~temperatureCoupledBase ()=default |
Destructor. More... | |
word | KMethod () const |
Method to obtain K. More... | |
const word & | kappaName () const noexcept |
Name of thermal conductivity field. More... | |
const word & | alphaName () const noexcept |
Name of thermal diffusivity field. More... | |
virtual tmp< scalarField > | kappa (const scalarField &Tp) const |
Given patch temperature calculate corresponding K field. More... | |
virtual tmp< scalarField > | alpha (const scalarField &Tp) const |
Given patch temperature calculate corresponding alphaEff field. More... | |
void | write (Ostream &os) const |
Write. More... | |
Static Public Attributes | |
static const Enum< operationMode > | operationModeNames |
Additional Inherited Members | |
Protected Attributes inherited from temperatureCoupledBase | |
const fvPatch & | patch_ |
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 | alphaName_ |
Name of thermal diffusivity. More... | |
const word | alphaAniName_ |
Name of the non-isotropic alpha (for directional solidThermo) More... | |
autoPtr< PatchFunction1< scalar > > | kappaFunction1_ |
Function1 for kappa. More... | |
autoPtr< PatchFunction1< scalar > > | alphaFunction1_ |
Function1 for alpha. More... | |
Static Protected Attributes inherited from temperatureCoupledBase | |
static const Enum< KMethodType > | KMethodTypeNames_ |
This boundary condition applies a heat flux condition to temperature on an external wall in one of three modes:
where:
= | Power [W] | |
= | Heat flux [W/m^2] | |
= | Heat transfer coefficient [W/m^2/K] | |
= | Ambient temperature [K] |
For heat transfer coefficient mode 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.
The ambient temperature Ta is specified as a Foam::Function1 of time but uniform in space.
Property | Description | Required | Default |
---|---|---|---|
mode | 'power', 'flux' or 'coefficient' | yes | |
Q | Power [W] | for mode 'power' | |
q | Heat flux [W/m^2] | for mode 'flux' | |
h | Heat transfer coefficient [W/m^2/K] | for mode 'coefficient' | |
Ta | Ambient temperature [K] | for mode 'coefficient' | |
thicknessLayers | Layer thicknesses [m] | no | |
kappaLayers | Layer thermal conductivities [W/m/K] | no | |
relaxation | Relaxation for the wall temperature | no | 1 |
emissivity | Surface emissivity for radiative flux to ambient | no | 0 |
qr | Name of the radiative field | no | none |
qrRelaxation | Relaxation factor for radiative field | no | 1 |
kappaMethod | Inherited from temperatureCoupledBase | inherited | |
kappa | Inherited from temperatureCoupledBase | inherited |
Example of the boundary condition specification:
<patchName> { type externalWallHeatFluxTemperature; mode coefficient; Ta constant 300.0; h constant 10.0; thicknessLayers (0.1 0.2 0.3 0.4); kappaLayers (1 2 3 4); kappaMethod fluidThermo; value $internalField; }
Definition at line 207 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.
enum operationMode |
Operation mode enumeration.
Enumerator | |
---|---|
fixedPower | Heat power [W]. |
fixedHeatFlux | Heat flux [W/m2]. |
fixedHeatTransferCoeff | Heat transfer coefficient [W/m^2/K]. |
Definition at line 219 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.
externalWallHeatFluxTemperatureFvPatchScalarField | ( | const fvPatch & | p, |
const DimensionedField< scalar, volMesh > & | iF | ||
) |
Construct from patch and internal field.
Definition at line 48 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
externalWallHeatFluxTemperatureFvPatchScalarField | ( | const fvPatch & | p, |
const DimensionedField< scalar, volMesh > & | iF, | ||
const dictionary & | dict | ||
) |
Construct from patch, internal field and dictionary.
Definition at line 75 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::New(), p, Foam::foamVersion::patch, List< T >::resize(), and Foam::Zero.
externalWallHeatFluxTemperatureFvPatchScalarField | ( | const externalWallHeatFluxTemperatureFvPatchScalarField & | rhs, |
const fvPatch & | p, | ||
const DimensionedField< scalar, volMesh > & | iF, | ||
const fvPatchFieldMapper & | mapper | ||
) |
Construct by mapping given.
externalWallHeatFluxTemperatureFvPatchScalarField onto a new patch
Definition at line 162 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
References FieldMapper::size().
externalWallHeatFluxTemperatureFvPatchScalarField | ( | const externalWallHeatFluxTemperatureFvPatchScalarField & | rhs | ) |
Construct as copy.
Definition at line 194 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
externalWallHeatFluxTemperatureFvPatchScalarField | ( | const externalWallHeatFluxTemperatureFvPatchScalarField & | rhs, |
const DimensionedField< scalar, volMesh > & | iF | ||
) |
Construct as copy setting internal field reference.
Definition at line 217 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
TypeName | ( | "externalWallHeatFluxTemperature" | ) |
Runtime type information.
|
inlinevirtual |
Return a clone.
Definition at line 357 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.
References fvPatchField< Type >::Clone().
|
inlinevirtual |
Clone with an internal field reference.
Definition at line 366 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.
References fvPatchField< Type >::Clone().
|
inlinevirtual |
Allow manipulation of the boundary values.
Definition at line 381 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.
|
virtual |
Map (and resize as needed) from self given a mapping object.
Implements temperatureCoupledBase.
Definition at line 242 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
|
virtual |
Reverse map the given fvPatchField onto this fvPatchField.
Implements temperatureCoupledBase.
Definition at line 266 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
|
virtual |
Update the coefficients associated with the patch field.
Definition at line 295 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
References DebugInfo, externalWallHeatFluxTemperatureFvPatchScalarField::fixedHeatFlux, externalWallHeatFluxTemperatureFvPatchScalarField::fixedHeatTransferCoeff, externalWallHeatFluxTemperatureFvPatchScalarField::fixedPower, forAll, Foam::gAverage(), Foam::gMax(), Foam::gMin(), Foam::gSum(), temperatureCoupledBase::kappa(), Foam::lerp(), Foam::mag(), Foam::nl, Foam::foamVersion::patch, Foam::pow3(), sigma(), UList< T >::size(), Foam::fvc::snGrad(), and Foam::Zero.
void write | ( | Ostream & | os | ) | const |
Write.
Definition at line 465 of file externalWallHeatFluxTemperatureFvPatchScalarField.C.
References os(), temperatureCoupledBase::write(), fvPatchField< Type >::write(), Ostream::writeEntry(), and fvPatchField< Type >::writeValueEntry().
|
static |
Definition at line 226 of file externalWallHeatFluxTemperatureFvPatchScalarField.H.