Applies a tabulated heat transfer model for inter-region heat exchanges. The heat flux is calculated based on the Number of Thermal Units (NTU). More...
Public Types | |
enum | geometryModeType { gmCalculated , gmUser } |
Options for the geometry mode type. More... | |
Public Member Functions | |
TypeName ("tabulatedNTUHeatTransfer") | |
Runtime type information. More... | |
tabulatedNTUHeatTransfer (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
tabulatedNTUHeatTransfer (const tabulatedNTUHeatTransfer &)=delete | |
No copy construct. More... | |
void | operator= (const tabulatedNTUHeatTransfer &)=delete |
No copy assignment. More... | |
virtual | ~tabulatedNTUHeatTransfer ()=default |
Destructor. More... | |
virtual void | calculateHtc () |
Calculate the heat transfer coefficient. More... | |
virtual bool | read (const dictionary &dict) |
Read dictionary. More... | |
Public Member Functions inherited from interRegionHeatTransferModel | |
TypeName ("interRegionHeatTransferModel") | |
Runtime type information. More... | |
interRegionHeatTransferModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from dictionary. More... | |
virtual | ~interRegionHeatTransferModel ()=default |
Destructor. More... | |
const word & | nbrRegionName () const |
Return const access to the neighbour region name. More... | |
const meshToMesh & | meshInterp () const |
Return const access to the mapToMap pointer. More... | |
const volScalarField & | htc () const |
Return the heat transfer coefficient. More... | |
const interRegionHeatTransferModel & | nbrModel () const |
Return const access to the neighbour model. More... | |
interRegionHeatTransferModel & | nbrModel () |
Return access to the neighbour model. More... | |
virtual void | addSup (fvMatrix< scalar > &eqn, const label fieldi) |
Source term to energy equation. More... | |
virtual void | addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
Source term to compressible energy equation. More... | |
virtual void | calculateHtc ()=0 |
Calculate heat transfer coefficient. More... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interpolate (const interRegionHeatTransferModel &nbrModel, const Field< Type > &field) const |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interpolate (const Field< Type > &field) const |
Public Member Functions inherited from interRegionOption | |
TypeName ("interRegionOption") | |
Runtime type information. More... | |
interRegionOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from dictionary. More... | |
interRegionOption (const interRegionOption &)=delete | |
No copy construct. More... | |
void | operator= (const interRegionOption &)=delete |
No copy assignment. More... | |
virtual | ~interRegionOption ()=default |
Destructor. More... | |
const word & | nbrRegionName () const |
Return const access to the neighbour region name. More... | |
const meshToMesh & | meshInterp () const |
Return const access to the mapToMap pointer. More... | |
virtual bool | read (const dictionary &dict) |
Read dictionary. More... | |
Public Member Functions inherited from option | |
TypeName ("option") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, option, dictionary,(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh),(name, modelType, dict, mesh)) | |
option (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
Construct from components. More... | |
autoPtr< option > | clone () const |
Return clone. More... | |
virtual | ~option ()=default |
Destructor. More... | |
const word & | name () const noexcept |
Return const access to the source name. More... | |
const fvMesh & | mesh () const noexcept |
Return const access to the mesh database. More... | |
const dictionary & | coeffs () const noexcept |
Return dictionary. More... | |
bool | active () const noexcept |
True if source is active. More... | |
void | setApplied (const label fieldi) |
Set the applied flag to true for field index fieldi. More... | |
bool | active (const bool on) noexcept |
Change source active flag, return previous value. More... | |
virtual bool | isActive () |
Is the source active? More... | |
virtual label | applyToField (const word &fieldName) const |
Return index of field name if found in fieldNames list. More... | |
virtual void | checkApplied () const |
Check that the source has been applied. More... | |
virtual void | addSup (fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< vector > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | addSup (const volScalarField &alpha, const volScalarField &rho, fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< scalar > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< vector > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< sphericalTensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< symmTensor > &eqn, const label fieldi) |
virtual void | constrain (fvMatrix< tensor > &eqn, const label fieldi) |
virtual void | correct (volScalarField &field) |
virtual void | correct (volVectorField &field) |
virtual void | correct (volSphericalTensorField &field) |
virtual void | correct (volSymmTensorField &field) |
virtual void | correct (volTensorField &field) |
virtual void | postProcessSens (scalarField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
virtual void | postProcessSens (vectorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
virtual void | postProcessSens (tensorField &sensField, const word &fieldName=word::null, const word &designVariablesName=word::null) |
virtual void | writeHeader (Ostream &) const |
Write the source header information. More... | |
virtual void | writeFooter (Ostream &) const |
Write the source footer information. More... | |
virtual void | writeData (Ostream &) const |
Write the source properties. More... | |
virtual bool | read (const dictionary &dict) |
Read source dictionary. More... | |
Static Public Attributes | |
static const Enum< geometryModeType > | geometryModelNames_ |
Names for geometryModeType. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from option | |
static autoPtr< option > | New (const word &name, const dictionary &dict, const fvMesh &mesh) |
Return a reference to the selected fvOption model. More... | |
Public Attributes inherited from option | |
bool | log |
Switch write log to Info. More... | |
Protected Member Functions inherited from interRegionHeatTransferModel | |
void | setNbrModel () |
Set the neighbour interRegionHeatTransferModel. More... | |
void | correct () |
Correct to calculate the inter-region heat transfer coefficient. More... | |
template<class Type > | |
tmp< Field< Type > > | interpolate (const interRegionHeatTransferModel &nbrModel, const Field< Type > &field) const |
Interpolate field with nbrModel specified. More... | |
template<class Type > | |
tmp< Field< Type > > | interpolate (const Field< Type > &field) const |
Interpolate field without nbrModel specified. More... | |
template<class Type > | |
void | interpolate (const interRegionHeatTransferModel &nbrModel, const Field< Type > &field, Field< Type > &result) const |
Interpolate field with nbrModel specified. More... | |
template<class Type > | |
void | interpolate (const Field< Type > &field, Field< Type > &result) const |
Interpolate field without nbrModel specified. More... | |
Protected Member Functions inherited from interRegionOption | |
void | setMapper () |
Set the mesh to mesh interpolation object. More... | |
Protected Member Functions inherited from option | |
void | resetApplied () |
Resize/reset applied flag list for all fieldNames_ entries. More... | |
Protected Attributes inherited from interRegionHeatTransferModel | |
word | nbrModelName_ |
Name of the model in the neighbour mesh. More... | |
interRegionHeatTransferModel * | nbrModel_ |
Pointer to neighbour interRegionHeatTransferModel. More... | |
bool | firstIter_ |
Flag to determine the first iteration. More... | |
bool | semiImplicit_ |
Flag to activate semi-implicit coupling. More... | |
label | timeIndex_ |
Time index - used for updating htc. More... | |
volScalarField | htc_ |
Heat transfer coefficient [W/m2/k] times area/volume [1/m]. More... | |
word | TName_ |
Name of operand temperature field. More... | |
word | TNbrName_ |
Name of operand neighbour temperature field. More... | |
Protected Attributes inherited from interRegionOption | |
bool | master_ |
Master or slave region. More... | |
word | nbrRegionName_ |
Name of the neighbour region to map. More... | |
autoPtr< meshToMesh > | meshInterpPtr_ |
Mesh to mesh interpolation object. More... | |
Protected Attributes inherited from option | |
const word | name_ |
Source name. More... | |
const word | modelType_ |
Model type. More... | |
const fvMesh & | mesh_ |
Reference to the mesh database. More... | |
dictionary | dict_ |
Top level source dictionary. More... | |
dictionary | coeffs_ |
Dictionary containing source coefficients. More... | |
wordList | fieldNames_ |
Field names to apply source to - populated by derived models. More... | |
List< bool > | applied_ |
Applied flag list - corresponds to each fieldNames_ entry. More... | |
bool | active_ |
Source active flag. More... | |
Applies a tabulated heat transfer model for inter-region heat exchanges. The heat flux is calculated based on the Number of Thermal Units (NTU).
A 2-D table of NTU as functions of the primary and secondary mass flow rates is required.
The exchanger geometry can be specified using either:
calculated:
coreBlockageRatio
[0-1] entryuser:
Heat transfer coefficient calculated by:
\[ htc = C_{min} \frac{NTU}{V_{core}} \]
Where \( C_{min} \) is given by:
\[ C_{min} = min \left(Cp_1 \dot{m}_1, Cp_2 \dot{m}_2 \right) \]
constant/fvOptions
: tabulatedNTUHeatTransfer1 { // Mandatory entries (unmodifiable) type tabulatedNTUHeatTransfer; // Mandatory entries (runtime modifiable) geometryMode <geometryMode>; outOfBounds clamp; file "ntuTable"; // Optional entries (runtime modifiable) U <Uname>; Unbr <UnbrName>; rho <rhoName>; rhoNbr <rhoNbrName>; // Conditional mandatory entries (runtime modifiable) // when geometryMode=user Ain 0.01728; AinNbr 0.3456; // when geometryMode=calculated inletPatch inlet_HWK; inletPatchNbr inlet_air; inletBlockageRatio 0.10; inletBlockageRatioNbr 0.04; coreBlockageRatio 0; // Conditional optional entries (runtime modifiable) // when geometryMode=user Vcore 0.01244; // Mandatory/Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Reqd | Dflt |
---|---|---|---|---|
type | Type name: tabulatedNTUHeatTransfer | word | yes | - |
geometryMode | Geometry mode type | word | yes | - |
file | Heat transfer coefficient table | interpolate2DTable | yes | - |
U | Name of operand velocity field | word | no | U |
Unbr | Name of operand neighbour velocity field | word | no | U |
Ain | Inlet area [m2] | scalar | cndtnl | - |
AinNbr | Neighbour region inlet area [m2] | scalar | cndtnl | - |
Vcore | Heat exchanger core volume | scalar | cndtnl | - |
inletPatch | Name of inlet patch | word | cndtnl | - |
inletNbrPatch | Name of inlet patch neighbour | word | cndtnl | - |
inletBlockageRatio | Inlet patch blockage ratio [0, 1] | scalar | cndtnl | - |
inletBlockageRatioNbr | Inlet neighbour patch blockage ratio [0, 1] | scalar | cndtnl | - |
coreBlockageRatio | Core volume blockage ratio [0, 1] | scalar | cndtnl | - |
The inherited entries are elaborated in:
Options for the geometryMode
entry:
calculated | Use settings computed internally user | Use settings provided by the user
Example usage:
coolerToAir { type tabulatedNTUHeatTransfer; active yes; tabulatedNTUHeatTransferCoeffs { interpolationMethod cellVolumeWeight; nbrRegion air; master true; fields (h); outOfBounds clamp; file "ntuTable"; nbrModel airToCooler; semiImplicit no; geometryMode user; Ain 0.01728; AinNbr 0.3456; Vcore 0.01244; // Optional // geometryMode calculated; // inletPatch inlet_HWK; // inletPatchNbr inlet_air; // inletBlockageRatio 0.10; // inletBlockageRatioNbr 0.04; // coreBlockageRatio 0; } }
Definition at line 290 of file tabulatedNTUHeatTransfer.H.
enum geometryModeType |
Options for the geometry mode type.
Enumerator | |
---|---|
gmCalculated | |
gmUser |
Definition at line 299 of file tabulatedNTUHeatTransfer.H.
tabulatedNTUHeatTransfer | ( | const word & | name, |
const word & | modelType, | ||
const dictionary & | dict, | ||
const fvMesh & | mesh | ||
) |
Construct from components.
Definition at line 190 of file tabulatedNTUHeatTransfer.C.
|
delete |
No copy construct.
|
virtualdefault |
Destructor.
TypeName | ( | "tabulatedNTUHeatTransfer" | ) |
Runtime type information.
|
delete |
No copy assignment.
|
virtual |
Calculate the heat transfer coefficient.
Implements interRegionHeatTransferModel.
Definition at line 213 of file tabulatedNTUHeatTransfer.C.
References Cp, basicThermo::Cp(), forAll, Foam::interpolate(), Foam::mag(), Foam::min(), rho, and U.
|
virtual |
Read dictionary.
Reimplemented from interRegionHeatTransferModel.
Definition at line 255 of file tabulatedNTUHeatTransfer.C.
References dict, and kEpsilonLopesdaCosta< BasicTurbulenceModel >::read().
|
static |
Names for geometryModeType.
Definition at line 306 of file tabulatedNTUHeatTransfer.H.