FreeFOAM The Cross-Platform CFD Toolkit
LiquidEvaporation.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 | Copyright (C) 2009-2010 OpenCFD Ltd.
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::LiquidEvaporation
26 
27 Description
28  Liquid evaporation model
29  - uses ideal gas assumption
30 
31 \*---------------------------------------------------------------------------*/
32 
33 #ifndef LiquidEvaporation_H
34 #define LiquidEvaporation_H
35 
38 
39 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
40 
41 namespace Foam
42 {
43 /*---------------------------------------------------------------------------*\
44  Class LiquidEvaporation Declaration
45 \*---------------------------------------------------------------------------*/
46 
47 template<class CloudType>
49 :
50  public PhaseChangeModel<CloudType>
51 {
52 protected:
53 
54  // Protected data
55 
56  //- Global liquid properties data
58 
59  //- List of active liquid names
61 
62  //- Mapping between liquid and carrier species
64 
65  //- Mapping between local and global liquid species
67 
68 
69  // Protected member functions
70 
71  //- Sherwood number as a function of Reynolds and Schmidt numbers
72  scalar Sh(const scalar Re, const scalar Sc) const;
73 
74  //- Calculate the carrier phase component volume fractions at cellI
75  scalarField calcXc(const label cellI) const;
76 
77 
78 public:
79 
80  //- Runtime type information
81  TypeName("LiquidEvaporation");
82 
83 
84  // Constructors
85 
86  //- Construct from dictionary
88  (
89  const dictionary& dict,
90  CloudType& cloud
91  );
92 
93 
94  //- Destructor
95  virtual ~LiquidEvaporation();
96 
97 
98  // Member Functions
99 
100  //- Flag to indicate whether model activates phase change model
101  virtual bool active() const;
102 
103  //- Update model
104  virtual void calculate
105  (
106  const scalar dt,
107  const label cellI,
108  const scalar Re,
109  const scalar d,
110  const scalar nu,
111  const scalar T,
112  const scalar Ts,
113  const scalar pc,
114  scalarField& dMassPC
115  ) const;
116 };
117 
118 
119 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
120 
121 } // End namespace Foam
122 
123 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
124 
125 #ifdef NoRepository
126 # include "LiquidEvaporation.C"
127 #endif
128 
129 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
130 
131 #endif
132 
133 // ************************ vim: set sw=4 sts=4 et: ************************ //