Public Member Functions | Protected Attributes | List of all members
effectivenessHeatExchangerSource Class Reference

Heat exchanger source model, in which the heat exchanger is defined as a selection of cells. More...

Inheritance diagram for effectivenessHeatExchangerSource:
Inheritance graph
[legend]
Collaboration diagram for effectivenessHeatExchangerSource:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("effectivenessHeatExchangerSource")
 Runtime type information. More...
 
 effectivenessHeatExchangerSource (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 Construct from components. More...
 
virtual ~effectivenessHeatExchangerSource ()
 Destructor. More...
 
virtual void addSup (fvMatrix< scalar > &eqn, const label fieldI)
 Scalar. More...
 
virtual void addSup (const volScalarField &rho, fvMatrix< scalar > &eqn, const label fieldI)
 Scalar. More...
 
virtual bool read (const dictionary &dict)
 Read dictionary. More...
 
- Public Member Functions inherited from cellSetOption
 TypeName ("cellSetOption")
 Runtime type information. More...
 
 cellSetOption (const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)
 Construct from components. More...
 
virtual ~cellSetOption ()
 Destructor. More...
 
scalar timeStart () const
 Return const access to the time start. More...
 
scalar duration () const
 Return const access to the duration. More...
 
bool inTimeLimits (const scalar time) const
 Return true if within time limits. More...
 
const selectionModeTypeselectionMode () const
 Return const access to the cell selection mode. More...
 
const wordcellSetName () const
 Return const access to the name of cell set for "cellSet". More...
 
scalar V () const
 Return const access to the total cell volume. More...
 
const labelListcells () const
 Return const access to the cell set. More...
 
scalar & timeStart ()
 Return access to the time start. More...
 
scalar & duration ()
 Return access to the duration. More...
 
virtual bool isActive ()
 Is the source active? 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< optionclone () const
 Return clone. More...
 
virtual ~option ()
 Destructor. More...
 
const wordname () const
 Return const access to the source name. More...
 
const fvMeshmesh () const
 Return const access to the mesh database. More...
 
const dictionarycoeffs () const
 Return dictionary. More...
 
bool active () const
 Return const access to the source active flag. More...
 
void setApplied (const label fieldI)
 Set the applied flag to true for field index fieldI. More...
 
Switchactive ()
 Return access to the source active flag. 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< 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 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...
 

Protected Attributes

scalar secondaryMassFlowRate_
 Secondary flow mass rate [kg/s]. More...
 
scalar secondaryInletT_
 Inlet secondary temperature [K]. More...
 
scalar primaryInletT_
 Primary air temperature at the heat exchanger inlet [K]. More...
 
autoPtr< interpolation2DTable< scalar > > eTable_
 2D look up table efficiency = function of primary and secondary More...
 
word UName_
 Name of velocity field; default = U. More...
 
word TName_
 Name of temperature field; default = T. More...
 
word phiName_
 Name of the flux. More...
 
word faceZoneName_
 Name of the faceZone at the heat exchange inlet. More...
 
label zoneID_
 Id for the face zone. More...
 
labelList faceId_
 Local list of face IDs. More...
 
labelList facePatchId_
 Local list of patch ID per face. More...
 
labelList faceSign_
 List of +1/-1 representing face flip map (1 use as is, -1 negate) More...
 
scalar faceZoneArea_
 Area of the face zone. More...
 
- Protected Attributes inherited from cellSetOption
scalar timeStart_
 Time start. More...
 
scalar duration_
 Duration. More...
 
selectionModeType selectionMode_
 Cell selection mode. More...
 
word cellSetName_
 Name of cell set for "cellSet" and "cellZone" selectionMode. More...
 
List< pointpoints_
 List of points for "points" selectionMode. More...
 
labelList cells_
 Set of cells to apply source to. More...
 
scalar V_
 Sum of cell volumes. More...
 
- Protected Attributes inherited from option
const word name_
 Source name. More...
 
const word modelType_
 Model type. More...
 
const fvMeshmesh_
 Reference to the mesh database. More...
 
dictionary dict_
 Top level source dictionary. More...
 
dictionary coeffs_
 Dictionary containing source coefficients. More...
 
Switch active_
 Source active flag. 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...
 

Additional Inherited Members

- Public Types inherited from cellSetOption
enum  selectionModeType { smPoints, smCellSet, smCellZone, smAll }
 Enumeration for selection mode types. More...
 
- Static Public Member Functions inherited from option
static autoPtr< optionNew (const word &name, const dictionary &dict, const fvMesh &mesh)
 Return a reference to the selected fvOption model. More...
 
- Static Public Attributes inherited from cellSetOption
static const NamedEnum< selectionModeType, 4 > selectionModeTypeNames_
 Word list of selection mode type names. More...
 
- Protected Member Functions inherited from cellSetOption
void setSelection (const dictionary &dict)
 Set the cellSet or points selection. More...
 
void setCellSet ()
 Set the cell set based on the user input selection mode. More...
 

Detailed Description

Heat exchanger source model, in which the heat exchanger is defined as a selection of cells.

The total heat exchange source is given by:

\[ Q_t = e(\phi, \dot{m}_2) (T_2 - T_1) \phi c_p \]

where:

$ Q_t $ = total heat source
$ e(\phi,\dot{m}_2) $ = effectivenes table
$ \phi $ = net mass flux entering heat exchanger [kg/s]
$ \dot{m}_2 $ = secondary mass flow rate [kg/s]
$ T_1 $ = primary inlet temperature [K]
$ T_2 $ = secondary inlet temperature [K]
$ c_p $ = specific heat capacity [J/kg/K]

The distribution inside the hear exchanger is given by:

\[ Q_c = \frac{V_c |U_c| (T_c - T_{ref})}{\sum(V_c |U_c| (T_c - T_{ref}))} \]

where:

$ Q_c $ = source for cell
$ V_c $ = volume of the cell [m3]
$ U_c $ = local cell velocity [m/s]
$ T_c $ = local call temperature [K]
$ T_{ref} $ = min or max(T) in cell zone depending on the sign of Q_t [K]


Source usage

Example usage:

    effectivenessHeatExchangerSource1
    {
        type            effectivenessHeatExchangerSource;
        active          yes;

        effectivenessHeatExchangerSourceCoeffs
        {
            selectionMode   cellZone;
            cellZone        porosity;

            secondaryMassFlowRate   1.0;
            secondaryInletT         336;
            primaryInletT           293;
            faceZone                facesZoneInletOriented;
            outOfBounds             clamp;
            fileName                "effTable";
        }
    }

The effectiveness table is described in terms of the primary and secondary mass flow rates. For example, the table:

secondary MFR | 0.1 0.2 0.3 —–+—————– 0.02 | A B C primary MFR 0.04 | D E F 0.06 | G H I

Is specified by the following:

( 0.02 ( (0.1 A) (0.2 B) (0.3 C) ), 0.04 ( (0.1 D) (0.2 E) (0.3 F) ), 0.06 ( (0.1 G) (0.2 H) (0.3 I) ) );

Note
  • the table with name "fileName" should have the same units as the secondary mass flow rate and kg/s for phi
  • faceZone is the faces at the inlet of the cellzone, it needs to be created with flip map flags. It is used to integrate the net mass flow rate into the heat exchanger
Source files

Definition at line 199 of file effectivenessHeatExchangerSource.H.

Constructor & Destructor Documentation

effectivenessHeatExchangerSource ( const word name,
const word modelType,
const dictionary dict,
const fvMesh mesh 
)
virtual ~effectivenessHeatExchangerSource ( )
inlinevirtual

Destructor.

Definition at line 289 of file effectivenessHeatExchangerSource.H.

References effectivenessHeatExchangerSource::addSup().

Here is the call graph for this function:

Member Function Documentation

TypeName ( "effectivenessHeatExchangerSource"  )

Runtime type information.

virtual void addSup ( fvMatrix< scalar > &  eqn,
const label  fieldI 
)
inlinevirtual

Scalar.

Reimplemented from option.

Definition at line 299 of file effectivenessHeatExchangerSource.H.

References dict, notImplemented, effectivenessHeatExchangerSource::read(), and rho.

Referenced by effectivenessHeatExchangerSource::effectivenessHeatExchangerSource(), and effectivenessHeatExchangerSource::~effectivenessHeatExchangerSource().

Here is the call graph for this function:

Here is the caller graph for this function:

void addSup ( const volScalarField rho,
fvMatrix< scalar > &  eqn,
const label  fieldI 
)
virtual
bool read ( const dictionary dict)
virtual

Read dictionary.

Reimplemented from cellSetOption.

Definition at line 306 of file effectivenessHeatExchangerSource.C.

References cellSetOption::read().

Referenced by effectivenessHeatExchangerSource::addSup().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

scalar secondaryMassFlowRate_
protected

Secondary flow mass rate [kg/s].

Definition at line 209 of file effectivenessHeatExchangerSource.H.

scalar secondaryInletT_
protected

Inlet secondary temperature [K].

Definition at line 212 of file effectivenessHeatExchangerSource.H.

scalar primaryInletT_
protected

Primary air temperature at the heat exchanger inlet [K].

Definition at line 215 of file effectivenessHeatExchangerSource.H.

autoPtr<interpolation2DTable<scalar> > eTable_
protected

2D look up table efficiency = function of primary and secondary

mass flow rates [kg/s]

Definition at line 219 of file effectivenessHeatExchangerSource.H.

word UName_
protected

Name of velocity field; default = U.

Definition at line 222 of file effectivenessHeatExchangerSource.H.

word TName_
protected

Name of temperature field; default = T.

Definition at line 225 of file effectivenessHeatExchangerSource.H.

word phiName_
protected

Name of the flux.

Definition at line 228 of file effectivenessHeatExchangerSource.H.

word faceZoneName_
protected

Name of the faceZone at the heat exchange inlet.

Definition at line 231 of file effectivenessHeatExchangerSource.H.

label zoneID_
protected

Id for the face zone.

Definition at line 234 of file effectivenessHeatExchangerSource.H.

labelList faceId_
protected

Local list of face IDs.

Definition at line 237 of file effectivenessHeatExchangerSource.H.

labelList facePatchId_
protected

Local list of patch ID per face.

Definition at line 240 of file effectivenessHeatExchangerSource.H.

labelList faceSign_
protected

List of +1/-1 representing face flip map (1 use as is, -1 negate)

Definition at line 243 of file effectivenessHeatExchangerSource.H.

scalar faceZoneArea_
protected

Area of the face zone.

Definition at line 246 of file effectivenessHeatExchangerSource.H.


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