Kusters.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) 2022-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::populationBalance::breakupModels::Kusters
26 
27 Description
28  Solid particle breakage model of Kusters (1991). The breakage rate is
29  calculated by
30 
31  \f[
32  \sqrt{\frac{4}{15\pi}}\sqrt{\frac{\epsilon}{\nu}}
33  \exp\left(-\frac{\epsilon_{crit}}{\epsilon}\right)
34  \f]
35 
36  \f[
37  \epsilon_{crit}=\frac{B}{R_{ci}}
38  \f]
39 
40  \f[
41  R_{ci} = 0.5d_{p}\left(\frac{n_i}{k_c}\right)^{1/D_f}
42  \f]
43 
44  \f[
45  n_i = \left(\frac{d_i}{d_{p}}\right)^{D_f}
46  \f]
47 
48  where
49 
50  \vartable
51  B | Critical force parameter for breakage [m3/s3]
52  d_i | Diameter of transported particle [m]
53  d_{p} | Diameter of primary particles [m]
54  D_f | Fractal dimension of particle [-]
55  k_c | Constant relative to packing density [-]
56  n_i | Number of primary particles in agglomerate [-]
57  \nu | Kinematic viscosity of continuous phase [m2/s]
58  \epsilon | Continuous phase turbulent dissipation rate [m2/s3]
59  \epsilon_{crit} | Critical turbulent dissipation rate [m2/s3]
60  \endvartable
61 
62  Reference:
63  \verbatim
64  Kusters, K. A. (1991).
65  The influence of turbulence on aggregation of small particles in
66  agitated vessels.
67  PhD Thesis
68  \endverbatim
69 
70 SourceFiles
71  Kusters.C
72 
73 \*---------------------------------------------------------------------------*/
74 
75 #ifndef Kusters_H
76 #define Kusters_H
77 
79 
80 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
81 
82 namespace Foam
83 {
84 namespace populationBalance
85 {
86 namespace breakupModels
87 {
88 
89 /*---------------------------------------------------------------------------*\
90  Class Kusters Declaration
91 \*---------------------------------------------------------------------------*/
92 
93 class Kusters
94 :
95  public daughterSizeDistribution
96 {
97  // Private Data
98 
99  //- Model coefficient
101 
102  //- Primary particle diameter
103  dimensionedScalar dP_;
104 
105  //- Packing density coefficient
106  dimensionedScalar kc_;
107 
108  //- Fractal dimension
109  dimensionedScalar Df_;
110 
111 
112 public:
113 
114  //- Runtime type information
115  TypeName("Kusters");
116 
117  // Constructor
118 
119  Kusters
120  (
121  const populationBalanceModel& popBal,
122  const dictionary& dict
123  );
124 
125 
126  //- Destructor
127  virtual ~Kusters()
128  {}
129 
130 
131  // Member Functions
132 
133  //- Return the breakup rate for a group
134  virtual tmp<volScalarField::Internal> rate(const label i) const;
135 };
136 
137 
138 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
139 
140 } // End namespace breakupModels
141 } // End namespace populationBalance
142 } // End namespace Foam
143 
144 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
145 
146 #endif
147 
148 // ************************************************************************* //
const populationBalanceModel & popBal() const
Return reference to the populationBalanceModel.
Definition: breakupModel.H:112
TypeName("Kusters")
Runtime type information.
Kusters(const populationBalanceModel &popBal, const dictionary &dict)
Definition: Kusters.C:48
virtual tmp< volScalarField::Internal > rate(const label i) const
Return the breakup rate for a group.
Definition: Kusters.C:64
A class for managing temporary objects.
Definition: tmp.H:55
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
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
dictionary dict