57 coeffsDict_(dict.
subDict(typeName +
"Coeffs")),
63 msLimit_(
readScalar(coeffsDict_.lookup(
"msLimit"))),
64 weberLimit_(
readScalar(coeffsDict_.lookup(
"WeberLimit")))
85 label celli = p.
cell();
88 scalar
pc = spray_.p()[celli];
90 scalar sigma = fuels.
sigma(pc, T, p.
X());
91 scalar rhoLiquid = fuels.
rho(pc, T, p.
X());
92 scalar muLiquid = fuels.
mu(pc, T, p.
X());
93 scalar rhoGas = spray_.rho()[celli];
94 scalar Np = p.
N(rhoLiquid);
95 scalar semiMass = Np*
pow(p.
d(), 3.0);
97 scalar weGas = p.
We(vel, rhoGas, sigma);
98 scalar weLiquid = p.
We(vel, rhoLiquid, sigma);
100 scalar reLiquid = 0.5*p.
Re(rhoLiquid, vel, muLiquid);
101 scalar ohnesorge =
sqrt(weLiquid)/(reLiquid + VSMALL);
102 scalar taylor = ohnesorge*
sqrt(weGas);
106 scalar gt = (g_ + acceleration) & trajectory;
110 (0.34 + 0.38*
pow(weGas, 1.5))
111 /((1 + ohnesorge)*(1 + 1.4*
pow(taylor, 0.6)))
112 *
sqrt(sigma/(rhoLiquid*
pow(r, 3)));
118 *(1.0 + 0.45*
sqrt(ohnesorge))
119 *(1.0 + 0.4*
pow(taylor, 0.7))
120 /
pow(1.0 + 0.865*
pow(weGas, 1.67), 0.6);
123 scalar tauKH = 3.726*b1_*r/(omegaKH*lambdaKH);
126 scalar dc = 2.0*b0_*lambdaKH;
129 scalar helpVariable =
mag(gt*(rhoLiquid - rhoGas));
130 scalar omegaRT =
sqrt
132 2.0*
pow(helpVariable, 1.5)
133 /(3.0*
sqrt(3.0*sigma)*(rhoGas + rhoLiquid))
137 scalar KRT =
sqrt(helpVariable/(3.0*sigma + VSMALL));
144 if ((p.
ct() > 0) || (lambdaRT < p.
d()))
150 scalar tauRT = cTau_/(omegaRT + VSMALL);
153 if ((p.
ct() > tauRT) && (lambdaRT < p.
d()))
157 scalar multiplier = p.
d()/lambdaRT;
158 scalar nDrops = multiplier*Np;
159 p.
d() =
cbrt(semiMass/nDrops);
165 if (weGas > weberLimit_)
169 scalar fraction = deltaT/tauKH;
172 p.
d() = (fraction*dc + p.
d())/(1.0 + fraction);
179 spray_.injectors()[injector].properties()->nParcelsToInject
181 spray_.injectors()[injector].properties()->tsoi(),
182 spray_.injectors()[injector].properties()->teoi()
185 scalar averageParcelMass =
186 spray_.injectors()[injector].properties()->mass()/nParcels;
188 if (p.
ms()/averageParcelMass > msLimit_)