Skip to content
Snippets Groups Projects
Commit c7ca458e authored by henry's avatar henry
Browse files

Added Yi Wang's RMS correction factor and parameter alpha.

parent c1aa2b60
Branches
Tags
No related merge requests found
......@@ -44,6 +44,7 @@ turbulentInletFvPatchField<Type>::turbulentInletFvPatchField
ranGen_(label(0)),
fluctuationScale_(pTraits<Type>::zero),
referenceField_(p.size()),
alpha_(0.1),
curTimeIndex_(-1)
{}
......@@ -61,6 +62,7 @@ turbulentInletFvPatchField<Type>::turbulentInletFvPatchField
ranGen_(label(0)),
fluctuationScale_(ptf.fluctuationScale_),
referenceField_(ptf.referenceField_, mapper),
alpha_(ptf.alpha_),
curTimeIndex_(-1)
{}
......@@ -77,6 +79,7 @@ turbulentInletFvPatchField<Type>::turbulentInletFvPatchField
ranGen_(label(0)),
fluctuationScale_(pTraits<Type>(dict.lookup("fluctuationScale"))),
referenceField_("referenceField", dict, p.size()),
alpha_(dict.lookupOrDefault<scalar>("alpha", 0.1)),
curTimeIndex_(-1)
{
if (dict.found("value"))
......@@ -103,6 +106,7 @@ turbulentInletFvPatchField<Type>::turbulentInletFvPatchField
ranGen_(ptf.ranGen_),
fluctuationScale_(ptf.fluctuationScale_),
referenceField_(ptf.referenceField_),
alpha_(ptf.alpha_),
curTimeIndex_(-1)
{}
......@@ -118,6 +122,7 @@ turbulentInletFvPatchField<Type>::turbulentInletFvPatchField
ranGen_(ptf.ranGen_),
fluctuationScale_(ptf.fluctuationScale_),
referenceField_(ptf.referenceField_),
alpha_(ptf.alpha_),
curTimeIndex_(-1)
{}
......@@ -170,9 +175,14 @@ void turbulentInletFvPatchField<Type>::updateCoeffs()
ranGen_.randomise(randomField[facei]);
}
patchField =
0.9*patchField
+ 0.1*
// Correction-factor proposed by Yi Wang to compensate for the loss
// of RMS fluctuation due to the temporal correlation introduced by
// the alpha parameter.
scalar rmsCorr = sqrt(12*(2*alpha_ - sqr(alpha_)))/alpha_;
patchField =
(rmsCorr*(1 - alpha_))*patchField
+ (rmsCorr*alpha_)*
(
referenceField_
+ cmptMultiply
......
......@@ -26,7 +26,17 @@ Class
Foam::turbulentInletFvPatchField
Description
Foam::turbulentInletFvPatchField
Generate a fluctuating inlet condition by adding a random component
to a reference (mean) field.
Input:
referenceField
Mean field.
fluctuationScale
RMS fluctuation, provided as the fraction of the mean field.
alpha
temporal correlation factor;
the fraction of the new random component added to the previous
time-step (defaults to 0.1).
SourceFiles
turbulentInletFvPatchField.C
......@@ -59,6 +69,7 @@ class turbulentInletFvPatchField
Random ranGen_;
Type fluctuationScale_;
Field<Type> referenceField_;
scalar alpha_;
label curTimeIndex_;
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment