make prefactor in Ranz-Marshall correlation customizable

For a single sphere the data of Ranz suggests
2 + 0.6 * Re^(1/2) * Pr^(1/3)
but for gas flow through a packed bed of particles this may change to
2 + 1.8 * Re^(1/2) * Pr^(1/3)
cf. Kunii and Levenspiel, Fluidization Engineering (1991)
Hence, this commit will make this prefactor configurable in the
couplingProperties dict; if it is not set, use a value of 0.6 to retain
previous behavior;
Also, use the specialized math functions for square root and cube root
instead of the pow function;
This commit is contained in:
danielque
2021-12-20 10:50:07 +01:00
parent ab3f69db66
commit f72fcf68ba
2 changed files with 16 additions and 4 deletions

View File

@ -54,6 +54,7 @@ heatTransferRanzMarshall::heatTransferRanzMarshall
Tmax_(propsDict_.lookupOrDefault<scalar>("Tmax",1e6)),
totalHeatFlux_(0.0),
NusseltScalingFactor_(1.0),
NusseltConstParameter_(propsDict_.lookupOrDefault<scalar>("NusseltConstParameter",0.6)),
QPartFluidName_(propsDict_.lookupOrDefault<word>("QPartFluidName","QPartFluid")),
QPartFluid_
( IOobject
@ -168,6 +169,15 @@ heatTransferRanzMarshall::heatTransferRanzMarshall
Info << "NusseltScalingFactor set to: " << NusseltScalingFactor_ << endl;
}
if (NusseltConstParameter_ < 0.6 || NusseltConstParameter_ > 1.8)
{
Warning << "NusseltConstParameter set to: " << NusseltConstParameter_ << " outside the range [0.6,1.8]" << endl;
}
else
{
Info << "NusseltConstParameter set to: " << NusseltConstParameter_ << endl;
}
if (propsDict_.found("maxSource"))
{
maxSource_=readScalar(propsDict_.lookup ("maxSource"));
@ -491,7 +501,7 @@ void heatTransferRanzMarshall::addEnergyCoefficient(volScalarField& Qsource) con
scalar heatTransferRanzMarshall::Nusselt(scalar voidfraction, scalar Rep, scalar Pr) const
{
return (2 + 0.6 * Foam::pow(Rep,0.5) * Foam::pow(Pr,0.33));
return (2.0 + NusseltConstParameter_ * Foam::sqrt(Rep) * Foam::cbrt(Pr));
}
void heatTransferRanzMarshall::heatFlux(label index, scalar h, scalar As, scalar Tfluid, scalar cg3)

View File

@ -67,6 +67,8 @@ protected:
scalar NusseltScalingFactor_;
const scalar NusseltConstParameter_;
const word QPartFluidName_;
volScalarField QPartFluid_;