liquidFilmModel.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration |
5  \\ / A nd | www.openfoam.com
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8  Copyright (C) 2020 OpenCFD Ltd.
9 -------------------------------------------------------------------------------
10 License
11  This file is part of OpenFOAM.
12 
13  OpenFOAM is free software: you can redistribute it and/or modify it
14  under the terms of the GNU General Public License as published by
15  the Free Software Foundation, either version 3 of the License, or
16  (at your option) any later version.
17 
18  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21  for more details.
22 
23  You should have received a copy of the GNU General Public License
24  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 
26 Class
27  Foam::regionFaModels::liquidFilmModel
28 
29 Description
30  Thin Model Film model.
31 
32 
33 SourceFiles
34  liquidFilmModel.C
35  kinematicThinFilmI.H
36 
37 \*---------------------------------------------------------------------------*/
38 
39 #ifndef liquidFilmModel_H
40 #define liquidFilmModel_H
41 
42 #include "volFieldsFwd.H"
43 #include "liquidFilmBase.H"
44 #include "faMesh.H"
45 #include "filmTurbulenceModel.H"
47 #include "injectionModelList.H"
48 #include "faCFD.H"
49 #include "forceList.H"
50 
51 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
52 
53 namespace Foam
54 {
55 namespace regionModels
56 {
57 namespace areaSurfaceFilmModels
58 {
59 
60 /*---------------------------------------------------------------------------*\
61  Class liquidFilmModel Declaration
62 \*---------------------------------------------------------------------------*/
63 
64 class liquidFilmModel
65 :
66  public liquidFilmBase
67 {
68 protected:
69 
70  // Thermo properties
71 
72  //- Liquid thermo
74 
75  //- Reference tempararure
76  scalar Tref_;
77 
78 
79  // Fields
80 
81  //- Density [kg/m3]
83 
84  //- Dynamic viscosity [Pa.s]
86 
87  //- Film temperature
89 
90  //- Film Heat capacity
92 
93  //- Surface tension [m/s2]
95 
96  //- Film rho*height
98 
99 
100  // Mass exchange sources
101 
102  //- Mass source
104 
105  //- Momentum source
107 
108  //- Normal pressure by particles
110 
111 
112  // Transfer fields
113 
114  //- Film mass for transfer to cloud
116 
117  //- Parcel diameters originating from film to cloud
119 
120 
121  // General properties
122 
123  //- Turbulence model
125 
126 
127  // Sub-models
128 
129  //- Available mass for transfer via sub-models
131 
132  //- Cloud injection
134 
135  //- Transfer with the continuous phase
136  //transferModelList transfer_;
137 
138  //- List of film forces
140 
141 
142 public:
143 
144  //- Runtime type information
145  TypeName("liquidFilmModel");
146 
147 
148  // Constructors
149 
150  //- Construct from components and dict
152  (
153  const word& modelType,
154  const fvPatch& patch,
155  const dictionary& dict
156  );
157 
158  //- No copy construct
159  liquidFilmModel(const liquidFilmModel&) = delete;
160 
161  //- No copy assignment
162  void operator=(const liquidFilmModel&) = delete;
163 
164 
165  //- Destructor
166  virtual ~liquidFilmModel() = default;
167 
168 
169  // Member Functions
170 
171  // Helpers
172 
173  //- Correct thermo
174  void correctThermoFields();
175 
176 
177  // Access
178 
179  //- Access const reference mu
180  const areaScalarField& mu() const;
181 
182  //- Access const reference rho
183  const areaScalarField& rho() const;
184 
185  //- Access const reference sigma
186  const areaScalarField& sigma() const;
187 
188  //- Access const reference Tf
189  const areaScalarField& Tf() const;
190 
191  //- Access const reference Cp
192  const areaScalarField& Cp() const;
193 
194  //- Access to thermo
195  const liquidMixtureProperties& thermo() const;
196 
197  //- Access to reference temperature
198  scalar Tref() const;
199 
200 
201  // Transfer fields - to the primary region (lagragian injection)
202 
203  //- Return the film mass available for transfer to cloud
204  virtual const volScalarField& cloudMassTrans() const;
205 
206  //- Return the parcel diameters originating from film to cloud
207  virtual const volScalarField& cloudDiameterTrans() const;
208 
209 
210  // Evolution
211 
212  //- Pre-evolve film
213  virtual void preEvolveRegion();
214 
215  //- Post-evolve film
216  virtual void postEvolveRegion();
217 
218 
219  // I-O
220 
221  //- Provide some feedback
222  virtual void info();
223 };
224 
225 
226 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
227 
228 } // End namespace areaSurfaceFilmModels
229 } // End namespace regionModels
230 } // End namespace Foam
231 
232 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
233 
234 
235 #endif
236 
237 // ************************************************************************* //
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::thermo
const liquidMixtureProperties & thermo() const
Access to thermo.
Definition: liquidFilmModel.C:290
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::TypeName
TypeName("liquidFilmModel")
Runtime type information.
volFieldsFwd.H
Foam::regionModels::areaSurfaceFilmModels::liquidFilmBase
Definition: liquidFilmBase.H:60
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Cp_
areaScalarField Cp_
Film Heat capacity.
Definition: liquidFilmModel.H:90
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::forces_
forceList forces_
Transfer with the continuous phase.
Definition: liquidFilmModel.H:138
Foam::word
A class for handling words, derived from Foam::string.
Definition: word.H:65
faCFD.H
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Tref
scalar Tref() const
Access to reference temperature.
Definition: liquidFilmModel.C:296
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::cloudMassTrans
virtual const volScalarField & cloudMassTrans() const
Return the film mass available for transfer to cloud.
Definition: liquidFilmModel.C:302
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::preEvolveRegion
virtual void preEvolveRegion()
Pre-evolve film.
Definition: liquidFilmModel.C:314
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Tref_
scalar Tref_
Reference tempararure.
Definition: liquidFilmModel.H:75
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Cp
const areaScalarField & Cp() const
Access const reference Cp.
Definition: liquidFilmModel.C:284
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::postEvolveRegion
virtual void postEvolveRegion()
Post-evolve film.
Definition: liquidFilmModel.C:348
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::availableMass_
scalarField availableMass_
Available mass for transfer via sub-models.
Definition: liquidFilmModel.H:129
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::pnSp_
areaScalarField pnSp_
Normal pressure by particles.
Definition: liquidFilmModel.H:108
faMesh.H
Foam::regionModels::areaSurfaceFilmModels::injectionModelList
Definition: injectionModelList.H:57
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::correctThermoFields
void correctThermoFields()
Correct thermo.
Definition: liquidFilmModel.C:50
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::operator=
void operator=(const liquidFilmModel &)=delete
No copy assignment.
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::liquidFilmModel
liquidFilmModel(const word &modelType, const fvPatch &patch, const dictionary &dict)
Construct from components and dict.
Definition: liquidFilmModel.C:87
Foam::Field< scalar >
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::rhoSp_
areaScalarField rhoSp_
Mass source.
Definition: liquidFilmModel.H:102
Foam::fvPatch
A finiteVolume patch using a polyPatch and a fvBoundaryMesh.
Definition: fvPatch.H:65
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::~liquidFilmModel
virtual ~liquidFilmModel()=default
Destructor.
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel
Definition: liquidFilmModel.H:63
dict
dictionary dict
Definition: searchingEngine.H:14
Foam::dictionary
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:123
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::rho
const areaScalarField & rho() const
Access const reference rho.
Definition: liquidFilmModel.C:266
liquidFilmBase.H
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::thermo_
liquidMixtureProperties thermo_
Liquid thermo.
Definition: liquidFilmModel.H:72
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Tf_
areaScalarField Tf_
Film temperature.
Definition: liquidFilmModel.H:87
Foam
Namespace for OpenFOAM.
Definition: atmBoundaryLayer.C:33
Foam::regionModels::areaSurfaceFilmModels::forceList
Definition: forceList.H:56
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::cloudDiameterTrans_
volScalarField cloudDiameterTrans_
Parcel diameters originating from film to cloud.
Definition: liquidFilmModel.H:117
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::turbulence_
autoPtr< filmTurbulenceModel > turbulence_
Turbulence model.
Definition: liquidFilmModel.H:123
Foam::autoPtr
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: HashPtrTable.H:53
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::mu_
areaScalarField mu_
Dynamic viscosity [Pa.s].
Definition: liquidFilmModel.H:84
Foam::liquidMixtureProperties
A mixture of liquids.
Definition: liquidMixtureProperties.H:68
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::hRho_
areaScalarField hRho_
Film rho*height.
Definition: liquidFilmModel.H:96
Foam::foamVersion::patch
const std::string patch
OpenFOAM patch number as a std::string.
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::USp_
areaVectorField USp_
Momentum source.
Definition: liquidFilmModel.H:105
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::info
virtual void info()
Provide some feedback.
Definition: liquidFilmModel.C:356
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::sigma_
areaScalarField sigma_
Surface tension [m/s2].
Definition: liquidFilmModel.H:93
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::rho_
areaScalarField rho_
Density [kg/m3].
Definition: liquidFilmModel.H:81
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::cloudDiameterTrans
virtual const volScalarField & cloudDiameterTrans() const
Return the parcel diameters originating from film to cloud.
Definition: liquidFilmModel.C:308
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::mu
const areaScalarField & mu() const
Access const reference mu.
Definition: liquidFilmModel.C:260
Foam::GeometricField< scalar, faPatchField, areaMesh >
liquidMixtureProperties.H
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::Tf
const areaScalarField & Tf() const
Access const reference Tf.
Definition: liquidFilmModel.C:278
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::cloudMassTrans_
volScalarField cloudMassTrans_
Film mass for transfer to cloud.
Definition: liquidFilmModel.H:114
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::injection_
injectionModelList injection_
Cloud injection.
Definition: liquidFilmModel.H:132
Foam::regionModels::areaSurfaceFilmModels::liquidFilmModel::sigma
const areaScalarField & sigma() const
Access const reference sigma.
Definition: liquidFilmModel.C:272