LemmertChawla.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) 2016-2025 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::wallBoilingModels::nucleationSiteModels::LemmertChawla
26 
27 Description
28  Lemmert & Chawla function for nucleation site density,
29  correlation by Egorov & Menter.
30 
31  References:
32  \verbatim
33  Lemmert, M., & Chawla, J. M. (1977).
34  Influence of flow velocity on surface boiling heat transfer coefficient.
35  Heat Transfer in Boiling, 237, 247.
36 
37  Egorov, Y., & Menter, F. (2004).
38  Experimental implementation of the RPI wall boiling model in CFX-5.6.
39  Staudenfeldweg, 12, 83624.
40  Technical Report ANSYS/TR-04-10, ANSYS Gmbh.
41  \endverbatim
42 
43 SourceFiles
44  LemmertChawla.C
45 
46 \*---------------------------------------------------------------------------*/
47 
48 #ifndef LemmertChawla_H
49 #define LemmertChawla_H
50 
51 #include "nucleationSiteModel.H"
52 
53 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
54 
55 namespace Foam
56 {
57 namespace wallBoilingModels
58 {
59 namespace nucleationSiteModels
60 {
61 
62 /*---------------------------------------------------------------------------*\
63  Class LemmertChawla Declaration
64 \*---------------------------------------------------------------------------*/
65 
66 class LemmertChawla
67 :
68  public nucleationSiteModel
69 {
70  // Private Data
71 
72  //- Nucleation density coefficient
73  const dimensionedScalar Cn_;
74 
75  //- Reference nucleation density
76  const dimensionedScalar NRef_;
77 
78  //- Reference temperature difference
79  const dimensionedScalar deltaTRef_;
80 
81 
82  // Private Member Functions
83 
84  //- Calculate and return the nucleation site density
85  template<class ScalarFieldType>
86  tmp<ScalarFieldType> calculate
87  (
88  const ScalarFieldType& Tsatw,
89  const ScalarFieldType& Tw
90  ) const;
91 
92 
93 public:
94 
95  //- Runtime type information
96  TypeName("LemmertChawla");
97 
98  // Constructors
99 
100  //- Construct from a dictionary
101  LemmertChawla(const dictionary& dict);
102 
103  //- Copy construct
104  LemmertChawla(const LemmertChawla& model);
105 
106  //- Construct and return a clone
107  virtual autoPtr<nucleationSiteModel> clone() const
108  {
109  return autoPtr<nucleationSiteModel>(new LemmertChawla(*this));
110  }
111 
112 
113  //- Destructor
114  virtual ~LemmertChawla();
115 
116 
117  // Member Functions
118 
119  //- Calculate and return the nucleation-site density
121  (
122  const phaseModel& liquid,
123  const phaseModel& vapour,
124  const label patchi,
125  const scalarField& Tl,
126  const scalarField& Tsatw,
127  const scalarField& L,
128  const scalarField& dDep,
129  const scalarField& fDep
130  ) const;
131 
132  //- Calculate and return the nucleation-site density
134  (
135  const phaseModel& liquid,
136  const phaseModel& vapor,
137  const phaseModel& solid,
138  const volScalarField::Internal& Tf,
139  const volScalarField::Internal& Tsatw,
140  const volScalarField::Internal& L,
141  const volScalarField::Internal& dDep,
142  const volScalarField::Internal& fDep
143  ) const;
144 
145  //- Calculate and return the nucleation-site density
147  (
148  const phaseModel& liquid,
149  const phaseModel& vapour,
150  const phaseModel& solid,
151  const volScalarField& Tf,
152  const volScalarField& Tsatw,
153  const volScalarField& L,
154  const volScalarField& dDep,
155  const volScalarField& fDep
156  ) const;
157 
158  //- Write to stream
159  virtual void write(Ostream& os) const;
160 };
161 
162 
163 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
164 
165 } // End namespace nucleationSiteModels
166 } // End namespace wallBoilingModels
167 } // End namespace Foam
168 
169 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
170 
171 #endif
172 
173 // ************************************************************************* //
Field with dimensions and associated with geometry type GeoMesh which is used to size the field and a...
Generic GeometricField class.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Definition: Ostream.H:57
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Definition: autoPtr.H:51
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Definition: dictionary.H:162
Generic thermophysical properties class for a liquid in which the functions and coefficients for each...
Definition: liquid.H:53
A class for managing temporary objects.
Definition: tmp.H:55
Base class for nucleation site density models.
Lemmert & Chawla function for nucleation site density, correlation by Egorov & Menter.
Definition: LemmertChawla.H:68
TypeName("LemmertChawla")
Runtime type information.
virtual tmp< scalarField > nucleationSiteDensity(const phaseModel &liquid, const phaseModel &vapour, const label patchi, const scalarField &Tl, const scalarField &Tsatw, const scalarField &L, const scalarField &dDep, const scalarField &fDep) const
Calculate and return the nucleation-site density.
virtual void write(Ostream &os) const
Write to stream.
virtual autoPtr< nucleationSiteModel > clone() const
Construct and return a clone.
LemmertChawla(const dictionary &dict)
Construct from a dictionary.
Definition: LemmertChawla.C:71
label patchi
Namespace for OpenFOAM.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Definition: label.H:59
dictionary dict