57 evapDict_(dict.
subDict(typeName +
"Coeffs")),
58 preReScFactor_(
readScalar(evapDict_.lookup(
"preReScFactor"))),
59 ReExponent_(
readScalar(evapDict_.lookup(
"ReExponent"))),
60 ScExponent_(
readScalar(evapDict_.lookup(
"ScExponent"))),
61 evaporationScheme_(evapDict_.lookup(
"evaporationScheme")),
64 if (evaporationScheme_ ==
"implicit")
68 else if (evaporationScheme_ ==
"explicit")
75 <<
"evaporationScheme type " << evaporationScheme_
77 <<
"Use implicit or explicit."
99 const scalar ReynoldsNumber,
100 const scalar SchmidtNumber
103 return 2.0 + preReScFactor_*
pow(ReynoldsNumber,ReExponent_)*
pow(SchmidtNumber,ScExponent_);
108 const scalar diameter,
109 const scalar liquidDensity,
110 const scalar rhoFuelVapor,
111 const scalar massDiffusionCoefficient,
112 const scalar ReynoldsNumber,
113 const scalar SchmidtNumber,
141 scalar Xratio = (Xs - Xf)/
max(SMALL, 1.0 - Xs);
145 lgExpr =
log(1.0 + Xratio);
152 scalar Sherwood = Sh(ReynoldsNumber, SchmidtNumber);
156 scalar logXratio =
log(1.0+Xratio);
159 if(logXratio > SMALL)
161 Fb =
pow((1.0 + Xratio),FbExp) *
log(1.0+Xratio)/Xratio;
166 Sherwood = 2.0 + (Sherwood - 2.0)/Fb;
169 6.0 * massDiffusionCoefficient
171 * rhoFuelVapor * lgExpr;
173 if (denominator > SMALL)
175 time =
max(VSMALL, liquidDensity *
pow(diameter, 2.0)/denominator);
184 const scalar liquidDensity,
186 const scalar heatOfVapour,
188 const scalar Nusselt,
189 const scalar deltaTemp,
190 const scalar diameter,
191 const scalar liquidCore,
194 const scalar tBoilingSurface,
195 const scalar vapourSurfaceEnthalpy,
196 const scalar vapourFarEnthalpy,
198 const scalar temperature,
214 if(tDrop > tBoilingSurface)
219 scalar kIncreased = psi * kLiq;
220 scalar alfa = psi * kIncreased/(liquidDensity * cpFuel);
221 scalar F = alfa * ct/
sqr(0.5 * diameter);
224 scalar expSumOld = expSum;
228 for(label
k=0;
k < Niter ;
k++)
231 if(
mag(expSum-expSumOld)/expSum < 1.0
e-3)
241 scalar dTLB =
min(0.5, tDrop - tBoilingSurface);
244 if(dTLB >= 0.0 && dTLB < 5.0)
246 alfaS = 0.76 *
pow(dTLB, 0.26);
248 if(dTLB >= 5.0 && dTLB < 25.0)
250 alfaS = 0.027 *
pow(dTLB, 2.33);
254 alfaS = 13.8 *
pow(dTLB, 0.39);
266 if(temperature > tBoilingSurface)
268 scalar NusseltCorr = Nusselt ;
269 scalar
A =
mag((vapourFarEnthalpy-vapourSurfaceEnthalpy)/heatOfVapour);
273 scalar nPos = B *
log(1.0 + A)/Gf + 1.0;
274 scalar nNeg = (1.0/
A)*(
exp(Gf/B) - 1.0 -
A) + 1.0;
276 scalar Gpos = Gf*nPos;
277 scalar Gneg = Gf/nNeg;
280 scalar FgNeg = Gneg + Gf - B *
log( 1.0 + ( 1.0 + Gf/Gneg ) * A);
284 for(label j = 0; j < 20; j++)
287 Gneg =
max(Gneg, VSMALL);
288 FgNeg = Gneg + Gf - B *
log( 1.0 + ( 1.0 + Gf/Gneg ) * A);
296 FgNeg = Gneg + Gf - B *
log( 1.0 + ( 1.0 + Gf/Gneg ) * A);
313 for(k=0; k<Niter ; k++)
316 scalar Fg = G + Gf - B *
log( 1.0 + ( 1.0 + Gf/G ) * A);
330 if(
mag(G-Gold)/Gold < 1.0e-3)
338 Info <<
" No convergence for G " <<
endl;
348 time =
max(VSMALL, time);