LISAAtomization.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-2016 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::LISAAtomization
28
29Group
30 grpLagrangianIntermediateAtomizationSubModels
31
32Description
33 Primary Breakup Model for pressure swirl atomizers.
34
35 Accurate description in
36 \verbatim
37 P.K. Senecal, D.P. Schmidt, I. Nouar, C.J. Rutland, R.D. Reitz, M. Corradini
38 "Modeling high-speed viscous liquid sheet atomization"
39 International Journal of Multiphase Flow 25 (1999) pags. 1073-1097
40 \endverbatim
41
42 and
43
44 \verbatim
45 D.P. Schmidt, I. Nouar, P.K. Senecal, C.J. Rutland, J.K. Martin, R.D. Reitz
46 "Pressure-Swirl Atomization in the Near Field"
47 SAE Techical Paper Series 1999-01-0496
48 \endverbatim
49
50\*---------------------------------------------------------------------------*/
51
52#ifndef LISAAtomization_H
53#define LISAAtomization_H
54
55#include "AtomizationModel.H"
56
57// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
58
59namespace Foam
60{
61
62/*---------------------------------------------------------------------------*\
63 Class LISAAtomization Declaration
64\*---------------------------------------------------------------------------*/
65
66template<class CloudType>
68:
69 public AtomizationModel<CloudType>
70{
71
72public:
73
74 //- Enumeration for SMD calculations
75 enum SMDMethods
76 {
77 method1,
79 };
80
81
82private:
83
84 // Private data
85
86 scalar Cl_;
87 scalar cTau_;
88 scalar Q_;
89 scalar lisaExp_;
90 vector injectorDirection_;
91 word SMDCalcMethod_;
92
93 SMDMethods SMDMethod_;
94
95
96public:
97
98 //- Runtime type information
99 TypeName("LISA");
100
101
102 // Constructors
103
104 //- Construct from dictionary
106
107 //- Construct copy
109
110 //- Construct and return a clone
112 {
114 (
116 );
117 }
118
119
120 //- Destructor
121 virtual ~LISAAtomization();
122
123
124 // Member Functions
125
126 //- Initial value of liquidCore
127 virtual scalar initLiquidCore() const;
128
129 //- Flag to indicate if chi needs to be calculated
130 virtual bool calcChi() const;
131
132 virtual void update
133 (
134 const scalar dt,
135 scalar& d,
136 scalar& liquidCore,
137 scalar& tc,
138 const scalar rho,
139 const scalar mu,
140 const scalar sigma,
141 const scalar volFlowRate,
142 const scalar rhoAv,
143 const scalar Urel,
144 const vector& pos,
145 const vector& injectionPos,
146 const scalar pAmbient,
147 const scalar chi,
149 ) const;
150};
151
152
153// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
154
155} // End namespace Foam
156
157// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
158
159#ifdef NoRepository
160 #include "LISAAtomization.C"
161#endif
162
163// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
164
165#endif
166
167// ************************************************************************* //
Templated atomization model class.
Templated base class for dsmc cloud.
Definition: DSMCCloud.H:75
Primary Breakup Model for pressure swirl atomizers.
TypeName("LISA")
Runtime type information.
virtual autoPtr< AtomizationModel< CloudType > > clone() const
Construct and return a clone.
virtual ~LISAAtomization()
Destructor.
virtual bool calcChi() const
Flag to indicate if chi needs to be calculated.
virtual scalar initLiquidCore() const
Initial value of liquidCore.
SMDMethods
Enumeration for SMD calculations.
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
A class for handling words, derived from Foam::string.
Definition: word.H:68
const volScalarField & mu
mesh update()
Urel
Definition: pEqn.H:56
Namespace for OpenFOAM.
dimensionedScalar pos(const dimensionedScalar &ds)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73
Random rndGen
Definition: createFields.H:23