mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: nutUBlended wall function - added protection for uTau. See #696
This commit is contained in:
@ -93,17 +93,20 @@ Foam::nutUBlendedWallFunctionFvPatchScalarField::calcUTau
|
|||||||
forAll(uTaup, facei)
|
forAll(uTaup, facei)
|
||||||
{
|
{
|
||||||
scalar ut = sqrt((nutw[facei] + nuw[facei])*magGradU[facei]);
|
scalar ut = sqrt((nutw[facei] + nuw[facei])*magGradU[facei]);
|
||||||
scalar error = GREAT;
|
if (mag(ut) > ROOTVSMALL)
|
||||||
label iter = 0;
|
|
||||||
while (iter++ < 10 && error > 0.001)
|
|
||||||
{
|
{
|
||||||
scalar yPlus = y[facei]*ut/nuw[facei];
|
scalar error = GREAT;
|
||||||
scalar uTauVis = magUp[facei]/yPlus;
|
label iter = 0;
|
||||||
scalar uTauLog = kappa_*magUp[facei]/log(E_*yPlus);
|
while (iter++ < 10 && error > 0.001)
|
||||||
|
{
|
||||||
|
scalar yPlus = y[facei]*ut/nuw[facei];
|
||||||
|
scalar uTauVis = magUp[facei]/yPlus;
|
||||||
|
scalar uTauLog = kappa_*magUp[facei]/log(E_*yPlus);
|
||||||
|
|
||||||
scalar utNew = pow(pow(uTauVis, n_) + pow(uTauLog, n_), 1.0/n_);
|
scalar utNew = pow(pow(uTauVis, n_) + pow(uTauLog, n_), 1.0/n_);
|
||||||
error = mag(ut - utNew)/(ut + ROOTVSMALL);
|
error = mag(ut - utNew)/(ut + ROOTVSMALL);
|
||||||
ut = 0.5*(ut + utNew);
|
ut = 0.5*(ut + utNew);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
uTaup[facei] = ut;
|
uTaup[facei] = ut;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user