LaakkonenAlopaeusAittamaaDsd.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) 2018-2020 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::diameterModels::daughterSizeDistributionModels::
26  LaakkonenAlopaeusAittamaaDsd
27 
28 Description
29  Daughter size distribution model used by Laakkonen et al. (2006). Note that
30  the diameters in the original expression was substituted by bubble volumes
31  giving
32 
33  \f[
34  \left(9 + \frac{33}{2}C_4 + 9C_4^2 + \frac{3}{2}C_4^3\right)
35  \times \left(\frac{1}{3}\right) \left(\frac{1}{v_j}\right)
36  \left(\frac{v_i}{v_j}\right)^{2} \left(1 - \frac{v_i}{v_j}\right)^{C_4}
37  \f]
38 
39  where
40 
41  \vartable
42  v_i | Volume of daughter bubble i [m]
43  v_j | Volume of mother bubble j [m]
44  \endvartable
45 
46  References:
47  \verbatim
48  Laakkonen, M., Alopaeus, V., & Aittamaa, J. (2006).
49  Validation of bubble breakage, coalescence and mass transfer models for
50  gas-liquid dispersion in agitated vessel.
51  Chemical engineering science, 61(1), 218-228.
52  Eq. 3, p. 220.
53  \endverbatim
54 
55 Usage
56  \table
57  Property | Description | Required | Default value
58  C4 | Coefficient C4 | no | 4.3
59  \endtable
60 
61 SourceFiles
62  LaakkonenAlopaeusAittamaaBinaryBreakup.C
63 
64 \*---------------------------------------------------------------------------*/
65 
66 #ifndef LaakkonenAlopaeusAittamaaDsd_H
67 #define LaakkonenAlopaeusAittamaaDsd_H
68 
70 
71 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
72 
73 namespace Foam
74 {
75 namespace diameterModels
76 {
77 namespace daughterSizeDistributionModels
78 {
79 
80 /*---------------------------------------------------------------------------*\
81  Class LaakkonenAlopaeusAittamaaDsd Declaration
82 \*---------------------------------------------------------------------------*/
83 
84 class LaakkonenAlopaeusAittamaaDsd
85 :
86  public daughterSizeDistributionModel
87 {
88  // Private Data
89 
90  //- Optional coefficient C4, defaults to 4.3
92 
93 
94 public:
95 
96  //- Runtime type information
97  TypeName("LaakkonenAlopaeusAittamaa");
98 
99 
100  // Constructor
101 
103  (
104  const breakupModel& breakup,
105  const dictionary& dict
106  );
107 
108 
109  //- Destructor
111 
112 
113  // Member Functions
114 
115  //- Calculate antiderivative
117  (
118  const dimensionedScalar& xk,
119  const dimensionedScalar& v,
120  const dimensionedScalar& bndr,
122  ) const;
123 
124  //- Calculate contribution to sizeGroup i due to breakup in sizeGroup k
125  virtual dimensionedScalar calcNik(const label i, const label k) const;
126 };
127 
128 
129 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
130 
131 } // End namespace daughterSizeDistributionModels
132 } // End namespace diameterModels
133 } // End namespace Foam
134 
135 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
136 
137 #endif
138 
139 // ************************************************************************* //
dictionary dict
dimensionedScalar antiderivative(const dimensionedScalar &xk, const dimensionedScalar &v, const dimensionedScalar &bndr, const dimensionedScalar range) const
Calculate antiderivative.
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
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition: dictionary.H:158
label k
Boltzmann constant.
scalar range
Base class for breakup models which give a total breakup rate and a separate daughter size distributi...
Definition: breakupModel.H:52
virtual dimensionedScalar calcNik(const label i, const label k) const
Calculate contribution to sizeGroup i due to breakup in sizeGroup k.
LaakkonenAlopaeusAittamaaDsd(const breakupModel &breakup, const dictionary &dict)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
TypeName("LaakkonenAlopaeusAittamaa")
Runtime type information.
Namespace for OpenFOAM.