Elliptic-blending k - ε model
Elliptic-blending k - ε model
Elliptic-blending k - ε model
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong> <strong>model</strong><br />
Validation and verification<br />
Sylvain Lardeau
Introduction<br />
Assessing performance of the newly implemented elliptic<br />
<strong>blending</strong> <strong>model</strong> from University of Manchester, Billard &<br />
Laurence (2012), in canonical and complex flow<br />
configurations.
Introduction<br />
Assessing performance of the newly implemented elliptic<br />
<strong>blending</strong> <strong>model</strong> from University of Manchester, Billard &<br />
Laurence (2012), in canonical and complex flow<br />
configurations.<br />
1. Formulation of the baseline <strong>model</strong> (comments and<br />
adaptations needed)<br />
2. Wall-treatment for irregular meshes<br />
3. Results
Formulation<br />
Original <strong>model</strong>, Billard & Laurence (2012)<br />
Dρk<br />
Dt = Pk +E −ρ<strong>ε</strong>+ ∂<br />
<br />
µ µt ∂k<br />
+<br />
∂xj 2 σk ∂xj<br />
Dρ<strong>ε</strong> 1 <br />
= C<strong>ε</strong>1<br />
Dt τ<br />
Pk −ρC ∗ <strong>ε</strong>2<strong>ε</strong> + ∂<br />
<br />
µ µt ∂<strong>ε</strong><br />
+<br />
∂xj 2 σ<strong>ε</strong> ∂xj<br />
Dρϕ<br />
Dt = ρ(1−α3 )fw +ρα 3 ϕ<br />
fh −Pk<br />
k +CDϕ + ∂<br />
<br />
µ µt ∂<br />
+<br />
∂xj 2 σϕ ∂<br />
L 2 ∂2 α<br />
∂xj∂xj<br />
= α−1
Formulation<br />
Equation-by-equation modifications<br />
Turbulent kinetic energy k:<br />
Modifications:<br />
Dρk<br />
Dt = Pk +Pb +E −ρ<strong>ε</strong>+ ∂<br />
◮ Adding buoyancy source term Pb,<br />
∂xj<br />
<br />
µ µt ∂k<br />
+<br />
2 σk ∂xj<br />
◮ What alternative formulation for E ? Expensive to compute,<br />
and only active very near the wall.<br />
◮ Definition of time-scale τ and τlim:<br />
<br />
k2<br />
τ =<br />
<strong>ε</strong><br />
+C 2 t<br />
ν<br />
<strong>ε</strong> ; τlim<br />
<br />
CT<br />
= max τ, √<br />
3CµϕS<br />
with S = 2SijSij. Where is CT = 0.6 coming from?
Formulation<br />
Equation-by-equation modifications<br />
Turbulent dissipation rate <strong>ε</strong>:<br />
Dρ<strong>ε</strong><br />
Dt<br />
Modifications:<br />
1 <br />
= C<strong>ε</strong>1<br />
τ<br />
(fcPk +Pb)−ρC ∗ <strong>ε</strong>2<strong>ε</strong> + ∂<br />
∂xj<br />
◮ Adding buoyancy source term Pb,<br />
<br />
µ µt ∂<strong>ε</strong><br />
+<br />
2 σ<strong>ε</strong> ∂xj<br />
◮ Testing curvature correction fc, as suggested by Durbin for<br />
k −ω <strong>model</strong>s:<br />
◮ Option for C ∗ <strong>ε</strong>2 :<br />
fc = 1+α1|η3|+3α1|η3|<br />
C ∗ <strong>ε</strong>2 =<br />
⎧<br />
⎨ C<strong>ε</strong>2<br />
⎩ C<strong>ε</strong>2 +α3 (0.4−C<strong>ε</strong>2 )tanh<br />
<br />
∂ νt ∂k<br />
∂xj σk ∂xj<br />
<strong>ε</strong>−1 <br />
<br />
3/2
Formulation<br />
Equation-by-equation modifications<br />
Reduced normal stress ϕ:<br />
Dρϕ<br />
Dt = ρ(1−α3 )fw+ρα 3 fh−ρCµτlimϕ 2 S 2 + ∂<br />
with<br />
fw = − ϕ<strong>ε</strong><br />
2k ; fh = − 1<br />
τ<br />
Modifications:<br />
<br />
C1 −1+C2<br />
<br />
µ µt ∂ϕ<br />
+<br />
∂xj 2 σϕ ∂xj<br />
<br />
Pk +Pb<br />
ϕ−<br />
ρ<strong>ε</strong><br />
2<br />
<br />
3<br />
◮ Buoyancy source term added here Pb (is it correct?),<br />
◮ Cross-diffusion term neglected: found to pose significant<br />
problems in many cases with coarse mesh.<br />
◮ Dissipation term Pk ϕ<br />
k by ρCµτlimϕ 2 S 2 to avoid division by<br />
zero when k → 0.
Formulation<br />
All-y + wall-treatment<br />
Those terms needs to be defined at the first cell away from the<br />
wall:<br />
Remarks:<br />
Pk =<br />
<br />
(U + uk) 2 νt 0.95(1−νt)<br />
2 classical u∗<br />
u4 ∗ dU<br />
ν<br />
+<br />
dy +<br />
<br />
1− dU+<br />
dy +<br />
<br />
iterative u∗<br />
<strong>ε</strong> = Γ νk<br />
+(1−Γ)<br />
y2 E = − u2 k<br />
µ 0.0875exp<br />
Cµu∗k<br />
2κy<br />
<br />
−20.66<br />
◮ U + is taken from Reichardt’s law:<br />
U + = 1<br />
κ ln(1+κy+ )+C<br />
<br />
<br />
ln(y + )<br />
ln(10) −1.01<br />
<br />
2<br />
1−e<br />
with C = 1<br />
κ ln <br />
E 1 y +<br />
κ and b = mκ 1<br />
2 C +<br />
y + m<br />
−y +<br />
y + m + y+<br />
y + m<br />
<br />
.<br />
e −by+
Formulation<br />
All-y + wall-treatment<br />
Those terms needs to be defined at the first cell away from the<br />
wall:<br />
ϕ + ⎧<br />
⎪⎨ 0.0015y<br />
=<br />
⎪⎩<br />
+2<br />
if y + < y + 1<br />
Fi(t) if y +<br />
i ≤ y+ < y +<br />
i+1<br />
0.30766 log(y+ )<br />
log(10) −0.2775 if y+ ≥ y + 5<br />
Fi(t) = (2t 3 −3t 2 +1)f +<br />
i +(t3 −2t 2 +t)m +<br />
i ∆y+ +(3t 2 −2t 3 )f +<br />
i+1<br />
⎧<br />
˜y<br />
⎨<br />
˜y+ 1 if y<br />
˜y<br />
+ > 17<br />
α =<br />
⎩<br />
with uk = νy + /y.<br />
What about Pb?<br />
<br />
−y +<br />
1−exp<br />
24.52<br />
if y + < 17
Results: convergence
Validation<br />
Convergence<br />
Best convergence rate obtained when initial flow condition from:<br />
Turbulence Specification:<br />
turbulence intensity + turbulent viscosity ratio<br />
with Tu = 5% and TVR = 200.<br />
All cases computed in Double Precision.<br />
Residual<br />
1<br />
0.01<br />
1E−4<br />
1E−6<br />
1E−8<br />
1E−10<br />
1E−12<br />
1E−14<br />
1E−16<br />
1E−18<br />
0 1000 2000 3000 4000 5000<br />
Iteration<br />
Continuity<br />
X−momentum<br />
Y−momentum<br />
Tke<br />
Tdr<br />
Phi<br />
Alpha<br />
1E−12<br />
0 200 400 600 800<br />
Iteration<br />
1000 1200 1400<br />
Channel flow backward-facing step<br />
Residual<br />
10<br />
1<br />
0.1<br />
0.01<br />
0.001<br />
1E−4<br />
1E−5<br />
1E−6<br />
1E−7<br />
1E−8<br />
1E−9<br />
1E−10<br />
1E−11<br />
Continuity<br />
X−momentum<br />
Y−momentum<br />
Tke<br />
Tdr<br />
Phi<br />
Alpha
Validation<br />
Convergence<br />
For all cases shown below, the best convergence rate was obtained<br />
when the initial flow condition were computed from: Turbulence<br />
Specification: turbulence intensity + turbulent<br />
viscosity ratio with Tu = 5% and TVR = 200. The following<br />
cases were also run in Double Precision to validate the linearization<br />
method.<br />
Residual<br />
10<br />
0.001<br />
1<br />
0.1<br />
0.01<br />
1E−4<br />
1E−5<br />
1E−6<br />
1E−7<br />
1E−8<br />
1E−9<br />
1E−10<br />
1E−11<br />
1E−12<br />
1E−13<br />
1E−14<br />
1E−15<br />
1E−16<br />
1E−17<br />
1E−18<br />
1E−19<br />
0 2000 4000 6000 8000 10000<br />
Iteration<br />
12000 14000 16000 18000 20000<br />
1E−17<br />
0 400 800 1200 1600 2000 2400 2800<br />
Iteration<br />
Diffuser 2d naca 4412<br />
Residual<br />
10<br />
0.1<br />
0.001<br />
1E−5<br />
1E−7<br />
1E−9<br />
1E−11<br />
1E−13<br />
1E−15<br />
Continuity<br />
X−momentum<br />
Y−momentum<br />
Tke<br />
Tdr<br />
Phi<br />
Alpha
Results: validation of all-y + wall-treatment
Validation — Wall-treatment<br />
Channel flow<br />
7 different meshes, with different y + values but also different grid<br />
ratio above the first cell,<br />
for Reτ =550 but similar conclusion where obtained for Reτ = 2000.<br />
Mesh1 and LowRe Mesh2 Mesh3 Mesh4<br />
y + =1 y + =14 y + =28 y + =34<br />
Mesh5 Mesh6 Mesh7<br />
y + =66 y + =40 y + =14
Validation — Wall-treatment<br />
Channel flow<br />
Realizable k −<strong>ε</strong> two-layer <strong>model</strong>:<br />
U/uτ<br />
20<br />
15<br />
10<br />
5<br />
0<br />
DNS<br />
Mesh 1<br />
Mesh 2<br />
Mesh 6<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
SST k −ω <strong>model</strong>:<br />
U/uτ<br />
20<br />
15<br />
10<br />
5<br />
0<br />
DNS<br />
Mesh 1<br />
Mesh 2<br />
Mesh 6<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong> <strong>model</strong>:<br />
U/uτ<br />
20<br />
15<br />
10<br />
5<br />
0<br />
DNS<br />
Mesh 1<br />
Mesh 2<br />
Mesh 6<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
Realizable k −<strong>ε</strong> two-layer <strong>model</strong>:<br />
k/u 2 τ<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
SST k −ω <strong>model</strong>:<br />
k/u 2 τ<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong> <strong>model</strong>:<br />
k/u 2 τ<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
Realizable k −<strong>ε</strong> two-layer <strong>model</strong>:<br />
νt/ν<br />
100<br />
10<br />
1<br />
0.1<br />
0.01<br />
0.001<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
SST k −ω <strong>model</strong>:<br />
νt/ν<br />
100<br />
10<br />
1<br />
0.1<br />
0.01<br />
0.001<br />
1 10 100<br />
y +
Validation — Wall-treatment<br />
Channel flow<br />
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong> <strong>model</strong>:<br />
νt/ν<br />
100<br />
10<br />
1<br />
0.1<br />
0.01<br />
0.001<br />
1 10 100<br />
y +
Results: performance compare to current default<br />
<strong>model</strong>s<br />
(Realizable k −<strong>ε</strong> two-layer and SST k −ω)
Validation — Performance<br />
Channel flow - Comparison with defaults <strong>model</strong>s<br />
Simulation on fine mesh (y + = 1), forced dp/dx, C ∗ <strong>ε</strong>2 =cst:<br />
U/uτ<br />
20<br />
15<br />
10<br />
5<br />
0<br />
DNS<br />
Rke 2-layer<br />
SST k −ω<br />
EB k −<strong>ε</strong><br />
1 10 100<br />
y +<br />
k/u 2 τ<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
1 10 100<br />
y +
Validation — Performance<br />
Channel flow - Comparison with defaults <strong>model</strong>s<br />
Simulation on fine mesh (y + = 1), forced dp/dx, C ∗ <strong>ε</strong>2 =cst:<br />
<strong>ε</strong>ν/u 4 τ<br />
0.3<br />
0.2<br />
0.1<br />
0<br />
1 10 100<br />
y +<br />
νt/ν<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
1 10 100<br />
y +
Validation — Performance<br />
Backward facing step - Comparison with defaults <strong>model</strong>s<br />
Set-up:<br />
◮ Periodic boundary conditions,<br />
◮ Variable C ∗ <strong>ε</strong>2 ,<br />
◮ Iterative u ∗
Validation — Performance<br />
Backward facing step - Comparison with defaults <strong>model</strong>s<br />
Cf<br />
0.003<br />
0.002<br />
0.001<br />
0<br />
-0.001<br />
-0.002<br />
-0.003<br />
-0.004<br />
expe.<br />
Rke 2-layer<br />
SST k −ω<br />
EB k −<strong>ε</strong><br />
0 5 10<br />
x/H<br />
15 20<br />
Skin friction coefficient
Validation — Performance<br />
Backward facing step - Comparison with defaults <strong>model</strong>s<br />
y/H<br />
2<br />
1<br />
0<br />
-4 -2 0 2 4 6<br />
x/H<br />
8 10 12 14<br />
Streamwise velocity
Validation — Performance<br />
Backward facing step - Comparison with defaults <strong>model</strong>s<br />
y/H<br />
2<br />
1<br />
0<br />
-4 -2 0 2 4 6<br />
x/H<br />
8 10 12 14<br />
Turbulent kinetic energy
Validation — Performance<br />
Periodic 2d hill - Comparison with defaults <strong>model</strong>s<br />
Comparison with case from Fröhlhich et al. Two meshes used:<br />
fine, wall-resolved, mesh, and coarse mesh.<br />
Set-up:<br />
Coarse mesh<br />
◮ Periodic boundary conditions,<br />
◮ Variable C ∗ <strong>ε</strong>2 ,<br />
◮ Iterative u ∗
Validation — Performance<br />
Periodic 2d hill - Comparison with defaults <strong>model</strong>s<br />
LES Realizable k −<strong>ε</strong> two-layer<br />
SST k −ω EB k −<strong>ε</strong>
Validation — Performance<br />
Periodic 2d hill - Comparison with defaults <strong>model</strong>s<br />
Cf<br />
Comparison with Fröhlhich et al. (2001) LES data:<br />
0.01<br />
0<br />
LES<br />
Rke 2-layer<br />
SST k −ω<br />
EB k −<strong>ε</strong><br />
0 1 2 3 4 5 6 7 8 9<br />
x/H<br />
Skin friction coefficient, bottom wall
Validation — Performance<br />
Periodic 2d hill - Comparison with defaults <strong>model</strong>s<br />
y/H<br />
Comparison with Fröhlhich et al. (2001) LES data:<br />
1<br />
0<br />
0 1 2 3 4 5 6 7 8 9<br />
x/H<br />
Streamwise velocity profiles
Validation — Performance<br />
Periodic 2d hill - Comparison with defaults <strong>model</strong>s<br />
y/H<br />
Comparison with Fröhlhich et al. (2001) LES data:<br />
1<br />
0<br />
0 1 2 3 4 5 6 7 8 9<br />
x/H<br />
Turbulent kinetic energy
Validation — Performance<br />
2d diffuser - Comparison with defaults <strong>model</strong>s
Validation — Performance<br />
2d diffuser - Comparison with defaults <strong>model</strong>s<br />
Realizable k −<strong>ε</strong> two-layer<br />
SST k −ω<br />
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong>
Cf<br />
Validation — Performance<br />
2d diffuser - Comparison with defaults <strong>model</strong>s<br />
0.002<br />
0.001<br />
0<br />
-0.001<br />
Exp.<br />
Rke 2-layer<br />
SST k −ω<br />
EB k −<strong>ε</strong><br />
0 10 20 30<br />
x/H<br />
40 50 60<br />
Skin friction coefficient
Validation — Performance<br />
2d diffuser - Comparison with defaults <strong>model</strong>s<br />
y/H<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
y/H<br />
0<br />
0 5 10 15 20 25 30<br />
x/H<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0 5 10 15 20 25 30<br />
x/H<br />
Streamwise velocity Turbulent kinetic energy
Validation — Performance<br />
3d diffuser - Comparison with defaults <strong>model</strong>s
Validation — Performance<br />
3d diffuser - Comparison with defaults <strong>model</strong>s<br />
Realizable k −<strong>ε</strong> two-layer SST k −ω<br />
<strong>Elliptic</strong>-<strong>blending</strong> k −<strong>ε</strong>
Where <strong>model</strong> should be improved:<br />
1. Rotating and strong curvature<br />
⇒ frame-rotation independent solution,<br />
curvature neglected<br />
2. Buoyancy-driven flows<br />
⇒ laminar solution, poor convergence,<br />
algebraic-heat flux
Part 1: Rotation and strong curvature
Failure — need for improvement<br />
Rotating channel flow<br />
Rotating channel flow DNS study from Kristofferson & Andersson<br />
(1993), for Rossby number varying as 0 < Ro < 0.5:<br />
U/U0<br />
45<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
Ro = 0.1<br />
Ro = 0<br />
DNS<br />
Baseline<br />
CC<br />
Ro = 0.5<br />
-1 -0.5 0<br />
y/H<br />
0.5 1<br />
k/U 2 0<br />
10<br />
5<br />
0<br />
5<br />
0<br />
5<br />
Ro = 0.5<br />
Ro = 0.1<br />
Ro = 0<br />
0<br />
-1 -0.5 0<br />
y/H<br />
0.5 1<br />
Streamwise velocity Turbulent kinetic energy
Failure — need for improvement<br />
NACA 0012 at 10 ◦ incidence<br />
Experimental results from Chow, Zilliac and Bradshaw (1997)<br />
Conclusions from previous studies:<br />
1. T.E. vortex diffuses too quickly with all classical 2-eq. <strong>model</strong>s,<br />
2. lag-<strong>model</strong> and RSM improves on results,<br />
3. CC very beneficial in predicting correct position/intensity of<br />
vortex
Failure — need for improvement<br />
NACA 0012 at 10 ◦ incidence<br />
Axial velocity:<br />
Without CC<br />
With CC
Failure — need for improvement<br />
NACA 0012 at 10 ◦ incidence<br />
Axial velocity:<br />
Without CC<br />
With CC
Failure — need for improvement<br />
NACA 0012 at 10 ◦ incidence<br />
U/Uin<br />
2<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
1<br />
Exp.<br />
Baseline<br />
CC<br />
-0.4-0.2 0 0.20.40.60.8 1<br />
x/C<br />
Axial velocity in the core of the<br />
vortex<br />
Comments:<br />
◮ Without Curvature<br />
correction, vortex bursts<br />
too quickly → not good<br />
for F1,<br />
◮ Current curvature<br />
correction probably not<br />
ideal: needs bound to<br />
get current results, and<br />
changes results for some<br />
of the baseline case → it<br />
is a new <strong>model</strong>.
Part 2: Buoyancy-driven flows
Failure — need for improvement<br />
Buoyancy driven flow — Tall cavity<br />
Case from Betts and Bokhari (2001)<br />
◮ Symbols: Exp.<br />
◮ Yellow line: v 2 −f<br />
◮ Red line: EB k −<strong>ε</strong><br />
Comments:<br />
Too large decay of k close to<br />
the wall (laminar-state like)<br />
⇒ over-prediction of velocity<br />
and over-prediction of<br />
temperature gradient<br />
y/H<br />
Turbulent kinetic energy<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
0 0.01 0.02 0.03<br />
x/H
Failure — need for improvement<br />
Buoyancy driven flow — Tall cavity<br />
Case from Betts and Bokhari (2001)<br />
Temperature Velocity<br />
y/H<br />
308<br />
306<br />
304<br />
302<br />
300<br />
298<br />
296<br />
294<br />
292<br />
290<br />
0 0.01 0.02 0.03<br />
x/H<br />
y/H<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
0 0.01 0.02 0.03<br />
x/H
Failure — need for improvement<br />
Vertical channel — Kasagi & al<br />
Normalized velocity profiles (local scaling):<br />
Hot aiding wall Cold opposing wall<br />
U/U0<br />
20<br />
18<br />
16<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
2<br />
0<br />
DNS<br />
Std k −<strong>ε</strong><br />
v2−f<br />
EB k −<strong>ε</strong><br />
1 10<br />
x/H<br />
100<br />
U/U0<br />
20<br />
18<br />
16<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
2<br />
0<br />
DNS<br />
Std k −<strong>ε</strong><br />
v2−f<br />
EB k −<strong>ε</strong><br />
1 10<br />
x/H<br />
100
Failure — need for improvement<br />
Vertical channel — Kasagi & al<br />
U/U0<br />
1<br />
0.9<br />
0.8<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0.3<br />
0.2<br />
0.1<br />
0<br />
Velocity Turbulent kinetic energy<br />
DNS<br />
Std k −<strong>ε</strong><br />
v2−f<br />
EB k −<strong>ε</strong><br />
-1 -0.5 0<br />
x/H<br />
0.5 1<br />
U/U0<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
-1 -0.5 0<br />
x/H<br />
0.5 1