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...
#include <tabulatedNTUHeatTransfer.H>


Public Types | |
| enum | geometryModeType { gmCalculated , gmUser } |
| Options for the geometry mode type. More... | |
Public Member Functions | |
| TypeName ("tabulatedNTUHeatTransfer") | |
| Runtime type information. | |
| tabulatedNTUHeatTransfer (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
| Construct from components. | |
| tabulatedNTUHeatTransfer (const tabulatedNTUHeatTransfer &)=delete | |
| No copy construct. | |
| void | operator= (const tabulatedNTUHeatTransfer &)=delete |
| No copy assignment. | |
| virtual | ~tabulatedNTUHeatTransfer ()=default |
| Destructor. | |
| virtual void | calculateHtc () |
| Calculate the heat transfer coefficient. | |
| virtual bool | read (const dictionary &dict) |
| Read dictionary. | |
| Public Member Functions inherited from interRegionHeatTransferModel | |
| TypeName ("interRegionHeatTransferModel") | |
| Runtime type information. | |
| interRegionHeatTransferModel (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
| Construct from dictionary. | |
| virtual | ~interRegionHeatTransferModel ()=default |
| Destructor. | |
| const word & | nbrRegionName () const |
| Return const access to the neighbour region name. | |
| const meshToMesh & | meshInterp () const |
| Return const access to the mapToMap pointer. | |
| const volScalarField & | htc () const |
| Return the heat transfer coefficient. | |
| const interRegionHeatTransferModel & | nbrModel () const |
| Return const access to the neighbour model. | |
| interRegionHeatTransferModel & | nbrModel () |
| Return access to the neighbour model. | |
| virtual void | addSup (fvMatrix< scalar > &eqn, const label fieldi) |
| Source term to energy equation. | |
| virtual void | addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldi) |
| Source term to compressible energy equation. | |
| 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. | |
| interRegionOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh) | |
| Construct from dictionary. | |
| interRegionOption (const interRegionOption &)=delete | |
| No copy construct. | |
| void | operator= (const interRegionOption &)=delete |
| No copy assignment. | |
| virtual | ~interRegionOption ()=default |
| Destructor. | |
| const word & | nbrRegionName () const |
| Return const access to the neighbour region name. | |
| const meshToMesh & | meshInterp () const |
| Return const access to the mapToMap pointer. | |
| Public Member Functions inherited from option | |
| TypeName ("option") | |
| Runtime type information. | |
| 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. | |
| autoPtr< option > | clone () const |
| Return clone. | |
| virtual | ~option ()=default |
| Destructor. | |
| const word & | name () const noexcept |
| Return const access to the source name. | |
| const fvMesh & | mesh () const noexcept |
| Return const access to the mesh database. | |
| const dictionary & | coeffs () const noexcept |
| Return dictionary. | |
| bool | active () const noexcept |
| True if source is active. | |
| void | setApplied (const label fieldi) |
| Set the applied flag to true for field index fieldi. | |
| bool | active (const bool on) noexcept |
| Change source active flag, return previous value. | |
| virtual bool | isActive () |
| Is the source active? | |
| virtual label | applyToField (const word &fieldName) const |
| Return index of field name if found in fieldNames list. | |
| virtual void | checkApplied () const |
| Check that the source has been applied. | |
| 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< 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 | correct (surfaceScalarField &field) |
| virtual void | correct (surfaceVectorField &field) |
| virtual void | correct (surfaceTensorField &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 | postProcessAuxSens (const volScalarField &primalField, const volScalarField &adjointField, scalarField &sensField, const word &fieldName=word::null) |
| virtual void | postProcessAuxSens (const volVectorField &primalField, const volVectorField &adjointField, scalarField &sensField, const word &fieldName=word::null) |
| virtual void | postProcessAuxSens (const volTensorField &primalField, const volTensorField &adjointField, scalarField &sensField, const word &fieldName=word::null) |
| virtual void | writeHeader (Ostream &) const |
| Write the source header information. | |
| virtual void | writeFooter (Ostream &) const |
| Write the source footer information. | |
| virtual void | writeData (Ostream &) const |
| Write the source properties. | |
Static Public Attributes | |
| static const Enum< geometryModeType > | geometryModelNames_ |
| Names for geometryModeType. | |
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. | |
| Public Attributes inherited from option | |
| bool | log |
| Switch write log to Info. | |
| Protected Member Functions inherited from interRegionHeatTransferModel | |
| void | setNbrModel () |
| Set the neighbour interRegionHeatTransferModel. | |
| void | correct () |
| Correct to calculate the inter-region heat transfer coefficient. | |
| template<class Type> | |
| tmp< Field< Type > > | interpolate (const interRegionHeatTransferModel &nbrModel, const Field< Type > &field) const |
| Interpolate field with nbrModel specified. | |
| template<class Type> | |
| tmp< Field< Type > > | interpolate (const Field< Type > &field) const |
| Interpolate field without nbrModel specified. | |
| template<class Type> | |
| void | interpolate (const interRegionHeatTransferModel &nbrModel, const Field< Type > &field, Field< Type > &result) const |
| Interpolate field with nbrModel specified. | |
| template<class Type> | |
| void | interpolate (const Field< Type > &field, Field< Type > &result) const |
| Interpolate field without nbrModel specified. | |
| Protected Member Functions inherited from interRegionOption | |
| void | setMapper () |
| Set the mesh to mesh interpolation object. | |
| Protected Member Functions inherited from option | |
| void | resetApplied () |
| Resize/reset applied flag list for all fieldNames_ entries. | |
| Protected Attributes inherited from interRegionHeatTransferModel | |
| word | nbrModelName_ |
| Name of the model in the neighbour mesh. | |
| interRegionHeatTransferModel * | nbrModel_ |
| Pointer to neighbour interRegionHeatTransferModel. | |
| bool | firstIter_ |
| Flag to determine the first iteration. | |
| bool | semiImplicit_ |
| Flag to activate semi-implicit coupling. | |
| label | timeIndex_ |
| Time index - used for updating htc. | |
| volScalarField | htc_ |
| Heat transfer coefficient [W/m2/k] times area/volume [1/m]. | |
| word | TName_ |
| Name of operand temperature field. | |
| word | TNbrName_ |
| Name of operand neighbour temperature field. | |
| Protected Attributes inherited from interRegionOption | |
| bool | master_ |
| Master or slave region. | |
| word | nbrRegionName_ |
| Name of the neighbour region to map. | |
| autoPtr< meshToMesh > | meshInterpPtr_ |
| Mesh to mesh interpolation object. | |
| Protected Attributes inherited from option | |
| const word | name_ |
| Source name. | |
| const word | modelType_ |
| Model type. | |
| const fvMesh & | mesh_ |
| Reference to the mesh database. | |
| dictionary | dict_ |
| Top level source dictionary. | |
| dictionary | coeffs_ |
| Dictionary containing source coefficients. | |
| wordList | fieldNames_ |
| Field names to apply source to - populated by derived models. | |
| List< bool > | applied_ |
| Applied flag list - corresponds to each fieldNames_ entry. | |
| bool | active_ |
| Source active flag. | |
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}}
\]](form_493.png)
Where 
![\[ C_{min} = min \left(Cp_1 \dot{m}_1, Cp_2 \dot{m}_2 \right)
\]](form_495.png)
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 286 of file tabulatedNTUHeatTransfer.H.
| enum geometryModeType |
Options for the geometry mode type.
| Enumerator | |
|---|---|
| gmCalculated | |
| gmUser | |
Definition at line 297 of file tabulatedNTUHeatTransfer.H.
| tabulatedNTUHeatTransfer | ( | const word & | name, |
| const word & | modelType, | ||
| const dictionary & | dict, | ||
| const fvMesh & | mesh ) |
Construct from components.
Definition at line 183 of file tabulatedNTUHeatTransfer.C.
References option::coeffs_, dict, gmCalculated, interRegionHeatTransferModel::interRegionHeatTransferModel(), option::mesh(), and option::name().
Referenced by operator=(), and tabulatedNTUHeatTransfer().


|
delete |
|
virtualdefault |
Destructor.
References dict.
| TypeName | ( | "tabulatedNTUHeatTransfer" | ) |
Runtime type information.
References dict, option::mesh(), and option::name().

|
delete |
No copy assignment.
References tabulatedNTUHeatTransfer().

|
virtual |
Calculate the heat transfer coefficient.
Implements interRegionHeatTransferModel.
Definition at line 206 of file tabulatedNTUHeatTransfer.C.
References Cp, basicThermo::Cp(), forAll, interRegionHeatTransferModel::htc_, Foam::interpolate(), Foam::mag(), option::mesh_, Foam::min(), interRegionHeatTransferModel::nbrRegionName(), rho, thermo, and U.

|
virtual |
Read dictionary.
Reimplemented from interRegionHeatTransferModel.
Definition at line 248 of file tabulatedNTUHeatTransfer.C.
References option::coeffs_, dict, and option::read().

|
static |
Names for geometryModeType.
Definition at line 306 of file tabulatedNTUHeatTransfer.H.