【CFD理论】梯度项-01

Gradient schemes
∇ ϕ = e 1 ∂ ∂ x 1 ϕ + e 2 ∂ ∂ x 2 ϕ + e 3 ∂ ∂ x 3 ϕ \nabla \phi=\boldsymbol e_1\frac{\partial}{\partial x_1}\phi+\boldsymbol e_2\frac{\partial}{\partial x_2}\phi+\boldsymbol e_3\frac{\partial}{\partial x_3}\phi ϕ=e1x1ϕ+e2x2ϕ+e3x3ϕ

fvSchemes

gradSchemes
{
	default none;
	grad(p) <optional limiter> <gradient scheme> <interpolation scheme>;
}

Gauss gradient scheme

gradSchemes
{
    default         none;
    grad(U)         Gauss <interpolation scheme>;
}

Interpolation schemes

  1. linear: cell-based linear
  2. pointLinear: point-based linear
  3. leastSquares: Least squares

Least-squares gradient scheme

gradSchemes
{
    default         none;
    grad(U)         leastSquares;
}

在这里插入图片描述

理论

正交 computing gradient in cartesian grids

在这里插入图片描述
( ∂ ϕ ∂ x ) C = ϕ E − ϕ W X E − X W = ϕ N − ϕ S X N − X S (\frac{\partial \phi}{\partial x})_C=\frac{\phi_E-\phi_W}{X_E-X_W}=\frac{\phi_N-\phi_S}{X_N-X_S} (xϕ)C=XEXWϕEϕW=XNXSϕNϕS

非正交 green-gauss gradient

在这里插入图片描述

两种计算方法 ϕ f \phi_f ϕf

  • face-based
  • vertex-based

体心处梯度:
散度定理 ⇒ \Rightarrow
( ∇ ϕ ) C = 1 V C ∑ f ϕ f ⋅ S f (\nabla \phi)_C=\frac{1}{V_C}\sum_f \phi_f\cdot \boldsymbol S_f (ϕ)C=VC1fϕfSf
ϕ f ? \phi_f? ϕf?

fig. 9.3a,no skewness, f = f ′ f=f' f=f
ϕ f = γ ϕ C + ( 1 − γ ) ϕ F \phi_f=\gamma\phi_C+(1-\gamma)\phi_F ϕf=γϕC+(1γ)ϕF
γ = ∣ ∣ r F − r f ∣ ∣ ∣ ∣ r F − r C ∣ ∣ = d F f d F C \gamma =\frac{\left||\boldsymbol r_F-r_f\right||}{\left||\boldsymbol r_F-r_C\right||}=\frac{d_{Ff}}{d_{FC}} γ=rFrCrFrf=dFCdFf
二阶精度: γ = 0.5 , ϕ f = ϕ P + ϕ N 2 \gamma=0.5,\phi_f=\frac{\phi_P+\phi_N}{2} γ=0.5,ϕf=2ϕP+ϕN

fig. 9.3c,skewness, f ≠ f ′ f\neq f' f=f
泰勒公式:
f ( x ) = f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) + f ′ ′ ( x − x 0 ) 2 + . . . f(x)=f(x_0)+f'(x_0)(x-x_0)+f''(x-x_0)^2+... f(x)=f(x0)+f(x0)(xx0)+f′′(xx0)2+...
ϕ f = ϕ f ′ + c o r r e c t i o n = ϕ f ′ + ( ∇ ϕ ) f ′ ( r f − r f ′ ) ≈ f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) \begin{aligned} \phi_f&=\phi_{f'}+correction\\ &=\phi_{f'}+(\nabla \phi)_{f'}(\boldsymbol r_f-\boldsymbol r_{f'})\\ &\approx f(x_0)+f'(x_0)(x-x_0)\\ \end{aligned} ϕf=ϕf+correction=ϕf+(ϕ)f(rfrf)f(x0)+f(x0)(xx0)

  • 基于体心的需要修正,基于节点的不需要修正,因为需要求 ϕ f \phi_f ϕf
  • 用Gauss求体心的梯度,就要知道面心值,而面心值要修正就要知道体心的梯度
1 face-based graient computation

1. 计算 ϕ f ′ = γ ϕ P + ( 1 − γ ) ϕ N 2. 计算 ( ∇ ϕ ) P = 1 V P ∑ f ϕ f ′ ⋅ S f 3. 计算更新的 ϕ f = ϕ f ′ + γ ( ∇ ϕ ) P ⋅ ( r f − r P ) + ( 1 − γ ) ( ∇ ϕ ) N ⋅ ( r f − r N ) 4. 更新 ( ∇ ϕ ) P = 1 V P ∑ f ϕ f ⋅ S f 5. 重复 3 \begin{aligned} &1.计算 \phi_{f'}=\gamma\phi_P+(1-\gamma)\phi_N\\ & 2.计算(\nabla \phi)_P=\frac{1}{V_P}\sum_f\phi_{f'}\cdot\boldsymbol S_f\\ & 3.计算更新的\phi_f=\phi_{f'}+\gamma(\nabla \phi)_P\cdot(\boldsymbol r_f-\boldsymbol r_P)+(1-\gamma)(\nabla\phi)_N \cdot (\boldsymbol r_f - \boldsymbol r_N)\\ & 4.更新(\nabla \phi)_P=\frac{1}{V_P}\sum_f\phi_f\cdot\boldsymbol S_f\\ & 5.重复3 \end{aligned} 1.计算ϕf=γϕP+(1γ)ϕN2.计算(ϕ)P=VP1fϕfSf3.计算更新的ϕf=ϕf+γ(ϕ)P(rfrP)+(1γ)(ϕ)N(rfrN)4.更新(ϕ)P=VP1fϕfSf5.重复3

example1

在这里插入图片描述在这里插入图片描述
a.Green-Gauss method with no correction

( ∇ ϕ ) C = 1 V C ∑ f ϕ f ⋅ S f (\nabla \phi)_C=\frac{1}{V_C}\sum_f \phi_f\cdot \boldsymbol S_f (ϕ)C=VC1fϕfSf

face centrolids:
f 1 ( 8.5 , 11 ) , f 2 ( 10 , 6.5 ) , f 3 ( 14.5 , 7 ) , f 4 ( 17.25 , 11.5 ) , f 5 ( 14.75.15.5 ) , f 6 ( 10.5 , 15.5 ) f_1(8.5,11),f_2(10,6.5),f_3(14.5,7),f_4(17.25,11.5),f_5(14.75.15.5),f_6(10.5,15.5) f1(8.5,11),f2(10,6.5),f3(14.5,7),f4(17.25,11.5),f5(14.75.15.5),f6(10.5,15.5)

surface vectors:
S f 1 = − 6 i + j S_{f1}=-6\boldsymbol i+\boldsymbol j Sf1=6i+j
S f 2 = − 3 i − 4 j S_{f2}=-3\boldsymbol i-4\boldsymbol j Sf2=3i4j
S f 3 = 4 i − 5 j S_{f3}=4\boldsymbol i-5\boldsymbol j Sf3=4i5j
S f 4 = 5 i − 0.5 j S_{f4}=5\boldsymbol i-0.5\boldsymbol j Sf4=5i0.5j
S f 5 = 3 i + 5.5 j S_{f5}=3\boldsymbol i+5.5\boldsymbol j Sf5=3i+5.5j
S f 6 = − 3 i + 3 j S_{f6}=-3\boldsymbol i+3\boldsymbol j Sf6=3i+3j

interpolation factor ( g c ) n (gc)_n (gc)n:
( g c ) 1 = 0.487 (gc)_1=0.487 (gc)1=0.487
( g c ) 2 = 0.427 (gc)_2=0.427 (gc)2=0.427
( g c ) 3 = 0.502 (gc)_3=0.502 (gc)3=0.502
( g c ) 1 = 0.538 (gc)_1=0.538 (gc)1=0.538
( g c ) 1 = 0.492 (gc)_1=0.492 (gc)1=0.492
( g c ) 1 = 0.455 (gc)_1=0.455 (gc)1=0.455

ϕ f \phi_f ϕf value:
ϕ f 1 = ( g c ) 1 ϕ C + ( 1 − ( g c ) 1 ) ϕ F = 110.442 \phi_{f1}=(gc)_1\phi_C+(1-(gc)_1)\phi_F=110.442 ϕf1=(gc)1ϕC+(1(gc)1)ϕF=110.442
ϕ f 2 = 91.364 \phi_{f2}=91.364 ϕf2=91.364
ϕ f 3 = 123.674 \phi_{f3}=123.674 ϕf3=123.674
ϕ f 4 = 206.27 \phi_{f4}=206.27 ϕf4=206.27
ϕ f 5 = 263.012 \phi_{f5}=263.012 ϕf5=263.012
ϕ f 5 = 158.28 \phi_{f5}=158.28 ϕf5=158.28

( ∇ ϕ ) C = 1 V C ∑ f ϕ f ⋅ S f = 11.889 i + 12.433 j (\nabla \phi)_C=\frac{1}{V_C}\sum_f \phi_f\cdot \boldsymbol S_f=11.889\boldsymbol i+12.433\boldsymbol j (ϕ)C=VC1fϕfSf=11.889i+12.433j

b.Green-Gauss method with correction

  1. ϕ f ′ \phi_{f'} ϕf value:
    ϕ f 1 ′ = ϕ C + ϕ F 1 2 = 111.875 \phi_{f1'}=\frac{\phi_C+\phi_{F1}}{2}=111.875 ϕf1=2ϕC+ϕF1=111.875
    ϕ f 2 ′ = 101 \phi_{f2'}=101 ϕf2=101
    ϕ f 3 ′ = 123.5 \phi_{f3'}=123.5 ϕf3=123.5
    ϕ f 4 ′ = 209.5 \phi_{f4'}=209.5 ϕf4=209.5
    ϕ f 5 ′ = 261.5 \phi_{f5'}=261.5 ϕf5=261.5
    ϕ f 6 ′ = 158.5 \phi_{f6'}=158.5 ϕf6=158.5

  2. ( ∇ ϕ ) C = 1 V C ∑ f ϕ f ′ ⋅ S f = 11.53 i + 11.826 j (\nabla \phi)_C=\frac{1}{V_C}\sum_{f} \phi_{f'}\cdot \boldsymbol S_f=11.53\boldsymbol i+11.826\boldsymbol j (ϕ)C=VC1fϕfSf=11.53i+11.826j

  3. ϕ f \phi_{f} ϕf value:
    ϕ f 1 = ϕ f 1 ′ + 0.5 ∗ [ ( ∇ ϕ ) C + ( ∇ ϕ ) F 1 ] ⋅ [ r f − 0.5 ∗ ( r C + r F ) ] = 111.875 + 3.7435 = 115.6185 \phi_{f1}=\phi_{f1'}+0.5*[(\nabla\phi)_C+(\nabla \phi)_{F1}]\cdot[\boldsymbol r_f-0.5*(\boldsymbol r_C+\boldsymbol r_F)]=111.875+3.7435=115.6185 ϕf1=ϕf1+0.5[(ϕ)C+(ϕ)F1][rf0.5(rC+rF)]=111.875+3.7435=115.6185
    ϕ f 2 = 91.911 \phi_{f2}=91.911 ϕf2=91.911
    ϕ f 3 = 115.764 \phi_{f3}=115.764 ϕf3=115.764
    ϕ f 4 = 224.097 \phi_{f4}=224.097 ϕf4=224.097
    ϕ f 5 = 265.566 \phi_{f5}=265.566 ϕf5=265.566
    ϕ f 6 = 176.046 \phi_{f6}=176.046 ϕf6=176.046

  4. ( ∇ ϕ ) C = 1 V C ∑ f ϕ f ⋅ S f = 11.614 i + 13.76 j (\nabla \phi)_C=\frac{1}{V_C}\sum_{f} \phi_{f}\cdot \boldsymbol S_f=11.614\boldsymbol i+13.76\boldsymbol j (ϕ)C=VC1fϕfSf=11.614i+13.76j

2.vertex-based gradient computation

在这里插入图片描述
ϕ n = ∑ k = 1 N B ( n ) ϕ F k ∣ ∣ r n − r F k ∣ ∣ ∑ k = 1 N B ( n ) 1 ∣ ∣ r n − r F k ∣ ∣ \phi_n=\frac{\sum_{k=1}^{NB(n)}\frac{\phi_{F_k}}{\left||\boldsymbol r_n-\boldsymbol r_{F_k}\right||}}{\sum_{k=1}^{NB(n)}\frac{1}{\left||\boldsymbol r_n-\boldsymbol r_{F_k}\right||}} ϕn=k=1NB(n)rnrFk1k=1NB(n)rnrFkϕFk
ϕ f = ϕ n 1 + ϕ n 2 2 \phi_f=\frac{\phi_{n1}+\phi_{n2}}{2} ϕf=2ϕn1+ϕn2

补充学习

fluid mechanics 101 26-28

  1. GreenGaussGradient
  2. LeastSquaresGradient
  3. NodeBasedGradient
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值