Merge commit 'OpenCFD/master' into olesenm

This commit is contained in:
Mark Olesen
2009-01-23 08:26:50 +01:00
42 changed files with 865 additions and 247 deletions

View File

@ -244,6 +244,23 @@ void Foam::fvPatchField<Type>::write(Ostream& os) const
}
template<class Type>
template<class EntryType>
void Foam::fvPatchField<Type>::writeEntryIfDifferent
(
Ostream& os,
const word& entryName,
const EntryType& value1,
const EntryType& value2
) const
{
if (value1 != value2)
{
os.writeKeyword(entryName) << value2 << token::END_STATEMENT << nl;
}
}
// * * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * //
template<class Type>

View File

@ -414,9 +414,22 @@ public:
virtual void manipulateMatrix(fvMatrix<Type>& matrix);
// I-O
//- Write
virtual void write(Ostream&) const;
//- Helper function to write the keyword and entry only if the
// values are not equal. The value is then output as value2
template<class EntryType>
void writeEntryIfDifferent
(
Ostream& os,
const word& entryName,
const EntryType& value1,
const EntryType& value2
) const;
// Check

View File

@ -125,6 +125,8 @@ RASModel::RASModel
k0_("k0", dimVelocity*dimVelocity, SMALL),
epsilon0_("epsilon", k0_.dimensions()/dimTime, SMALL),
epsilonSmall_("epsilonSmall", epsilon0_.dimensions(), SMALL),
omega0_("omega", dimless/dimTime, SMALL),
omegaSmall_("omegaSmall", omega0_.dimensions(), SMALL),
y_(mesh_)
{}
@ -204,6 +206,8 @@ bool RASModel::read()
k0_.readIfPresent(*this);
epsilon0_.readIfPresent(*this);
epsilonSmall_.readIfPresent(*this);
omega0_.readIfPresent(*this);
omegaSmall_.readIfPresent(*this);
return true;
}

View File

@ -80,22 +80,47 @@ protected:
// Protected data
//- Turbulence on/off flag
Switch turbulence_;
//- Flag to print the model coeffs at run-time
Switch printCoeffs_;
//- Model coefficients dictionary
dictionary coeffDict_;
// Wall function properties
//- Wall function dictionary
dictionary wallFunctionDict_;
dimensionedScalar kappa_;
dimensionedScalar E_;
dimensionedScalar Cmu_;
dimensionedScalar Prt_;
//- Value of y+ at the edge of the laminar sublayer
scalar yPlusLam_;
//- Lower limit of k
dimensionedScalar k0_;
//- Lower limit of epsilon
dimensionedScalar epsilon0_;
//- Small epsilon value used to avoid divide by zero
dimensionedScalar epsilonSmall_;
//- Lower limit for omega
dimensionedScalar omega0_;
//- Small omega value used to avoid divide by zero
dimensionedScalar omegaSmall_;
//- Near wall distance boundary field
nearWallDist y_;
@ -193,6 +218,19 @@ public:
return epsilonSmall_;
}
//- Return the value of omega0 which epsilon is not allowed to be
// less than
const dimensionedScalar& omega0() const
{
return omega0_;
}
//- Return the value of omegaSmall which is added to epsilon when
// calculating nut
const dimensionedScalar& omegaSmall() const
{
return omegaSmall_;
}
//- Allow k0 to be changed
dimensionedScalar& k0()
@ -212,6 +250,17 @@ public:
return epsilonSmall_;
}
//- Allow omega0 to be changed
dimensionedScalar& omega0()
{
return omega0_;
}
//- Allow omegaSmall to be changed
dimensionedScalar& omegaSmall()
{
return omegaSmall_;
}
//- Return kappa for use in wall-functions
dimensionedScalar kappa() const

View File

@ -48,7 +48,8 @@ alphatWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
mutName_("mut")
{}
@ -61,7 +62,8 @@ alphatWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
mutName_(ptf.mutName_)
{}
@ -73,7 +75,8 @@ alphatWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
mutName_(dict.lookupOrDefault<word>("mut", "mut"))
{}
@ -83,7 +86,8 @@ alphatWallFunctionFvPatchScalarField
const alphatWallFunctionFvPatchScalarField& awfpsf
)
:
fixedValueFvPatchScalarField(awfpsf)
fixedValueFvPatchScalarField(awfpsf),
mutName_(awfpsf.mutName_)
{}
@ -94,7 +98,8 @@ alphatWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(awfpsf, iF)
fixedValueFvPatchScalarField(awfpsf, iF),
mutName_(awfpsf.mutName_)
{}
@ -106,7 +111,7 @@ void alphatWallFunctionFvPatchScalarField::updateCoeffs()
const scalar Prt = ras.Prt().value();
const scalarField& mutw =
patch().lookupPatchField<volScalarField, scalar>("mut");
patch().lookupPatchField<volScalarField, scalar>(mutName_);
operator==(mutw/Prt);
}
@ -115,6 +120,7 @@ void alphatWallFunctionFvPatchScalarField::updateCoeffs()
void alphatWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "mut", "mut", mutName_);
writeEntry("value", os);
}

View File

@ -57,6 +57,11 @@ class alphatWallFunctionFvPatchScalarField
:
public fixedValueFvPatchScalarField
{
// Private data
//- Name of turbulent viscosity field
word mutName_;
public:

View File

@ -64,7 +64,13 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(p, iF)
fixedInternalValueFvPatchField<scalar>(p, iF),
UName_("U"),
kName_("k"),
GName_("G"),
rhoName_("rho"),
muName_("mu"),
mutName_("mut")
{
checkType();
}
@ -78,7 +84,13 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper)
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper),
UName_(ptf.UName_),
kName_(ptf.kName_),
GName_(ptf.GName_),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_),
mutName_(ptf.mutName_)
{
checkType();
}
@ -91,7 +103,13 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedInternalValueFvPatchField<scalar>(p, iF, dict)
fixedInternalValueFvPatchField<scalar>(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
kName_(dict.lookupOrDefault<word>("k", "k")),
GName_(dict.lookupOrDefault<word>("G", "G")),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu")),
mutName_(dict.lookupOrDefault<word>("mut", "mut"))
{
checkType();
}
@ -102,7 +120,13 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const epsilonWallFunctionFvPatchScalarField& ewfpsf
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf)
fixedInternalValueFvPatchField<scalar>(ewfpsf),
UName_(ewfpsf.UName_),
kName_(ewfpsf.kName_),
GName_(ewfpsf.GName_),
rhoName_(ewfpsf.rhoName_),
muName_(ewfpsf.muName_),
mutName_(ewfpsf.mutName_)
{
checkType();
}
@ -114,7 +138,13 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF)
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF),
UName_(ewfpsf.UName_),
kName_(ewfpsf.kName_),
GName_(ewfpsf.GName_),
rhoName_(ewfpsf.rhoName_),
muName_(ewfpsf.muName_),
mutName_(ewfpsf.mutName_)
{
checkType();
}
@ -135,24 +165,24 @@ void epsilonWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
volScalarField& G = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("G"));
(db().lookupObject<volScalarField>(GName_));
volScalarField& epsilon = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("epsilon"));
(db().lookupObject<volScalarField>(dimensionedInternalField().name()));
const volScalarField& k = db().lookupObject<volScalarField>("k");
const volScalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
const scalarField& mutw =
patch().lookupPatchField<volScalarField, scalar>("mut");
patch().lookupPatchField<volScalarField, scalar>(mutName_);
const fvPatchVectorField& Uw =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
const scalarField magGradUw = mag(Uw.snGrad());
@ -197,6 +227,12 @@ void epsilonWallFunctionFvPatchScalarField::evaluate
void epsilonWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fixedInternalValueFvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "G", "G", GName_);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntryIfDifferent<word>(os, "mut", "mut", mutName_);
writeEntry("value", os);
}

View File

@ -57,6 +57,26 @@ class epsilonWallFunctionFvPatchScalarField
:
public fixedInternalValueFvPatchField<scalar>
{
// Private data
//- Name of velocity field
word UName_;
//- Name of turbulence kinetic energy field
word kName_;
//- Name of turbulence generation field
word GName_;
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
//- Name of turbulent viscosity field
word mutName_;
// Private member functions

View File

@ -77,6 +77,9 @@ mutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF),
rhoName_("rho"),
muName_("mu"),
kName_("k"),
Ks_(p.size(), 0.0),
Cs_(p.size(), 0.0)
{}
@ -92,6 +95,9 @@ mutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_),
kName_(ptf.kName_),
Ks_(ptf.Ks_, mapper),
Cs_(ptf.Cs_, mapper)
{}
@ -106,6 +112,9 @@ mutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF, dict),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu")),
kName_(dict.lookupOrDefault<word>("k", "k")),
Ks_("Ks", dict, p.size()),
Cs_("Cs", dict, p.size())
{}
@ -114,25 +123,31 @@ mutRoughWallFunctionFvPatchScalarField
mutRoughWallFunctionFvPatchScalarField::
mutRoughWallFunctionFvPatchScalarField
(
const mutRoughWallFunctionFvPatchScalarField& nrwfpsf
const mutRoughWallFunctionFvPatchScalarField& rwfpsf
)
:
fixedValueFvPatchScalarField(nrwfpsf),
Ks_(nrwfpsf.Ks_),
Cs_(nrwfpsf.Cs_)
fixedValueFvPatchScalarField(rwfpsf),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_),
kName_(rwfpsf.kName_),
Ks_(rwfpsf.Ks_),
Cs_(rwfpsf.Cs_)
{}
mutRoughWallFunctionFvPatchScalarField::
mutRoughWallFunctionFvPatchScalarField
(
const mutRoughWallFunctionFvPatchScalarField& nrwfpsf,
const mutRoughWallFunctionFvPatchScalarField& rwfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(nrwfpsf, iF),
Ks_(nrwfpsf.Ks_),
Cs_(nrwfpsf.Cs_)
fixedValueFvPatchScalarField(rwfpsf, iF),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_),
kName_(rwfpsf.kName_),
Ks_(rwfpsf.Ks_),
Cs_(rwfpsf.Cs_)
{}
@ -178,12 +193,12 @@ void mutRoughWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const scalarField& k = db().lookupObject<volScalarField>("k");
const scalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
scalarField& mutw = *this;
@ -229,6 +244,9 @@ void mutRoughWallFunctionFvPatchScalarField::updateCoeffs()
void mutRoughWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
Cs_.writeEntry("Cs", os);
Ks_.writeEntry("Ks", os);
writeEntry("value", os);

View File

@ -64,6 +64,15 @@ class mutRoughWallFunctionFvPatchScalarField
{
// Private data
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
//- Name of turbulence kinetic energy field
word kName_;
//- Roughness height
scalarField Ks_;

View File

@ -49,6 +49,9 @@ mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
rhoName_("rho"),
muName_("mu"),
roughnessHeight_(pTraits<scalar>::zero),
roughnessConstant_(pTraits<scalar>::zero),
roughnessFudgeFactor_(pTraits<scalar>::zero)
@ -65,6 +68,9 @@ mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_),
roughnessHeight_(ptf.roughnessHeight_),
roughnessConstant_(ptf.roughnessConstant_),
roughnessFudgeFactor_(ptf.roughnessFudgeFactor_)
@ -80,6 +86,9 @@ mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu")),
roughnessHeight_(readScalar(dict.lookup("roughnessHeight"))),
roughnessConstant_(readScalar(dict.lookup("roughnessConstant"))),
roughnessFudgeFactor_(readScalar(dict.lookup("roughnessFudgeFactor")))
@ -89,27 +98,33 @@ mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::
mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField& tppsf
const mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField& rwfpsf
)
:
fixedValueFvPatchScalarField(tppsf),
roughnessHeight_(tppsf.roughnessHeight_),
roughnessConstant_(tppsf.roughnessConstant_),
roughnessFudgeFactor_(tppsf.roughnessFudgeFactor_)
fixedValueFvPatchScalarField(rwfpsf),
UName_(rwfpsf.UName_),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_),
roughnessHeight_(rwfpsf.roughnessHeight_),
roughnessConstant_(rwfpsf.roughnessConstant_),
roughnessFudgeFactor_(rwfpsf.roughnessFudgeFactor_)
{}
mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::
mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField& tppsf,
const mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField& rwfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF),
roughnessHeight_(tppsf.roughnessHeight_),
roughnessConstant_(tppsf.roughnessConstant_),
roughnessFudgeFactor_(tppsf.roughnessFudgeFactor_)
fixedValueFvPatchScalarField(rwfpsf, iF),
UName_(rwfpsf.UName_),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_),
roughnessHeight_(rwfpsf.roughnessHeight_),
roughnessConstant_(rwfpsf.roughnessConstant_),
roughnessFudgeFactor_(rwfpsf.roughnessFudgeFactor_)
{}
@ -131,16 +146,16 @@ void mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
const fvPatchScalarField& rho =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
// The flow velocity at the adjacent cell centre.
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
scalarField& mutw = *this;
scalarField magFaceGradU = mag(U.snGrad());
@ -172,7 +187,7 @@ void mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::evaluate
// Enforce the roughnessHeight to be less than the distance to
// the first cell centre.
if(dKsPlusdYPlus > 1)
if (dKsPlusdYPlus > 1)
{
dKsPlusdYPlus = 1;
}
@ -211,7 +226,7 @@ void mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::evaluate
}
scalar denom = 1.0 + log(E* yPlus) - G - yPlusGPrime;
if(mag(denom) > VSMALL)
if (mag(denom) > VSMALL)
{
yPlus = (kappaRe + yPlus*(1 - yPlusGPrime))/denom;
if( yPlus < 0 )
@ -288,6 +303,9 @@ void mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::write
) const
{
fixedValueFvPatchScalarField::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
os.writeKeyword("roughnessHeight")
<< roughnessHeight_ << token::END_STATEMENT << nl;
os.writeKeyword("roughnessConstant")

View File

@ -58,8 +58,24 @@ class mutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
// Roughness parameters
//- Height
scalar roughnessHeight_;
//- Constant
scalar roughnessConstant_;
//- Scale factor
scalar roughnessFudgeFactor_;
@ -143,38 +159,38 @@ public:
// Access
//- Return the fluctuation scale
//- Return the roughness height scale
const scalar& roughnessHeight() const
{
return roughnessHeight_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness height to allow adjustment
scalar& roughnessHeight()
{
return roughnessHeight_;
}
//- Return the fluctuation scale
//- Return the roughness constant scale
const scalar& roughnessConstant() const
{
return roughnessConstant_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness constant to allow adjustment
scalar& roughnessConstant()
{
return roughnessConstant_;
}
//- Return the fluctuation scale
//- Return the roughness scale factor
const scalar& roughnessFudgeFactor() const
{
return roughnessFudgeFactor_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness scale factor to allow
// adjustment
scalar& roughnessFudgeFactor()
{
return roughnessFudgeFactor_;

View File

@ -48,7 +48,10 @@ mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
rhoName_("rho"),
muName_("mu")
{}
@ -61,7 +64,10 @@ mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_)
{}
@ -73,28 +79,37 @@ mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu"))
{}
mutSpalartAllmarasStandardWallFunctionFvPatchScalarField::
mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasStandardWallFunctionFvPatchScalarField& tppsf
const mutSpalartAllmarasStandardWallFunctionFvPatchScalarField& rwfpsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(rwfpsf),
UName_(rwfpsf.UName_),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_)
{}
mutSpalartAllmarasStandardWallFunctionFvPatchScalarField::
mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasStandardWallFunctionFvPatchScalarField& tppsf,
const mutSpalartAllmarasStandardWallFunctionFvPatchScalarField& rwfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(rwfpsf, iF),
UName_(rwfpsf.UName_),
rhoName_(rwfpsf.rhoName_),
muName_(rwfpsf.muName_)
{}
@ -114,15 +129,15 @@ void mutSpalartAllmarasStandardWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
scalarField& mutw = *this;
scalarField magFaceGradU = mag(U.snGrad());
@ -158,6 +173,19 @@ void mutSpalartAllmarasStandardWallFunctionFvPatchScalarField::evaluate
}
void mutSpalartAllmarasStandardWallFunctionFvPatchScalarField::write
(
Ostream& os
) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntry("value", os);
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
makePatchTypeField

View File

@ -56,6 +56,17 @@ class mutSpalartAllmarasStandardWallFunctionFvPatchScalarField
:
public fixedValueFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
public:
@ -142,6 +153,9 @@ public:
(
const Pstream::commsTypes commsType=Pstream::blocking
);
//- Write
virtual void write(Ostream& os) const;
};

View File

@ -48,7 +48,10 @@ mutSpalartAllmarasWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
rhoName_("rho"),
muName_("mu")
{}
@ -61,7 +64,10 @@ mutSpalartAllmarasWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_)
{}
@ -73,28 +79,37 @@ mutSpalartAllmarasWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu"))
{}
mutSpalartAllmarasWallFunctionFvPatchScalarField::
mutSpalartAllmarasWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasWallFunctionFvPatchScalarField& tppsf
const mutSpalartAllmarasWallFunctionFvPatchScalarField& wfpsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(wfpsf),
UName_(wfpsf.UName_),
rhoName_(wfpsf.rhoName_),
muName_(wfpsf.muName_)
{}
mutSpalartAllmarasWallFunctionFvPatchScalarField::
mutSpalartAllmarasWallFunctionFvPatchScalarField
(
const mutSpalartAllmarasWallFunctionFvPatchScalarField& tppsf,
const mutSpalartAllmarasWallFunctionFvPatchScalarField& wfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(wfpsf, iF),
UName_(wfpsf.UName_),
rhoName_(wfpsf.rhoName_),
muName_(wfpsf.muName_)
{}
@ -113,15 +128,15 @@ void mutSpalartAllmarasWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
scalarField& mutw = *this;
@ -174,6 +189,19 @@ void mutSpalartAllmarasWallFunctionFvPatchScalarField::evaluate
}
void mutSpalartAllmarasWallFunctionFvPatchScalarField::write
(
Ostream& os
) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntry("value", os);
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
makePatchTypeField(fvPatchScalarField, mutSpalartAllmarasWallFunctionFvPatchScalarField);

View File

@ -56,6 +56,18 @@ class mutSpalartAllmarasWallFunctionFvPatchScalarField
:
public fixedValueFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
public:
//- Runtime type information
@ -134,6 +146,9 @@ public:
(
const Pstream::commsTypes commsType=Pstream::blocking
);
//- Write
virtual void write(Ostream& os) const;
};

View File

@ -48,7 +48,10 @@ mutWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
rhoName_("rho"),
muName_("mu"),
kName_("k")
{}
@ -61,7 +64,10 @@ mutWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
rhoName_(ptf.rhoName_),
muName_(ptf.muName_),
kName_(ptf.kName_)
{}
@ -73,28 +79,37 @@ mutWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
muName_(dict.lookupOrDefault<word>("mu", "mu")),
kName_(dict.lookupOrDefault<word>("k", "k"))
{}
mutWallFunctionFvPatchScalarField::
mutWallFunctionFvPatchScalarField
(
const mutWallFunctionFvPatchScalarField& tppsf
const mutWallFunctionFvPatchScalarField& wfpsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(wfpsf),
rhoName_(wfpsf.rhoName_),
muName_(wfpsf.muName_),
kName_(wfpsf.kName_)
{}
mutWallFunctionFvPatchScalarField::
mutWallFunctionFvPatchScalarField
(
const mutWallFunctionFvPatchScalarField& tppsf,
const mutWallFunctionFvPatchScalarField& wfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(wfpsf, iF),
rhoName_(wfpsf.rhoName_),
muName_(wfpsf.muName_),
kName_(wfpsf.kName_)
{}
@ -113,12 +128,12 @@ void mutWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const volScalarField& k = db().lookupObject<volScalarField>("k");
const volScalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
scalarField& mutw = *this;
@ -145,6 +160,9 @@ void mutWallFunctionFvPatchScalarField::updateCoeffs()
void mutWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntry("value", os);
}

View File

@ -57,6 +57,17 @@ class mutWallFunctionFvPatchScalarField
:
public fixedValueFvPatchScalarField
{
// Private data
//- Name of density field
word rhoName_;
//- Name of laminar viscosity field
word muName_;
//- Name of turbulence kinetic energy field
word kName_;
public:
@ -138,7 +149,7 @@ public:
// I-O
//- Write
void write(Ostream&) const;
virtual void write(Ostream&) const;
};

View File

@ -64,7 +64,13 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(p, iF)
fixedInternalValueFvPatchField<scalar>(p, iF),
UName_("U"),
rhoName_("rho"),
kName_("k"),
GName_("G"),
muName_("mu"),
mutName_("mut")
{
checkType();
}
@ -78,7 +84,13 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper)
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper),
UName_(ptf.UName_),
rhoName_(ptf.rhoName_),
kName_(ptf.kName_),
GName_(ptf.GName_),
muName_(ptf.muName_),
mutName_(ptf.mutName_)
{
checkType();
}
@ -91,7 +103,13 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedInternalValueFvPatchField<scalar>(p, iF, dict)
fixedInternalValueFvPatchField<scalar>(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
rhoName_(dict.lookupOrDefault<word>("rho", "rho")),
kName_(dict.lookupOrDefault<word>("k", "k")),
GName_(dict.lookupOrDefault<word>("G", "G")),
muName_(dict.lookupOrDefault<word>("mu", "mu")),
mutName_(dict.lookupOrDefault<word>("mut", "mut"))
{
checkType();
}
@ -99,10 +117,16 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
(
const omegaWallFunctionFvPatchScalarField& ewfpsf
const omegaWallFunctionFvPatchScalarField& owfpsf
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf)
fixedInternalValueFvPatchField<scalar>(owfpsf),
UName_(owfpsf.UName_),
rhoName_(owfpsf.rhoName_),
kName_(owfpsf.kName_),
GName_(owfpsf.GName_),
muName_(owfpsf.muName_),
mutName_(owfpsf.mutName_)
{
checkType();
}
@ -110,11 +134,17 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
(
const omegaWallFunctionFvPatchScalarField& ewfpsf,
const omegaWallFunctionFvPatchScalarField& owfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF)
fixedInternalValueFvPatchField<scalar>(owfpsf, iF),
UName_(owfpsf.UName_),
rhoName_(owfpsf.rhoName_),
kName_(owfpsf.kName_),
GName_(owfpsf.GName_),
muName_(owfpsf.muName_),
mutName_(owfpsf.mutName_)
{
checkType();
}
@ -135,24 +165,24 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
volScalarField& G = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("G"));
(db().lookupObject<volScalarField>(GName_));
volScalarField& omega = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("omega"));
(db().lookupObject<volScalarField>(dimensionedInternalField().name()));
const scalarField& k = db().lookupObject<volScalarField>("k");
const scalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& rhow =
patch().lookupPatchField<volScalarField, scalar>("rho");
patch().lookupPatchField<volScalarField, scalar>(rhoName_);
const scalarField& muw =
patch().lookupPatchField<volScalarField, scalar>("mu");
patch().lookupPatchField<volScalarField, scalar>(muName_);
const scalarField& mutw =
patch().lookupPatchField<volScalarField, scalar>("mut");
patch().lookupPatchField<volScalarField, scalar>(mutName_);
const fvPatchVectorField& Uw =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
const scalarField magGradUw = mag(Uw.snGrad());
@ -188,6 +218,12 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
void omegaWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fixedInternalValueFvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "rho", "rho", rhoName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "G", "G", GName_);
writeEntryIfDifferent<word>(os, "mu", "mu", muName_);
writeEntryIfDifferent<word>(os, "mut", "mut", mutName_);
writeEntry("value", os);
}

View File

@ -55,6 +55,26 @@ class omegaWallFunctionFvPatchScalarField
:
public fixedInternalValueFvPatchField<scalar>
{
// Private data
//- Name of velocity field
word UName_;
//- Name of density field
word rhoName_;
//- Name of turbulence kinetic energy field
word kName_;
//- Name of turbulence generation field
word GName_;
//- Name of laminar viscosity field
word muName_;
//- Name of turbulent viscosity field
word mutName_;
// Private member functions

View File

@ -208,19 +208,6 @@ kOmegaSST::kOmegaSST
)
),
omega0_("omega0", dimless/dimTime, SMALL),
omegaSmall_("omegaSmall", dimless/dimTime, SMALL),
Cmu_
(
dimensioned<scalar>::lookupOrAddToDict
(
"Cmu",
coeffDict_,
0.09
)
),
y_(mesh_),
k_
@ -350,7 +337,6 @@ bool kOmegaSST::read()
betaStar_.readIfPresent(coeffDict_);
a1_.readIfPresent(coeffDict_);
c1_.readIfPresent(coeffDict_);
Cmu_.readIfPresent(coeffDict_);
return true;
}

View File

@ -56,7 +56,6 @@ Description
@verbatim
kOmegaSST
{
Cmu 0.09;
alphaK1 0.85034;
alphaK2 1.0;
alphaOmega1 0.5;
@ -96,7 +95,7 @@ namespace RASModels
{
/*---------------------------------------------------------------------------*\
Class kOmega Declaration
Class kOmegaSST Declaration
\*---------------------------------------------------------------------------*/
class kOmegaSST
@ -105,6 +104,8 @@ class kOmegaSST
{
// Private data
// Model coefficients
dimensionedScalar alphaK1_;
dimensionedScalar alphaK2_;
@ -124,13 +125,13 @@ class kOmegaSST
dimensionedScalar a1_;
dimensionedScalar c1_;
dimensionedScalar omega0_;
dimensionedScalar omegaSmall_;
dimensionedScalar Cmu_;
//- Wall distance
// Note: different to wall distance in parent RASModel
wallDist y_;
// Fields
volScalarField k_;
volScalarField omega_;
volScalarField mut_;

View File

@ -115,6 +115,8 @@ RASModel::RASModel
k0_("k0", dimVelocity*dimVelocity, SMALL),
epsilon0_("epsilon", k0_.dimensions()/dimTime, SMALL),
epsilonSmall_("epsilonSmall", epsilon0_.dimensions(), SMALL),
omega0_("omega0", dimless/dimTime, SMALL),
omegaSmall_("omegaSmall", omega0_.dimensions(), SMALL),
y_(mesh_)
{}
@ -250,6 +252,8 @@ bool RASModel::read()
k0_.readIfPresent(*this);
epsilon0_.readIfPresent(*this);
epsilonSmall_.readIfPresent(*this);
omega0_.readIfPresent(*this);
omegaSmall_.readIfPresent(*this);
return true;
}

View File

@ -77,21 +77,45 @@ protected:
// Protected data
//- Turbulence on/off flag
Switch turbulence_;
//- Flag to print the model coeffs at run-time
Switch printCoeffs_;
//- Model coefficients dictionary
dictionary coeffDict_;
// Wall function properties
//- Wall function dictionary
dictionary wallFunctionDict_;
dimensionedScalar kappa_;
dimensionedScalar E_;
dimensionedScalar Cmu_;
//- Value of y+ at the edge of the laminar sublayer
scalar yPlusLam_;
//- Lower limit of k
dimensionedScalar k0_;
//- Lower limit of epsilon
dimensionedScalar epsilon0_;
//- Small epsilon value used to avoid divide by zero
dimensionedScalar epsilonSmall_;
//- Lower limit for omega
dimensionedScalar omega0_;
//- Small omega value used to avoid divide by zero
dimensionedScalar omegaSmall_;
//- Near wall distance boundary field
nearWallDist y_;
@ -183,6 +207,20 @@ public:
return epsilonSmall_;
}
//- Return the value of omega0 which epsilon is not allowed to be
// less than
const dimensionedScalar& omega0() const
{
return omega0_;
}
//- Return the value of omegaSmall which is added to epsilon when
// calculating nut
const dimensionedScalar& omegaSmall() const
{
return omegaSmall_;
}
//- Allow k0 to be changed
dimensionedScalar& k0()
{
@ -201,6 +239,18 @@ public:
return epsilonSmall_;
}
//- Allow omega0 to be changed
dimensionedScalar& omega0()
{
return omega0_;
}
//- Allow omegaSmall to be changed
dimensionedScalar& omegaSmall()
{
return omegaSmall_;
}
//- Return kappa for use in wall-functions
dimensionedScalar kappa() const
{

View File

@ -64,7 +64,12 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(p, iF)
fixedInternalValueFvPatchField<scalar>(p, iF),
UName_("U"),
kName_("k"),
GName_("G"),
nuName_("nu"),
nutName_("nut")
{
checkType();
}
@ -78,7 +83,12 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper)
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper),
UName_(ptf.UName_),
kName_(ptf.kName_),
GName_(ptf.GName_),
nuName_(ptf.nuName_),
nutName_(ptf.nutName_)
{
checkType();
}
@ -91,7 +101,12 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedInternalValueFvPatchField<scalar>(p, iF, dict)
fixedInternalValueFvPatchField<scalar>(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
kName_(dict.lookupOrDefault<word>("k", "k")),
GName_(dict.lookupOrDefault<word>("G", "G")),
nuName_(dict.lookupOrDefault<word>("nu", "nu")),
nutName_(dict.lookupOrDefault<word>("nut", "nut"))
{
checkType();
}
@ -102,7 +117,12 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const epsilonWallFunctionFvPatchScalarField& ewfpsf
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf)
fixedInternalValueFvPatchField<scalar>(ewfpsf),
UName_(ewfpsf.UName_),
kName_(ewfpsf.kName_),
GName_(ewfpsf.GName_),
nuName_(ewfpsf.nuName_),
nutName_(ewfpsf.nutName_)
{
checkType();
}
@ -114,7 +134,12 @@ epsilonWallFunctionFvPatchScalarField::epsilonWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF)
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF),
UName_(ewfpsf.UName_),
kName_(ewfpsf.kName_),
GName_(ewfpsf.GName_),
nuName_(ewfpsf.nuName_),
nutName_(ewfpsf.nutName_)
{
checkType();
}
@ -135,21 +160,21 @@ void epsilonWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
volScalarField& G = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("G"));
(db().lookupObject<volScalarField>(GName_));
volScalarField& epsilon = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("epsilon"));
(db().lookupObject<volScalarField>(dimensionedInternalField().name()));
const volScalarField& k = db().lookupObject<volScalarField>("k");
const volScalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
const scalarField& nutw =
patch().lookupPatchField<volScalarField, scalar>("nut");
patch().lookupPatchField<volScalarField, scalar>(nutName_);
const fvPatchVectorField& Uw =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
const scalarField magGradUw = mag(Uw.snGrad());
@ -192,6 +217,11 @@ void epsilonWallFunctionFvPatchScalarField::evaluate
void epsilonWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fixedInternalValueFvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "G", "G", GName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
writeEntryIfDifferent<word>(os, "nut", "nut", nutName_);
writeEntry("value", os);
}

View File

@ -57,6 +57,23 @@ class epsilonWallFunctionFvPatchScalarField
:
public fixedInternalValueFvPatchField<scalar>
{
// Private data
//- Name of velocity field
word UName_;
//- Name of turbulence kinetic energy field
word kName_;
//- Name of turbulence generation field
word GName_;
//- Name of laminar viscosity field
word nuName_;
//- Name of turbulent viscosity field
word nutName_;
// Private member functions

View File

@ -77,6 +77,8 @@ nutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF),
kName_("k"),
nuName_("nu"),
Ks_(p.size(), 0.0),
Cs_(p.size(), 0.0)
{}
@ -92,6 +94,8 @@ nutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
kName_(ptf.kName_),
nuName_(ptf.nuName_),
Ks_(ptf.Ks_, mapper),
Cs_(ptf.Cs_, mapper)
{}
@ -106,6 +110,8 @@ nutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF, dict),
kName_(dict.lookupOrDefault<word>("k", "k")),
nuName_(dict.lookupOrDefault<word>("nu", "nu")),
Ks_("Ks", dict, p.size()),
Cs_("Cs", dict, p.size())
{}
@ -118,6 +124,8 @@ nutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(nrwfpsf),
kName_(nrwfpsf.kName_),
nuName_(nrwfpsf.nuName_),
Ks_(nrwfpsf.Ks_),
Cs_(nrwfpsf.Cs_)
{}
@ -131,6 +139,8 @@ nutRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(nrwfpsf, iF),
kName_(nrwfpsf.kName_),
nuName_(nrwfpsf.nuName_),
Ks_(nrwfpsf.Ks_),
Cs_(nrwfpsf.Cs_)
{}
@ -177,10 +187,10 @@ void nutRoughWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
const scalarField& k = db().lookupObject<volScalarField>("k");
const scalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
scalarField& nutw = *this;
@ -226,6 +236,8 @@ void nutRoughWallFunctionFvPatchScalarField::updateCoeffs()
void nutRoughWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
Cs_.writeEntry("Cs", os);
Ks_.writeEntry("Ks", os);
writeEntry("value", os);

View File

@ -64,6 +64,12 @@ class nutRoughWallFunctionFvPatchScalarField
{
// Private data
//- Name of turbulence kinetic energy field
word kName_;
//- Name of laminar viscosity field
word nuName_;
//- Roughness height
scalarField Ks_;

View File

@ -49,6 +49,8 @@ nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
nuName_("nu"),
roughnessHeight_(pTraits<scalar>::zero),
roughnessConstant_(pTraits<scalar>::zero),
roughnessFudgeFactor_(pTraits<scalar>::zero)
@ -65,6 +67,8 @@ nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
nuName_(ptf.nuName_),
roughnessHeight_(ptf.roughnessHeight_),
roughnessConstant_(ptf.roughnessConstant_),
roughnessFudgeFactor_(ptf.roughnessFudgeFactor_)
@ -80,6 +84,8 @@ nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
nuName_(dict.lookupOrDefault<word>("nu", "nu")),
roughnessHeight_(readScalar(dict.lookup("roughnessHeight"))),
roughnessConstant_(readScalar(dict.lookup("roughnessConstant"))),
roughnessFudgeFactor_(readScalar(dict.lookup("roughnessFudgeFactor")))
@ -93,6 +99,8 @@ nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(tppsf),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_),
roughnessHeight_(tppsf.roughnessHeight_),
roughnessConstant_(tppsf.roughnessConstant_),
roughnessFudgeFactor_(tppsf.roughnessFudgeFactor_)
@ -107,6 +115,8 @@ nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
)
:
fixedValueFvPatchScalarField(tppsf, iF),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_),
roughnessHeight_(tppsf.roughnessHeight_),
roughnessConstant_(tppsf.roughnessConstant_),
roughnessFudgeFactor_(tppsf.roughnessFudgeFactor_)
@ -130,13 +140,13 @@ void nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
// The flow velocity at the adjacent cell centre.
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
scalarField& nutw = *this;
scalarField magFaceGradU = mag(U.snGrad());
@ -276,6 +286,8 @@ void nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField::write
) const
{
fixedValueFvPatchScalarField::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
os.writeKeyword("roughnessHeight")
<< roughnessHeight_ << token::END_STATEMENT << nl;
os.writeKeyword("roughnessConstant")

View File

@ -58,8 +58,21 @@ class nutSpalartAllmarasStandardRoughWallFunctionFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of laminar viscosity field
word nuName_;
// Roughness model parameters
//- Height
scalar roughnessHeight_;
//- Constant
scalar roughnessConstant_;
//- Scale factor
scalar roughnessFudgeFactor_;
@ -143,38 +156,39 @@ public:
// Access
//- Return the fluctuation scale
//- Return the roughness height
const scalar& roughnessHeight() const
{
return roughnessHeight_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness height to allow adjustment
scalar& roughnessHeight()
{
return roughnessHeight_;
}
//- Return the fluctuation scale
//- Return the roughness constant scale
const scalar& roughnessConstant() const
{
return roughnessConstant_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness constant to allow adjustment
scalar& roughnessConstant()
{
return roughnessConstant_;
}
//- Return the fluctuation scale
//- Return the roughness scale factor
const scalar& roughnessFudgeFactor() const
{
return roughnessFudgeFactor_;
}
//- Return reference to the fluctuation scale to allow adjustment
//- Return reference to the roughness scale factor to allow
// adjustment
scalar& roughnessFudgeFactor()
{
return roughnessFudgeFactor_;

View File

@ -48,7 +48,9 @@ nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
nuName_("nu")
{}
@ -61,7 +63,9 @@ nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
nuName_(ptf.nuName_)
{}
@ -73,7 +77,9 @@ nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
nuName_(dict.lookupOrDefault<word>("nu", "nu"))
{}
@ -83,7 +89,9 @@ nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const nutSpalartAllmarasStandardWallFunctionFvPatchScalarField& tppsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(tppsf),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_)
{}
@ -94,7 +102,9 @@ nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(tppsf, iF),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_)
{}
@ -114,12 +124,12 @@ void nutSpalartAllmarasStandardWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
scalarField& nutw = *this;
scalarField magFaceGradU = mag(U.snGrad());
@ -155,6 +165,17 @@ void nutSpalartAllmarasStandardWallFunctionFvPatchScalarField::evaluate
}
void nutSpalartAllmarasStandardWallFunctionFvPatchScalarField::write
(
Ostream& os
) const
{
fixedValueFvPatchScalarField::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
makePatchTypeField

View File

@ -58,6 +58,12 @@ class nutSpalartAllmarasStandardWallFunctionFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of laminar viscosity field
word nuName_;
public:
@ -144,6 +150,9 @@ public:
(
const Pstream::commsTypes commsType=Pstream::blocking
);
//- Write
virtual void write(Ostream& os) const;
};

View File

@ -48,7 +48,9 @@ nutSpalartAllmarasWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
UName_("U"),
nuName_("nu")
{}
@ -61,7 +63,9 @@ nutSpalartAllmarasWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
UName_(ptf.UName_),
nuName_(ptf.nuName_)
{}
@ -73,7 +77,9 @@ nutSpalartAllmarasWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
nuName_(dict.lookupOrDefault<word>("nu", "nu"))
{}
@ -83,7 +89,9 @@ nutSpalartAllmarasWallFunctionFvPatchScalarField
const nutSpalartAllmarasWallFunctionFvPatchScalarField& tppsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(tppsf),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_)
{}
@ -94,7 +102,9 @@ nutSpalartAllmarasWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(tppsf, iF),
UName_(tppsf.UName_),
nuName_(tppsf.nuName_)
{}
@ -113,12 +123,12 @@ void nutSpalartAllmarasWallFunctionFvPatchScalarField::evaluate
const scalarField& ry = patch().deltaCoeffs();
const fvPatchVectorField& U =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
scalarField magUp = mag(U.patchInternalField() - U);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
scalarField& nutw = *this;
@ -167,6 +177,17 @@ void nutSpalartAllmarasWallFunctionFvPatchScalarField::evaluate
}
void nutSpalartAllmarasWallFunctionFvPatchScalarField::write
(
Ostream& os
) const
{
fixedValueFvPatchScalarField::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
makePatchTypeField(fvPatchScalarField, nutSpalartAllmarasWallFunctionFvPatchScalarField);

View File

@ -58,6 +58,12 @@ class nutSpalartAllmarasWallFunctionFvPatchScalarField
{
// Private data
//- Name of velocity field
word UName_;
//- Name of laminar viscosity field
word nuName_;
public:
@ -137,6 +143,9 @@ public:
(
const Pstream::commsTypes commsType=Pstream::blocking
);
//- Write
virtual void write(Ostream& os) const;
};

View File

@ -48,7 +48,9 @@ nutWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(p, iF)
fixedValueFvPatchScalarField(p, iF),
kName_("k"),
nuName_("nu")
{}
@ -61,7 +63,9 @@ nutWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedValueFvPatchScalarField(ptf, p, iF, mapper)
fixedValueFvPatchScalarField(ptf, p, iF, mapper),
kName_(ptf.kName_),
nuName_(ptf.nuName_)
{}
@ -73,28 +77,34 @@ nutWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedValueFvPatchScalarField(p, iF, dict)
fixedValueFvPatchScalarField(p, iF, dict),
kName_(dict.lookupOrDefault<word>("k", "k")),
nuName_(dict.lookupOrDefault<word>("nu", "nu"))
{}
nutWallFunctionFvPatchScalarField::
nutWallFunctionFvPatchScalarField
(
const nutWallFunctionFvPatchScalarField& tppsf
const nutWallFunctionFvPatchScalarField& nwfpsf
)
:
fixedValueFvPatchScalarField(tppsf)
fixedValueFvPatchScalarField(nwfpsf),
kName_(nwfpsf.kName_),
nuName_(nwfpsf.nuName_)
{}
nutWallFunctionFvPatchScalarField::
nutWallFunctionFvPatchScalarField
(
const nutWallFunctionFvPatchScalarField& tppsf,
const nutWallFunctionFvPatchScalarField& nwfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedValueFvPatchScalarField(tppsf, iF)
fixedValueFvPatchScalarField(nwfpsf, iF),
kName_(nwfpsf.kName_),
nuName_(nwfpsf.nuName_)
{}
@ -112,10 +122,10 @@ void nutWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
const volScalarField& k = db().lookupObject<volScalarField>("k");
const volScalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
scalarField& nutw = *this;
@ -140,6 +150,8 @@ void nutWallFunctionFvPatchScalarField::updateCoeffs()
void nutWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
writeEntry("value", os);
}

View File

@ -57,6 +57,14 @@ class nutWallFunctionFvPatchScalarField
:
public fixedValueFvPatchScalarField
{
//Private data
//- Name of turbulence kinetic energy field
word kName_;
//- Name of laminar viscosity field
word nuName_;
public:

View File

@ -64,7 +64,12 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(p, iF)
fixedInternalValueFvPatchField<scalar>(p, iF),
UName_("U"),
kName_("k"),
GName_("G"),
nuName_("nu"),
nutName_("nut")
{
checkType();
}
@ -78,7 +83,12 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const fvPatchFieldMapper& mapper
)
:
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper)
fixedInternalValueFvPatchField<scalar>(ptf, p, iF, mapper),
UName_(ptf.UName_),
kName_(ptf.kName_),
GName_(ptf.GName_),
nuName_(ptf.nuName_),
nutName_(ptf.nutName_)
{
checkType();
}
@ -91,7 +101,12 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
const dictionary& dict
)
:
fixedInternalValueFvPatchField<scalar>(p, iF, dict)
fixedInternalValueFvPatchField<scalar>(p, iF, dict),
UName_(dict.lookupOrDefault<word>("U", "U")),
kName_(dict.lookupOrDefault<word>("k", "k")),
GName_(dict.lookupOrDefault<word>("G", "G")),
nuName_(dict.lookupOrDefault<word>("nu", "nu")),
nutName_(dict.lookupOrDefault<word>("nut", "nut"))
{
checkType();
}
@ -99,10 +114,15 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
(
const omegaWallFunctionFvPatchScalarField& ewfpsf
const omegaWallFunctionFvPatchScalarField& owfpsf
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf)
fixedInternalValueFvPatchField<scalar>(owfpsf),
UName_(owfpsf.UName_),
kName_(owfpsf.kName_),
GName_(owfpsf.GName_),
nuName_(owfpsf.nuName_),
nutName_(owfpsf.nutName_)
{
checkType();
}
@ -110,11 +130,16 @@ omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
omegaWallFunctionFvPatchScalarField::omegaWallFunctionFvPatchScalarField
(
const omegaWallFunctionFvPatchScalarField& ewfpsf,
const omegaWallFunctionFvPatchScalarField& owfpsf,
const DimensionedField<scalar, volMesh>& iF
)
:
fixedInternalValueFvPatchField<scalar>(ewfpsf, iF)
fixedInternalValueFvPatchField<scalar>(owfpsf, iF),
UName_(owfpsf.UName_),
kName_(owfpsf.kName_),
GName_(owfpsf.GName_),
nuName_(owfpsf.nuName_),
nutName_(owfpsf.nutName_)
{
checkType();
}
@ -135,21 +160,21 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
const scalarField& y = ras.y()[patch().index()];
volScalarField& G = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("G"));
(db().lookupObject<volScalarField>(GName_));
volScalarField& omega = const_cast<volScalarField&>
(db().lookupObject<volScalarField>("omega"));
(db().lookupObject<volScalarField>(dimensionedInternalField().name()));
const scalarField& k = db().lookupObject<volScalarField>("k");
const scalarField& k = db().lookupObject<volScalarField>(kName_);
const scalarField& nuw =
patch().lookupPatchField<volScalarField, scalar>("nu");
patch().lookupPatchField<volScalarField, scalar>(nuName_);
const scalarField& nutw =
patch().lookupPatchField<volScalarField, scalar>("nut");
patch().lookupPatchField<volScalarField, scalar>(nutName_);
const fvPatchVectorField& Uw =
patch().lookupPatchField<volVectorField, vector>("U");
patch().lookupPatchField<volVectorField, vector>(UName_);
const scalarField magGradUw = mag(Uw.snGrad());
@ -183,6 +208,11 @@ void omegaWallFunctionFvPatchScalarField::updateCoeffs()
void omegaWallFunctionFvPatchScalarField::write(Ostream& os) const
{
fixedInternalValueFvPatchField<scalar>::write(os);
writeEntryIfDifferent<word>(os, "U", "U", UName_);
writeEntryIfDifferent<word>(os, "k", "k", kName_);
writeEntryIfDifferent<word>(os, "G", "G", GName_);
writeEntryIfDifferent<word>(os, "nu", "nu", nuName_);
writeEntryIfDifferent<word>(os, "nut", "nut", nutName_);
writeEntry("value", os);
}

View File

@ -55,6 +55,23 @@ class omegaWallFunctionFvPatchScalarField
:
public fixedInternalValueFvPatchField<scalar>
{
// Private data
//- Name of velocity field
word UName_;
//- Name of turbulence kinetic energy field
word kName_;
//- Name of turbulence generation field
word GName_;
//- Name of laminar viscosity field
word nuName_;
//- Name of turbulent viscosity field
word nutName_;
// Private member functions

View File

@ -101,9 +101,6 @@ kOmega::kOmega
)
),
omega0_("omega0", dimless/dimTime, SMALL),
omegaSmall_("omegaSmall", dimless/dimTime, SMALL),
k_
(
IOobject
@ -271,7 +268,7 @@ void kOmega::correct()
// Re-calculate viscosity
nut_ == k_/omega_;
nut_ == k_/(omega_ + omegaSmall_);
nut_.correctBoundaryConditions();
}

View File

@ -90,10 +90,6 @@ class kOmega
dimensionedScalar alphaOmega_;
dimensionedScalar omega0_;
dimensionedScalar omegaSmall_;
// Fields
volScalarField k_;

View File

@ -198,19 +198,6 @@ kOmegaSST::kOmegaSST
)
),
omega0_("omega0", dimless/dimTime, SMALL),
omegaSmall_("omegaSmall", dimless/dimTime, SMALL),
Cmu_
(
dimensioned<scalar>::lookupOrAddToDict
(
"Cmu",
coeffDict_,
0.09
)
),
y_(mesh_),
k_
@ -331,7 +318,6 @@ bool kOmegaSST::read()
betaStar_.readIfPresent(coeffDict_);
a1_.readIfPresent(coeffDict_);
c1_.readIfPresent(coeffDict_);
Cmu_.readIfPresent(coeffDict_);
return true;
}

View File

@ -57,7 +57,6 @@ Description
@verbatim
kOmegaSST
{
Cmu 0.09;
alphaK1 0.85034;
alphaK2 1.0;
alphaOmega1 0.5;
@ -103,6 +102,7 @@ class kOmegaSST
{
// Private data
// Model coefficients
dimensionedScalar alphaK1_;
dimensionedScalar alphaK2_;
@ -120,13 +120,12 @@ class kOmegaSST
dimensionedScalar a1_;
dimensionedScalar c1_;
dimensionedScalar omega0_;
dimensionedScalar omegaSmall_;
dimensionedScalar Cmu_;
//- Wall distance field
// Note: different to wall distance in parent RASModel
wallDist y_;
// Fields
volScalarField k_;
volScalarField omega_;
volScalarField nut_;