constantNucleation.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 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::nucleationModels::constantNucleation
26 
27 Description
28  Constant nucleation rate within all classes. Used for verification and
29  validation of the nucleation formulation implemented in the
30  populationBalanceModel class. Rate is calculated from fvOptions mass source.
31 
32 SourceFiles
33  constant.C
34 
35 \*---------------------------------------------------------------------------*/
36 
37 #ifndef constantNucleation_H
38 #define constantNucleation_H
39 
40 #include "nucleationModel.H"
41 
42 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
43 
44 namespace Foam
45 {
46 namespace diameterModels
47 {
48 namespace nucleationModels
49 {
50 
51 /*---------------------------------------------------------------------------*\
52  Class constantNucleation Declaration
53 \*---------------------------------------------------------------------------*/
54 
56 :
57  public nucleationModel
58 {
59  // Private data
60 
61  //- Departure diameter
63 
64  //- Velocity group in which the nucleation occurs
65  const velocityGroup& velGroup_;
66 
67 
68 public:
69 
70  //- Runtime type information
71  TypeName("constant");
72 
73  // Constructor
74 
76  (
78  const dictionary& dict
79  );
80 
81 
82  //- Destructor
83  virtual ~constantNucleation()
84  {}
85 
86 
87  // Member Functions
88 
89  //- Correct diameter independent expressions
90  virtual void correct();
91 
92  //- Add to nucleationRate
93  virtual void addToNucleationRate
94  (
95  volScalarField& nucleationRate,
96  const label i
97  );
98 };
99 
100 
101 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
102 
103 } // End namespace nucleationModels
104 } // End namespace diameterModels
105 } // End namespace Foam
106 
107 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
108 
109 #endif
110 
111 // ************************************************************************* //
TypeName("constant")
Runtime type information.
dictionary dict
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:137
Class that solves the univariate population balance equation by means of a class method (also called ...
This diameterModel is intended for use with a populationBalanceModel in order to simulate polydispers...
virtual void addToNucleationRate(volScalarField &nucleationRate, const label i)
Add to nucleationRate.
virtual void correct()
Correct diameter independent expressions.
Base class for nucleation models.
constantNucleation(const populationBalanceModel &popBal, const dictionary &dict)
Constant nucleation rate within all classes. Used for verification and validation of the nucleation f...
const populationBalanceModel & popBal() const
Return reference to the populationBalanceModel.
Namespace for OpenFOAM.