SPH 离散化

在 SPH 中,液体离散化为颗粒的集合。通过考虑相邻颗粒的贡献来计算颗粒的物理属性。指定半径内颗粒对彼此的影响通过使用核函数来定义。

点方程

求解域 Ω ,即 SPH 液相细分为一组点,形成分区 P ( Ω ) 。分区中的每个点 i 都具有关联的体积 V i , i ∈ P ( Ω ) 。这些体积的总和等于求解域的体积。

每个点的位置计算如下:
d r i d t ⁡ = v i
(1066)

每个点的体积由以下公式给出:

d V i d t = ⁡ V i ∇ ⋅ v i = 0

(1067)
连续性方程
点 i 的质量守恒由以下公式给出:
d V i ρ i d t = ⁡ d m i d t = 0

(1068)
由于每个点都随时间保持质量守恒,因此可以将这些点标识并称之为颗粒。
动量方程

质量为 m i 的 SPH 颗粒的动量守恒方程由以下公式给出:

m i d v i d t ⁡ + V i ∇ ⋅ ( p i I ) − V i ∇ ⋅ T i = V i f b , i

(1069)

SPH 连续逼近

连续的任意标量场 ϕ 可通过以下公式计算:
ϕ ( r ) = ∫ Ω ϕ ( r ′ ) δ ( r − r ′ ) d r ′
(1070)
其中:
  • ϕ ( r ′ ) 为相邻点 r ′ 处标量场的值。
  • δ 为狄拉克广义函数。
  • Ω 表示求解域。

标量场 ϕ 的连续 SPH 逼近 Π c R 由以下公式给出:

Π c R ( ϕ ) ( r ) = ∫ Ω ϕ ( r ′ ) W ( r − r ′ , R ) d r ′
(1071)

其中, W 为平滑半径为 R 的各向同性核函数。求解域中的 W 积分等于 1。此逼近的阶数为 O ( R 2 ) 。

有两个选项可用于对各向同性核函数建模。所有 SPH 插值都使用选定的核函数执行。立方核函数由以下公式给出:

W ( r − r ′ , R ) = 48 π R 3 { 1 6 + q 2 ( 1 − q ) 0 ≤ q ≤ 1 2 1 3 ( 1 − q ) 3 1 2 ≤ q ≤ 1 0 q > 1
(1072)
Wendland 核函数 [284] 由以下公式给出:
W ( r − r ′ , R ) = 21 2 π R 3 { ( 1 + 4 q ) ( 1 − q ) 4 0 ≤ q ≤ 1 0 q > 1
(1073)

其中, q = ‖ r − r ′ ‖ R 。

SPH 连续逼近的导数计算如下:

∇ Π c R ( ϕ ) ( r ) = Π c R ( ∇ ϕ ) ( r ) = ∫ Ω ϕ ( r ′ ) ∇ r W ( r − r ′ , R ) d r ′
(1074)

SPH 离散逼近

标量场 ϕ 的 SPH 离散逼近 Π c R 通过颗粒的黎曼总和计算得出:
Π d R ( ϕ ) ( r ) = ∑ j ∈ P ( Ω ) V j ϕ ( r j ) W ( r − r j , R )
(1075)
归一化 (Shepard) 逼近用于后处理。邻域 Ω 中位置 r 处场 ϕ 的插值计算如下:
Π d R * ( ϕ ) ( r j ) = ∑ j ∈ P ( Ω ) V j ϕ j W ( r − r j , R j ) ∑ j ∈ P ( Ω ) V j W ( r − r j , R j )
(1076)
SPH 离散逼近的导数计算如下:
∇ Π d R ( ϕ ) ( r ) = ∑ j ∈ P ( Ω ) V j ϕ ( r j ) ∇ W ( r − r j , R )
(1077)
为了帮助收敛和质量守恒,引入了修正的推导运算符。例如,标量场 ϕ 的梯度 G + 和矢量场 Φ 的发散 D − 由以下公式给出:
G i + ( ϕ ) ( r i ) = ∑ j ∈ P ( Ω ) V j ( ϕ ( r j ) + ϕ ( r i ) ) ∇ W ( r i − r j , R i )
(1078)
D i − ( Φ ) ( r i ) = ∑ j ∈ P ( Ω ) V j ( Φ ( r j ) − Φ ( r i ) ) ⋅ ∇ W ( r i − r j , R i )
(1079)

将对颗粒 i 周围的所有颗粒 j 进行求和。在常规 SPH 表示法中,这些公式简写如下:

G i + ( ϕ ) = ∑ j V j ( ϕ j + ϕ i ) ∇ W i j
(1080)
D i − ( Φ ) = ∑ j V j ( Φ j − Φ i ) ⋅ ∇ W i j
(1081)
其中, W i j = W ( r i − r j , R i ) 。
标量场 ϕ 的离散拉普拉斯算子 L i M o r r i s ([261]) 由以下公式给出:
L i M o r r i s ( ϕ ) = ∑ j V j 2 ( ϕ i − ϕ j ) r i − r j ‖ r i − r j ‖ 2 ⋅ ∇ W i j
(1082)