mirror of
https://github.com/ParticulateFlow/CFDEMcoupling-PFM.git
synced 2025-12-08 06:37:44 +00:00
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:
@ -54,6 +54,7 @@ heatTransferRanzMarshall::heatTransferRanzMarshall
|
|||||||
Tmax_(propsDict_.lookupOrDefault<scalar>("Tmax",1e6)),
|
Tmax_(propsDict_.lookupOrDefault<scalar>("Tmax",1e6)),
|
||||||
totalHeatFlux_(0.0),
|
totalHeatFlux_(0.0),
|
||||||
NusseltScalingFactor_(1.0),
|
NusseltScalingFactor_(1.0),
|
||||||
|
NusseltConstParameter_(propsDict_.lookupOrDefault<scalar>("NusseltConstParameter",0.6)),
|
||||||
QPartFluidName_(propsDict_.lookupOrDefault<word>("QPartFluidName","QPartFluid")),
|
QPartFluidName_(propsDict_.lookupOrDefault<word>("QPartFluidName","QPartFluid")),
|
||||||
QPartFluid_
|
QPartFluid_
|
||||||
( IOobject
|
( IOobject
|
||||||
@ -168,6 +169,15 @@ heatTransferRanzMarshall::heatTransferRanzMarshall
|
|||||||
Info << "NusseltScalingFactor set to: " << NusseltScalingFactor_ << endl;
|
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"))
|
if (propsDict_.found("maxSource"))
|
||||||
{
|
{
|
||||||
maxSource_=readScalar(propsDict_.lookup ("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
|
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)
|
void heatTransferRanzMarshall::heatFlux(label index, scalar h, scalar As, scalar Tfluid, scalar cg3)
|
||||||
|
|||||||
@ -67,6 +67,8 @@ protected:
|
|||||||
|
|
||||||
scalar NusseltScalingFactor_;
|
scalar NusseltScalingFactor_;
|
||||||
|
|
||||||
|
const scalar NusseltConstParameter_;
|
||||||
|
|
||||||
const word QPartFluidName_;
|
const word QPartFluidName_;
|
||||||
|
|
||||||
volScalarField QPartFluid_;
|
volScalarField QPartFluid_;
|
||||||
|
|||||||
Reference in New Issue
Block a user