TwoResistanceHeatTransferPhaseSystem.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 Class
25  Foam::TwoResistanceHeatTransferPhaseSystem
26 
27 Description
28  Class which models interfacial heat transfer between a number of phases.
29  Two heat transfer models are stored at each interface, one for each phase.
30  This permits definition of an interface temperature with which heat transfer
31  occurs. It also allows derived systems to define other thermodynamic
32  properties at the interface and therefore represent phase changes.
33 
34 See also
35  OneResistanceHeatTransferPhaseSystem
36 
37 SourceFiles
38  TwoResistanceHeatTransferPhaseSystem.C
39 
40 \*---------------------------------------------------------------------------*/
41 
42 #ifndef TwoResistanceHeatTransferPhaseSystem_H
43 #define TwoResistanceHeatTransferPhaseSystem_H
44 
45 #include "phaseSystem.H"
46 
47 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48 
49 namespace Foam
50 {
51 
52 template<class modelType>
53 class BlendedInterfacialModel;
54 
55 class blendingMethod;
56 class heatTransferModel;
57 
58 /*---------------------------------------------------------------------------*\
59  Class TwoResistanceHeatTransferPhaseSystem Declaration
60 \*---------------------------------------------------------------------------*/
61 
62 template<class BasePhaseSystem>
64 :
65  public BasePhaseSystem
66 {
67 protected:
68 
69  // Protected typedefs
70 
71  typedef HashTable
72  <
77 
78 
79  // Protected data
80 
81  //- Interface temperatures
83 
84  // Sub Models
85 
86  //- Heat transfer models
87  heatTransferModelTable heatTransferModels_;
88 
89 
90 public:
91 
92  // Constructors
93 
94  //- Construct from fvMesh
96 
97 
98  //- Destructor
100 
101 
102  // Member Functions
103 
104  //- Return the heat transfer matrices
106 
107  //- Correct the energy transport e.g. alphat and Tf
108  virtual void correctEnergyTransport();
109 
110  //- Correct the interface thermodynamics
111  virtual void correctInterfaceThermo();
112 
113  //- Read base phaseProperties dictionary
114  virtual bool read();
115 };
116 
117 
118 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
119 
120 } // End namespace Foam
121 
122 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
123 
124 #ifdef NoRepository
126 #endif
127 
128 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
129 
130 #endif
131 
132 // ************************************************************************* //
Class which models interfacial heat transfer between a number of phases. Two heat transfer models are...
heatTransferModelTable heatTransferModels_
Heat transfer models.
An ordered pair of two objects of type <T> with first() and second() elements.
Definition: contiguous.H:49
virtual void correctInterfaceThermo()
Correct the interface thermodynamics.
An STL-conforming hash table.
Definition: HashTable.H:61
HashTable< Pair< autoPtr< BlendedInterfacialModel< heatTransferModel > > >, phasePairKey, phasePairKey::hash > heatTransferModelTable
virtual autoPtr< phaseSystem::heatTransferTable > heatTransfer() const
Return the heat transfer matrices.
HashPtrTable< volScalarField, phasePairKey, phasePairKey::hash > Tf_
Interface temperatures.
Mesh data needed to do the Finite Volume discretisation.
Definition: fvMesh.H:78
virtual ~TwoResistanceHeatTransferPhaseSystem()
Destructor.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: PtrList.H:52
virtual void correctEnergyTransport()
Correct the energy transport e.g. alphat and Tf.
Namespace for OpenFOAM.
TwoResistanceHeatTransferPhaseSystem(const fvMesh &)
Construct from fvMesh.
virtual bool read()
Read base phaseProperties dictionary.