![]() |
|
00001 /*---------------------------------------------------------------------------*\ 00002 ========= | 00003 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox 00004 \\ / O peration | 00005 \\ / A nd | Copyright (C) 1991-2005 OpenCFD Ltd. 00006 \\/ M anipulation | 00007 ------------------------------------------------------------------------------- 00008 License 00009 This file is part of OpenFOAM. 00010 00011 OpenFOAM is free software; you can redistribute it and/or modify it 00012 under the terms of the GNU General Public License as published by the 00013 Free Software Foundation; either version 2 of the License, or (at your 00014 option) any later version. 00015 00016 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT 00017 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00018 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00019 for more details. 00020 00021 You should have received a copy of the GNU General Public License 00022 along with OpenFOAM; if not, write to the Free Software Foundation, 00023 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00024 00025 Class 00026 blobsSwirlInjector 00027 00028 Description 00029 00030 Model for parcels injection in pressure Swirl Atomizers. 00031 Accurate description in: 00032 00033 Z. Han, S. Parrish, P.V. Farrell, R.D. Reitz 00034 "Modeling Atomization Processes Of Pressure Swirl Hollow-Cone Fuel Sprays" 00035 Atomization and Sprays, vol. 7, pp. 663-684, 1997 00036 00037 and 00038 00039 L. Allocca, G. Bella, A. De Vita, L. Di Angelo 00040 "Experimental Validation of a GDI Spray Model" 00041 SAE Technical Paper Series, 2002-01-1137 00042 00043 \*---------------------------------------------------------------------------*/ 00044 00045 #ifndef blobsSwirlInjector_H 00046 #define blobsSwirlInjector_H 00047 00048 #include "injectorModel.H" 00049 #include "scalarList.H" 00050 00051 00052 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00053 00054 namespace Foam 00055 { 00056 /*---------------------------------------------------------------------------*\ 00057 Class blobsSwirlInjector Declaration 00058 \*---------------------------------------------------------------------------*/ 00059 00060 class blobsSwirlInjector 00061 : 00062 public injectorModel 00063 { 00064 00065 private: 00066 00067 // Private data 00068 00069 dictionary blobsSwirlInjectorDict_; 00070 00071 scalarList coneAngle_; 00072 scalarList coneInterval_; 00073 00074 scalarList cD_; 00075 scalarList cTau_; 00076 scalarList A_; 00077 00078 // The initial spray angle for the parcels 00079 mutable scalar angle_; 00080 00081 // The initial velocity for the parcels 00082 mutable scalar u_; 00083 00084 // The orifice-air cone area ratio 00085 00086 mutable scalar x_; 00087 00088 // The initial sheet tickness 00089 00090 mutable scalar h_; 00091 00092 // two perpendicular vectors, perpendicular to injection direction 00093 List<vector> tan1_; 00094 List<vector> tan2_; 00095 00096 // private member functions 00097 00098 scalar kv 00099 ( 00100 const label inj 00101 ) const; 00102 00103 scalar deltaPressureInj(const scalar time, const label inj) const; 00104 scalar averagePressure(const label inj) const; 00105 00106 void calculateHX 00107 ( 00108 const label inj, 00109 const scalar massFlow, 00110 const scalar dPressure, 00111 const scalar time 00112 ) const; 00113 00114 public: 00115 00116 //- Runtime type information 00117 TypeName("blobsSwirlInjector"); 00118 00119 00120 // Constructors 00121 00122 //- Construct from components 00123 blobsSwirlInjector 00124 ( 00125 const dictionary& dict, 00126 spray& sm 00127 ); 00128 00129 00130 // Destructor 00131 00132 ~blobsSwirlInjector(); 00133 00134 00135 // Member Functions 00136 00137 //- Return the injected droplet diameter 00138 scalar d0(const label injector, const scalar time) const; 00139 00140 //- Return the spray angle of the injector 00141 vector direction 00142 ( 00143 const label injector, 00144 const scalar time, 00145 const scalar d 00146 ) const; 00147 00148 scalar velocity 00149 ( 00150 const label i, 00151 const scalar time 00152 ) const; 00153 00154 scalar averageVelocity 00155 ( 00156 const label i 00157 ) const; 00158 00159 00160 }; 00161 00162 00163 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00164 00165 } // End namespace Foam 00166 00167 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // 00168 00169 #endif 00170 00171 // ************************************************************************* //