FreeFOAM The Cross-Platform CFD Toolkit
blobsSwirlInjector.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 | Copyright (C) 1991-2010 OpenCFD Ltd.
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::blobsSwirlInjector
26 
27 Description
28  Model for parcels injection in pressure Swirl Atomizers.
29 
30  Accurate description in:
31  @verbatim
32  Z. Han, S. Parrish, P.V. Farrell, R.D. Reitz
33  "Modeling Atomization Processes Of Pressure Swirl Hollow-Cone Fuel Sprays"
34  Atomization and Sprays, vol. 7, pp. 663-684, 1997
35  @endverbatim
36  and
37  @verbatim
38  L. Allocca, G. Bella, A. De Vita, L. Di Angelo
39  "Experimental Validation of a GDI Spray Model"
40  SAE Technical Paper Series, 2002-01-1137
41  @endverbatim
42 
43 \*---------------------------------------------------------------------------*/
44 
45 #ifndef blobsSwirlInjector_H
46 #define blobsSwirlInjector_H
47 
49 #include <OpenFOAM/scalarList.H>
50 
51 
52 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
53 
54 namespace Foam
55 {
56 /*---------------------------------------------------------------------------*\
57  Class blobsSwirlInjector Declaration
58 \*---------------------------------------------------------------------------*/
59 
61 :
62  public injectorModel
63 {
64 
65 private:
66 
67  // Private data
68 
69  dictionary blobsSwirlInjectorDict_;
70 
71  scalarList coneAngle_;
72  scalarList coneInterval_;
73 
74  scalarList cD_;
75  scalarList cTau_;
76  scalarList A_;
77 
78  // The initial spray angle for the parcels
79  mutable scalar angle_;
80 
81  // The initial velocity for the parcels
82  mutable scalar u_;
83 
84  // The orifice-air cone area ratio
85 
86  mutable scalar x_;
87 
88  // The initial sheet tickness
89 
90  mutable scalar h_;
91 
92  // private member functions
93 
94  scalar kv
95  (
96  const label inj
97  ) const;
98 
99  scalar deltaPressureInj(const scalar time, const label inj) const;
100  scalar averagePressure(const label inj) const;
101 
102  void calculateHX
103  (
104  const label inj,
105  const scalar massFlow,
106  const scalar dPressure,
107  const scalar time
108  ) const;
109 
110 public:
111 
112  //- Runtime type information
113  TypeName("blobsSwirlInjector");
114 
115 
116  // Constructors
117 
118  //- Construct from components
120  (
121  const dictionary& dict,
122  spray& sm
123  );
124 
125 
126  // Destructor
127 
129 
130 
131  // Member Functions
132 
133  //- Return the injected droplet diameter
134  scalar d0(const label injector, const scalar time) const;
135 
136  //- Return the spray angle of the injector
138  (
139  const label injector,
140  const label hole,
141  const scalar time,
142  const scalar d
143  ) const;
144 
145  scalar velocity
146  (
147  const label i,
148  const scalar time
149  ) const;
150 
151  scalar averageVelocity
152  (
153  const label i
154  ) const;
155 
156 
157 };
158 
159 
160 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
161 
162 } // End namespace Foam
163 
164 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
165 
166 #endif
167 
168 // ************************ vim: set sw=4 sts=4 et: ************************ //