Digital-filter based boundary condition for velocity, i.e. U
, to generate synthetic turbulence-alike time-series for LES and DES turbulent flow computations from input turbulence statistics.
More...
Digital-filter based boundary condition for velocity, i.e. U
, to generate synthetic turbulence-alike time-series for LES and DES turbulent flow computations from input turbulence statistics.
Digital-filter method-based generator (DFM) (tag:KSJ): Klein, M., Sadiki, A., & Janicka, J. (2003). A digital filter based generation of inflow data for spatially developing direct numerical or large eddy simulations. Journal of computational Physics, 186(2), 652-665. DOI:10.1016/S0021-9991(03)00090-1 Forward-stepwise method-based generator (FSM) (tag:XC) Xie, Z. T., & Castro, I. P. (2008). Efficient generation of inflow conditions for large eddy simulation of street-scale flows. Flow, turbulence and combustion, 81(3), 449-470. DOI:10.1007/s10494-008-9151-5 Mass-inflow rate correction (tag:KCX): Kim, Y., Castro, I. P., & Xie, Z. T. (2013). Divergence-free turbulence inflow conditions for large-eddy simulations with incompressible flow solvers. Computers & Fluids, 84, 56-68. DOI:10.1016/j.compfluid.2013.06.001
In DFM
or FSM
, a random number set (mostly white noise), and a group of target statistics (mostly mean flow, Reynolds stress tensor profiles and length-scale sets) are merged into a new number set (stochastic time-series, yet consisting of the statistics) by a chain of mathematical operations whose characteristics are designated by the target statistics, so that the realised statistics of the new sets could match the target.
Random number sets ---->-| | DFM or FSM ---> New stochastic time-series consisting | turbulence statistics Turbulence statistics ->-|
The main difference between DFM
and FSM
is that FSM
replaces the expensive-to-run streamwise convolution summation in DFM
by a simpler and an almost-equivalent-in-effect numerical procedure in order to reduce computational costs. Accordingly, FSM
potentially brings computational resource advantages for computations involving relatively large streamwise length-scale sets and small time-steps.
Synthetic turbulence is generated on a virtual rectangular structured-mesh plane, which is parallel to the chosen patch, and is mapped onto this patch by the selected mapping method.
<patchName> { // Mandatory entries (unmodifiable) type turbulentDigitalFilterInlet; n (<nHeight> <nWidth>); L (<L1> <L2> ... <L9>); R uniform (<Rxx> <Rxy> <Rxz> <Ryy> <Ryz> <Rzz>); UMean uniform (1 0 0); Ubulk 10.0; // Optional entries (unmodifiable) fsm false; Gaussian true; // always false for FSM fixSeed true; continuous false; correctFlowRate true; mapMethod nearestCell; perturb 1e-5; C1 -1.5707; //-0.5*PI; C1FSM -0.7854 //-0.25*PI; C2FSM -1.5707; //-0.5*PI; // Optional (inherited) entries ... }
where the entries mean:
Property | Description | Type | Req'd | Dflt |
---|---|---|---|---|
type | Type name: turbulentDigitalFilterInlet | word | yes | - |
n | Number of cells on turbulence generation plane | tuple of labels | yes | - |
L | Integral length-scale set (Lxu Lxv Lxw Lyu Lyv Lyw Lzu Lzv Lzw) [m] | tensor | yes | - |
R | Reynolds stress tensor set (xx xy xz yy yz zz) [m2/s2] | symmTensorField | yes | - |
UMean | Mean velocity profile [m/s] | vectorField | yes | - |
Ubulk | Characteristic patch-normal bulk flow speed [m/s] | scalar | yes | - |
fsm | Flag to turn on the forward-stepwise method | bool | no | false |
Gaussian | Autocorrelation function form | bool | no | true |
fixSeed | Flag to fix random-number generator seed to 1234 or generate a new seed based on clock-time per simulation | bool | no | true |
continuous | Flag to write random-number sets at output time, and to read them on restart. Otherwise, generate new random-number sets of restart | bool | no false | |
correctFlowRate | Flag to correct mass-inflow rate on turbulence plane in (only) streamwise direction | bool | no | true |
mapMethod | Interpolation-to-patch method | word | no | nearestCell |
perturb | Point perturbation for planarInterpolation mapMethod | scalar | no | 1e-5 |
C1 | Model constant shaping autocorrelation function (KSJ:Eq. 14) | scalar | no | -0.5*PI |
C1FSM | Model coefficient in FSM (XC:Eq. 14) | scalar | no | -0.25*PI |
C2FSM | Model coefficient in FSM (XC:Eq. 14) | scalar | no | -0.5*PI |
The inherited entries are elaborated in:
Options for the fsm
entry:
false | Method due to (KSJ) true | Method due to (XC)
Options for the Gaussian
entry:
true | Gaussian function false | Exponential function (only option for FSM)
Options for the mapMethod
entry:
nearestCell | One-to-one direct map, no interpolation planarInterpolation | Bilinear interpolation
Patch-profile input is available for two entries:
R | Reynolds stress tensor UMean | Mean velocity
where the input profiles and profile coordinates are located in:
Coordinates | $FOAM_CASE/constant/boundaryData/\<patchName\>/points R/UMean | $FOAM_CASE/constant/boundaryData/\<patchName\>/0/\{R/UMean\}
points
file contains a list of three-dimensional coordinates, and profile data files provide a value corresponding to each coordinate.
mapMethod=planarInterpolation
option needs point coordinates that can form a plane.adjustTimeStep=true
option is currently not fully supported.continuous=true
means deterministic-statistical consistent restart (relatively more expensive), and continuous=false
means deterministic discontinuity in synthetic turbulence time-series by keeping statistical consistency (relatively cheaper).L
, the first three entries should always correspond to the length scales in association with the convective (streamwise) mean flow direction.Ubulk
.Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.