drippingInjection.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) 2011-2017 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
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
26Class
27 Foam::regionModels::surfaceFilmModels::drippingInjection
28
29Description
30 Film dripping mass transfer model.
31
32 If the film mass exceeds that needed to generate a valid parcel, the
33 equivalent mass is removed from the film.
34
35 New parcel diameters are sampled from a PDF.
36
37SourceFiles
38 drippingInjection.C
39
40\*---------------------------------------------------------------------------*/
41
42#ifndef drippingInjection_H
43#define drippingInjection_H
44
45#include "injectionModel.H"
46#include "distributionModel.H"
47#include "Random.H"
48
49// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
50
51namespace Foam
52{
53namespace regionModels
54{
55namespace surfaceFilmModels
56{
57
58/*---------------------------------------------------------------------------*\
59 Class drippingInjection Declaration
60\*---------------------------------------------------------------------------*/
63:
64 public injectionModel
65{
66private:
67
68 // Private member functions
69
70 //- No copy construct
71 drippingInjection(const drippingInjection&) = delete;
72
73 //- No copy assignment
74 void operator=(const drippingInjection&) = delete;
75
76
77protected:
78
79 // Protected data
80
81 //- Stable film thickness - drips only formed if thickness
82 // exceeds this threshold value
83 scalar deltaStable_;
84
85 //- Number of particles per parcel
87
88 //- Random number generator
90
91 //- Parcel size PDF model
94
95 //- Diameters of particles to inject into the dripping
97
98
99public:
100
101 //- Runtime type information
102 TypeName("drippingInjection");
103
104
105 // Constructors
106
107 //- Construct from surface film model
109 (
111 const dictionary& dict
112 );
113
114
115 //- Destructor
116 virtual ~drippingInjection();
117
118
119 // Member Functions
120
121 // Evolution
122
123 //- Correct
124 virtual void correct
125 (
126 scalarField& availableMass,
127 scalarField& massToInject,
128 scalarField& diameterToInject
129 );
130};
131
132
133// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
134
135} // End namespace surfaceFilmModels
136} // End namespace regionModels
137} // End namespace Foam
138
139// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
140
141#endif
142
143// ************************************************************************* //
Random number generator.
Definition: Random.H:60
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: autoPtr.H:66
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
scalar particlesPerParcel_
Number of particles per parcel.
TypeName("drippingInjection")
Runtime type information.
scalar deltaStable_
Stable film thickness - drips only formed if thickness.
const autoPtr< distributionModel > parcelDistribution_
Parcel size PDF model.
scalarList diameter_
Diameters of particles to inject into the dripping.
const surfaceFilmRegionModel & film() const
Return const access to the film surface film model.
Base class for film injection models, handling mass transfer from the film.
const dictionary & dict() const
Return const access to the cloud dictionary.
Definition: subModelBase.C:113
Namespace for OpenFOAM.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73