Description🔗
The turbulentInlet
is a boundary condition that produces spatiotemporal-variant
field by summing a set of pseudo-random numbers and a given spatiotemporal-invariant
mean field. The field can be any type, e.g. scalarField
. At a single point and
time, all components are summed by the same random number, e.g. velocity
components (u, v, w) are summed by the same random number, p; thus, output
is (u+p, v+p, w+p).
The pseudo-random number generator obeys the probability density function of the uniform distribution constrained by the range [0:1]. The seed for the random number generator is hard-coded; therefore, it will produce the same sequence of random numbers at every execution.
\[x_p = (1 - \alpha) x_p^{n - 1} + \alpha (x_{ref} + c s R |x_{ref}|)\]where:
Property | Description |
---|---|
\(x_p\) | Patch field |
\(x_{ref}\) | Spatiotemporal-invariant patch scalar |
\(n\) | Time level |
\(\alpha\) | A scalar attempting to build two-temporal-point correlations by heuristically adding a fraction of the new random component to the previous time patch field |
\(c\) | A heuristic automatically calculated correction term to compensate energy level losses due to the alpha scalar |
\(R\) | Pseudo-random number [HARD-CODED seed] |
\(s\) | Fluctuation scale (proportional to the xRef) |
Usage🔗
The condition requires entries in both the boundary and field files.
Boundary file🔗
<patchName>
{
type patch;
...
}
Field file🔗
<patchName>
{
// Mandatory entries
type turbulentInlet;
fluctuationScale <scalar>; // the term `s` above
referenceField <scalarField>; // the term `xRef` above
// Optional entries
alpha <scalar>; // the term `alpha` above
// Inherited entries
...
}
where:
Property | Description | Type | Required | Default |
---|---|---|---|---|
type |
Type name: turbulentInlet
|
word | yes | - |
fluctuationScale |
RMS fluctuation scale (fraction of mean) | scalar | yes | - |
referenceField |
Reference (mean) field | scalarField | yes | - |
alpha |
Fraction of new random component added to previous | scalar | no | 0.1 |
The inherited entries are elaborated in:
- fixedValueFvPatchField.H
-
Random.H
- This boundary condition should not be used for DES or LES computations as a turbulent velocity inflow condition, because the BC will not produce turbulence-alike time-series, and will decay almost immediately downstream of the inlet boundary although its historical name suggests the opposite.
- Nevertheless, the BC may be still used for other applications, e.g. as a uniform-random noise source in aeroacoustics.
Further information🔗
Tutorial:
Source code:
API:
History:
- Introduced in version 1.5