【CFD理论】对流项-04
total variation and TVD schemes
- UD scheme is the most stable scheme and does not give any wiggles
- whereas the CD and QUICK schemes have higher-order accuracy and give rise to wiggles under certain conditions.
- our goal is to find a scheme with a higher-order of accuracy without wiggles
- monotinicity preserving 保证单调性
- total variation
criteria for TVD schemes
HIGH RESOLUTION SCHEMES USING FLUX LIMITERS FOR HYPERBOLIC CONSERVATION LAWS
Sweby (1984)给出了TVD格式的充要条件
- 0<r<1,上界是 ψ ( r ) = 2 r \psi(r)=2r ψ(r)=2r,所以TVD格式 ψ ( r ) < 2 r \psi(r)<2r ψ(r)<2r
- r>1,上界是
ψ
(
r
)
=
2
\psi(r)=2
ψ(r)=2,所以TVD格式
ψ
(
r
)
<
2
\psi(r)<2
ψ(r)<2
- ψ ( r ) 是个通量限制器函数 \psi (r)是个通量限制器函数 ψ(r)是个通量限制器函数
- ψ ( r ) 对于二阶精度格式,必须通过点 ( 1 , 1 ) ,所以 U D 不是二阶精度, C D , L U D , Q U I C K 都是二阶精度 \psi(r)对于二阶精度格式,必须通过点(1,1),所以UD不是二阶精度,CD,LUD,QUICK都是二阶精度 ψ(r)对于二阶精度格式,必须通过点(1,1),所以UD不是二阶精度,CD,LUD,QUICK都是二阶精度
flux limiter functions 通量限制器
- Van Leer
- Van Albada
- Min-Mod
- SUPERBEE
- Sweby
- QUICK
- UMIST
TVD schemes for unstructured grids
r
e
=
ϕ
P
−
ϕ
W
ϕ
E
−
ϕ
P
⇒
r_e=\frac{\phi_P-\phi_W}{\phi_E-\phi_P}\Rightarrow
re=ϕE−ϕPϕP−ϕW⇒
r
i
+
1
/
2
=
ϕ
i
−
ϕ
i
−
1
ϕ
i
+
1
−
ϕ
i
r_{i+1/2}=\frac{\phi_i-\phi_{i-1}}{\phi_{i+1}-\phi_{i}}
ri+1/2=ϕi+1−ϕiϕi−ϕi−1
通量求解器
ϕ
i
+
1
/
2
=
ϕ
i
+
1
2
ψ
(
r
i
+
1
/
2
)
(
ϕ
i
+
1
−
ϕ
i
)
\phi_{i+1/2}=\phi_i+\frac{1}{2}\psi(r_{i+1/2})(\phi_{i+1}-\phi_i)
ϕi+1/2=ϕi+21ψ(ri+1/2)(ϕi+1−ϕi)
implementation of TVD schemes
- one-dimensional convection-diffusion equation
d d x ( ρ u ϕ ) = d d x [ Γ d ϕ d x ] \frac{d}{dx}(\rho u \phi)=\frac{d}{dx}[\Gamma\frac{d\phi}{dx}] dxd(ρuϕ)=dxd[Γdxdϕ] - discretised form
F e ϕ e − F w ϕ w = D e ( ϕ E − ϕ P ) − D w ( ϕ P − ϕ W ) F_e\phi_e-F_w\phi_w=D_e(\phi_E-\phi_P)-D_w(\phi_P-\phi_W) Feϕe−Fwϕw=De(ϕE−ϕP)−Dw(ϕP−ϕW) - positive x-direction u>0 and the value of
ϕ
e
\phi_e
ϕe and
ϕ
w
\phi_w
ϕw using a TVD scheme:
ϕ e = ϕ P + 1 2 ψ ( r e ) ( ϕ E − ϕ P ) \phi_e=\phi_P+\frac{1}{2}\psi(r_e)(\phi_E-\phi_P) ϕe=ϕP+21ψ(re)(ϕE−ϕP)
ϕ w = ϕ W + 1 2 ψ ( r w ) ( ϕ P − ϕ W ) \phi_w=\phi_W+\frac{1}{2}\psi(r_w)(\phi_P-\phi_W) ϕw=ϕW+21ψ(rw)(ϕP−ϕW)
r e = ϕ P − ϕ W ϕ E − ϕ P , r w = ϕ W − ϕ W W ϕ P − ϕ W r_e=\frac{\phi_P-\phi_W}{\phi_E-\phi_P},r_w=\frac{\phi_W-\phi_{WW}}{\phi_P-\phi_W} re=ϕE−ϕPϕP−ϕW,rw=ϕP−ϕWϕW−ϕWW - substition of
ϕ
e
\phi_e
ϕe and
ϕ
w
\phi_w
ϕw into equation discretised form
F e [ ϕ P + 1 2 ψ ( r e ) ( ϕ E − ϕ P ) ] − F w [ ϕ W + 1 2 ψ ( r w ) ( ϕ P − ϕ W ) ] F_e[\phi_P+\frac{1}{2}\psi(r_e)(\phi_E-\phi_P)]-F_w[\phi_W+\frac{1}{2}\psi(r_w)(\phi_P-\phi_W)] Fe[ϕP+21ψ(re)(ϕE−ϕP)]−Fw[ϕW+21ψ(rw)(ϕP−ϕW)]
= D e ( ϕ E − ϕ P ) − ( ϕ P − ϕ W ) =D_e(\phi_E-\phi_P)-(\phi_P-\phi_W) =De(ϕE−ϕP)−(ϕP−ϕW)
[ D e + F e + D w ] ϕ P = [ D w + F w ] ϕ W + D e ϕ E − F e [ 1 2 ψ ( r e ) ( ϕ E − ϕ P ) ] + F w [ 1 2 ψ ( r w ) ( ϕ P − ϕ W ) ] [D_e+F_e+D_w]\phi_P=[D_w+F_w]\phi_W+D_e\phi_E-F_e[\frac{1}{2}\psi(r_e)(\phi_E-\phi_P)]+F_w[\frac{1}{2}\psi(r_w)(\phi_P-\phi_W)] [De+Fe+Dw]ϕP=[Dw+Fw]ϕW+DeϕE−Fe[21ψ(re)(ϕE−ϕP)]+Fw[21ψ(rw)(ϕP−ϕW)] -
a
P
ϕ
P
=
a
W
ϕ
W
+
a
E
ϕ
E
+
S
u
D
C
a_P\phi_P=a_W\phi_W+a_E\phi_E+S_u^{DC}
aPϕP=aWϕW+aEϕE+SuDC
a W = D w + F w a_W=D_w+F_w aW=Dw+Fw
a E = D e a_E=D_e aE=De
a P = a W + a E + ( F e − F w ) a_P=a_W+a_E+(F_e-F_w) aP=aW+aE+(Fe−Fw)
S u D C = − F e [ 1 2 ψ ( r e ) ( ϕ E − ϕ P ) ] + F w [ 1 2 ψ ( r w ) ( ϕ P − ϕ W ) ] S_u^{DC}=-F_e[\frac{1}{2}\psi(r_e)(\phi_E-\phi_P)]+ F_w[\frac{1}{2}\psi(r_w)(\phi_P-\phi_W)] SuDC=−Fe[21ψ(re)(ϕE−ϕP)]+Fw[21ψ(rw)(ϕP−ϕW)] - TVD scheme
- TVD neighbour coefficients
a W = D w + m a x ( F w , 0 ) a_W=D_w+max(F_w,0) aW=Dw+max(Fw,0)
a E = D e + m a x ( − F e , 0 ) a_E=D_e+max(-F_e,0) aE=De+max(−Fe,0) - TVD deferred correction source term
S u D C = − F e 1 2 [ ( 1 − α e ) ψ ( r e − ) − α e ⋅ ϕ ( r e + ) ] ( ϕ E − ϕ P ) + F w 1 2 [ α w ⋅ ψ w ( r w ) − ( 1 − α w ) ψ ( r w − ) ] ( ϕ P − ϕ W ) S_u^{DC}=-F_e\frac{1}{2}[(1-\alpha_e)\psi(r_e^-)-\alpha_e\cdot \phi(r_e^+)](\phi_E-\phi_P)+ F_w\frac{1}{2}[\alpha_w\cdot\psi_w(r_w^)-(1-\alpha_w)\psi(r_w^-)](\phi_P-\phi_W) SuDC=−Fe21[(1−αe)ψ(re−)−αe⋅ϕ(re+)](ϕE−ϕP)+Fw21[αw⋅ψw(rw)−(1−αw)ψ(rw−)](ϕP−ϕW)
α w = 1 \alpha_w=1 αw=1 for F w > 0 F_w>0 Fw>0 and α e = 1 \alpha_e=1 αe=1 for F e > 0 F_e>0 Fe>0
α e = 1 \alpha_e=1 αe=1 for F w > 0 F_w>0 Fw>0 and α e = 0 \alpha_e=0 αe=0 for F e < 0 F_e<0 Fe<0
- 处理A边界处的外插
ϕ 0 = 2 ϕ A − ϕ P \phi_0=2\phi_A-\phi_P ϕ0=2ϕA−ϕP
r e = ϕ P − ϕ 0 ϕ E − ϕ P = 2 ( ϕ P − ϕ A ) ϕ E − ϕ P r_e=\frac{\phi_P-\phi_0}{\phi_E-\phi_P}=\frac{2(\phi_P-\phi_A)}{\phi_E-\phi_P} re=ϕE−ϕPϕP−ϕ0=ϕE−ϕP2(ϕP−ϕA)
evaluation of TVD schemes
- transportiveness
- conservativeness
- boundedness
- UMIST scheme was found to require 15% more CPU than the standard QUICK schme