67 time0_(runTime_.value()),
89 ambientPressure_(p_.
average().value()),
90 ambientTemperature_(T_.
average().value()),
172 mesh_.lookupObject<
dictionary>(
"thermophysicalProperties")
184 subCycles_(readLabel(sprayProperties_.lookup(
"subCycles"))),
186 gasProperties_(gasProperties),
187 composition_(composition),
189 liquidToGasIndex_(fuels_->components().size(), -1),
190 gasToLiquidIndex_(composition.
Y().size(), -1),
191 isLiquidFuel_(composition.
Y().size(), false),
195 axisOfWedge_(
vector(0,0,0)),
196 axisOfWedgeNormal_(
vector(0,0,0)),
199 interpolationSchemes_(sprayProperties_.subDict(
"interpolationSchemes")),
200 UInterpolator_(NULL),
201 rhoInterpolator_(NULL),
202 pInterpolator_(NULL),
203 TInterpolator_(NULL),
206 shs_(mesh_.nCells(), 0.0),
207 srhos_(fuels_->components().size()),
209 totalInjectedLiquidMass_(0.0),
210 injectedLiquidKE_(0.0)
216 srhos_.set(i,
new scalarField(mesh_.nCells(), 0.0));
224 scalar v = injection().averageVelocity(i);
228 Info<<
"Average Velocity for injector " << i <<
": " << v <<
" m/s"
229 <<
", injection pressure = "
230 << 1.0e-5*ip/dt <<
" bar"
236 bool symPlaneExist =
false;
237 bool wedgeExist =
false;
244 if (isA<symmetryPolyPatch>(bMesh[
patchi]))
246 symPlaneExist =
true;
248 else if (isA<wedgePolyPatch>(bMesh[patchi]))
264 "spray::spray(const volVectorField& U, "
265 "const volScalarField& rho, const volScalarField& p, "
266 "const volScalarField& T, const combustionMixture& composition,"
267 "const PtrList<gasThermoPhsyics>& gaseousFuelProperties, "
268 "const dictionary& thermophysicalProperties, "
269 "const dimensionedScalar& g)"
270 ) <<
"spray::(...) only one wedgePolyPatch found. "
271 "Please check you BC-setup."
275 Info<<
"Constructing two dimensional spray injection.";
277 vector v1 = bMesh[patches[0]].faceAreas()[0];
278 vector v2 = bMesh[patches[1]].faceAreas()[0];
281 axisOfSymmetry_ = v1 ^
v2;
282 axisOfSymmetry_ /=
mag(axisOfSymmetry_);
285 axisOfWedge_ = axisOfSymmetry_ ^
v2;
286 axisOfWedge_ /=
mag(axisOfWedge_);
288 axisOfWedgeNormal_ = axisOfSymmetry_ ^ axisOfWedge_;
289 axisOfWedgeNormal_ /=
mag(axisOfWedgeNormal_);
291 scalar arcCos = (v1 &
v2)/
mag(v1);
294 Info<<
"Calculated angle of wedge is "
303 Info<<
"Constructing 180 deg three dimensional spray injection."
308 Info<<
"Constructing three dimensional spray injection." <<
endl;
314 label Ns = composition_.Y().size();
316 forAll(fuels_->components(), i)
318 word liquidName(fuels_->components()[i]);
320 for (label j=0; j<Ns; j++)
322 word specieName(composition_.Y()[j].name());
324 if (specieName == liquidName)
326 liquidToGasIndex_[i] = j;
327 gasToLiquidIndex_[j] = i;
328 isLiquidFuel_[j] =
true;
331 if (liquidToGasIndex_[i] == -1)
334 for (label
k=0;
k<Ns;
k++)
336 word specieName(composition_.Y()[
k].name());
341 "The liquid component " << liquidName
342 <<
" does not exist in the species composition.Y() list.\n"
343 <<
"(Probably not defined in <chem.inp>)"