SIMPLE 算法求解方腔内粘性不可压流动
目录
一、问题描述............................................................................2
二、离散格式............................................................................3
交错网格.......................................................................... 3
方程离散.......................................................................... 4
三、SIMPLE 算法基本思想.......................................................7
边界条件处理...................................................................8
虚拟网格处理...................................................................9
方程求解........................................................................ 11
输出变量处理.................................................................12
SIMPLE 算法流程图........................................................15
四、程序中主要变量的意义..................................................15
五、计算结果与讨论..............................................................17
函数最大值 .....................................................................17
变量等值线图.................................................................18
主要结论........................................................................ 22
六、源程序..............................................................................22
一、问题描述
假设
0
2 1
x
2
u
16
x
,
yx
1
的方腔内充满粘性不可压缩流体,左、右、下壁固定,上壁以
运动,试求
Re
,100
200
,
400
时的定常解,方腔如图 1 所示。
图 1 方腔内流动示意图
二、离散格式
本算例采用求解不可压缩流动的经典算法,即 SIMPLE 算法,求解方腔内粘性不可压缩
流体运动的定常解。SIMPLE 算法的全称为 Semi-Implicit Method for Pressure-Linked Equations,
即求解压力关联方程的半隐式算法。
采用 SIMPLE 算法时,为了避免中心差分格式将“棋盘”型参量分布误认为是均匀分布,
需要用交错网格对计算域进行离散。
交错网格
交错网格如图 2 所示,压力、密度等物理量存储在控制体
j
i, 的中心,这个控制体称
vu, 分别存储在主控制体的
i
,2/1
j
和
i
, j
2/1
位置处,
为主控制体。速度分量
标记为
等间距离散整个求解域,如图 3 所示。
j
i, 位置,再分别以此为中心,划分速度分量 u、v 的控制体。采用空间均匀网格,
图 2 交错网格示意图
图 3 求解域离散示意图
图 3 中阴影部分代表方腔内的流动区域,阴影区域的边界代表方腔的上、下、左、右
壁面,阴影区域外面的网格节点是为边界处理需要而设定的虚拟网格节点,后面介绍边界处
理方法时详细论述。
方程离散
SN 方程为
无量纲化的守恒型不可压缩
U
0
U
t
UU
P
U
2
0
1
Re
其积分形式为
dSUn
S
u
t
v
t
dV
dV
V
V
0
udSUn
S
vdSUn
S
S
S
pn
x
dS
pn
y
dS
1
Re
1
Re
S
S
n
udS
0
n
vdS
0
图 4 主控制体
图 5 速度 u 控制体
图 6 速度 v 控制体
采用有限体积法离散
SN 方程,连续性方程在主控制体上离散
u
1
M
,
ji
u
1
M
,1
j
i
y
v
1
M
,
ji
v
M
,
ji
1
1
x
0
X 方向动量方程在速度 u 控制体上离散,时间采用前差
1
G
1
,
ji
1
Gy
,
ji
1
F
,
ji
u
M
,
ji
F
i
1
,1
u
M
,
ji
1
j
yx
t
Y 方向动量方程在速度 v 控制体上离散,时间采用前差
x
1
M
p
,1
i
j
1
M
p
,
ji
y
0
yx
t
M
v
,
ji
1
M
v
,
ji
2
F
,
ji
F
i
2
,1
j
2
Gx
,
ji
2
G
1
,
ji
y
M
p
,
ji
1
1
1
M
p
,
ji
x
0
其中,数值通量
1
F
2
u
2
F
2
v
1
Re
u
x
1
Re
v
x
,
,
1
G
uv
2
G
uv
1
Re
u
y
1
Re
v
y
通量
1 , GF
1
分别定义在主控制体的中心和角点,如图所示,并按照如下方法离散
1
F
1
G
1
4
1
4
u
v
u
u
1
Re
x
1
Re
y
u
u
1
M
,1
i
u
M
,
ji
j
1
M
,1
j
i
u
M
,
ji
1
1
M
,1
j
i
u
M
,
ji
1
M
,1
i
j
v
M
,
ji
1
M
,1
j
i
1
u
M
,
ji
1
M
,1
j
i
u
M
,
ji
通量
2 , GF
2
分别定义在主控制体的中心和角点,如图所示,并按照如下方式离散
M
,1
i
v
M
,
ji
j
1
M
,1
j
i
1
v
M
,
ji
1
M
,1
j
i
v
M
,
ji
1
M
,1
i
j
u
M
,
ji
1
M
,1
j
i
v
M
,
ji
1
1
M
,1
j
i
v
M
,
ji
v
v
1
Re
y
1
Re
x
v
v
1
2
F
2
G
v
u
1
4
1
4
通量
1 , GF
1
和
2 , GF
2
的某些项冻结于 M 时间层,使离散化之后的方程对
u
M
1,
v
M
1
是线性的。将离散化之后的
1 , GF
1
和
2 , GF
2
代入离散后的 x 方向和 y 方
向的动量方程,整理之后得离散后的动量方程如下
u
b
,
ji
v
b
,
ji
1
u
M
ua
,
,
qp
qp
1
v
M
va
,
,
qp
qp
M
u
ua
,
,
ji
ji
1
M
v
va
,
,
ji
ji
1
1
M
p
,1
i
j
1
M
p
,
1
ji
y
x
1
M
p
,
ji
1
M
p
,
ji
0
0
1
Re
x
1
Re
y
2
Re
y
1
yx
t
其中
a
u
,1
i
j
a
u
,
ji
1
u
b
,
ji
yx
t
u
M
,
ji
u
M
,1
i
j
u
M
,
ji
v
M
,
ji
v
M
,1
i
j
y
x
1
4
1
4
u
1
Re
x
1
Re
y
2
Re
x
,
a
u
,1-
i
j
y
,
a
u
,
ji
1
x
u
M
,
ji
u
M
,1-
i
j
v
M
,
ji
v
M
,1
i
j
1
1
1
4
1
4
a
u
,
ji
y
1
4
M
,1
i
j
u
M
,1
i
j
x
v
M
,
ji
1
4
v
M
,1
i
j
v
M
,
ji
1
v
M
,1
i
j
v
b
,
ji
yx
t
M
v
,
ji
a
v
,
ji
1
x
a
v
,1
i
j
y
v
a
,
ji
x
1
4
1
4
1
4
M
v
,
ji
v
M
,
ji
v
M
,
ji
1
u
M
,
ji
1
u
M
,
ji
u
M
,
ji
1
1
,
1
Re
y
1
Re
x
2
y
Re
y
,
以上是 SIMPLE 算法中离散化的动量方程
a
v
,
ji
1
x
v
M
,
ji
1
v
M
,
ji
a
v
,1
i
j
y
u
M
,1
i
u
M
,1
i
j
1
j
1
4
1
4
u
M
,
ji
1
4
u
M
,
ji
u
M
,1
i
j
1
u
M
,1
i
j
1
1
Re
y
1
Re
x
2
Re
x
yx
t
三、SIMPLE 算法基本思想
SIMPLE 算法是一种解决压力-速度耦合问题的“半隐式”算法。首先给定 M 时刻猜测
的速度场
M v
u , ,用于计算离散动量方程中的系数和常数项。给定 M+1 时刻猜测的压力场
M
估计值 *p ,迭代求解离散动量方程,得到 M+1 时刻速度场的估计值
*, vu
*
,速度场的估计
值
*, vu
*
满足如下离散方程。
*
u
ua
,
,
ji
ji
*
v
va
,
,
ji
ji
*
u
ua
,
,
qp
qp
*
v
va
,
,
qp
qp
u
b
,
ji
v
b
,
ji
*
p
,1
i
*
p
,
ji
1
j
*
p
,
ji
*
p
,
ji
y
x
0
0
一般地,速度场
*, vu
*
不满足离散的连续性方程,因而需要对速度场
*, vu
*
和压力场 *p
进行修正。M+1 时刻的修正值和估计值有如下关系
M
1
M
1
M
1
u
v
p
*
*
u
v
p
u
v
*
p
其中, vu
, 和 p 分别速度和压力的修正量,修正量亦满足离散的动量方程
u
ua
,
,
ji
ji
v
va
,
,
ji
ji
u
ua
,
qp
v
va
,
qp
,
qp
,
qp
u
b
,
ji
v
b
,
ji
p
,1
i
p
,
ji
1
j
y
x
p
,
ji
p
,
ji
0
0
编号为(i,j)的速度修正量 vu
, 不仅与压力修正量 p 有关,还与邻近点的速度修正
量有关。SIMPLE 算法的重要假定:速度的改变只与压力的改变有关,忽略邻近点对速度修
正的影响。因而得到如下速度修正量
u
,
ji
v
,
ji
y
u
a
,
ji
x
v
a
,
ji
p
,1
i
j
p
,
ji
p
,
ji
1
ji
p
,
修正后的速度分量
1
u
M
,
ji
u
*
,
ji
1
M
v
,
ji
*
v
,
ji
p
,1
i
j
p
,
ji
p
,
ji
1
ji
p
,
y
u
a
,
ji
x
v
a
,
ji
将修正后的速度分量代入离散后的连续性方程,得到压力修正方程
p
pa
,
,
ji
ji
a
p
,
qp
p
,
qp
p
b
,
ji
其中
,
a
p
,
ji
1
2
x
v
a
,
ji
,
a
p
,
ji
1
2
x
v
a
,
ji
1
j
2
y
u
a
,
ji
2
y
u
a
,
ji
uy
a
p
,1
i
a
p
,
ji
p
b
,
ji
,
a
p
,1
i
j
2
y
u
a
,1
i
j
u
*
,1
i
*
,
ji
j
2
y
u
a
,1
i
2
x
v
a
,
ji
j
x
v
a
,
ji
*
vx
,
ji
2
1
v
*
,
ji
1
采用迭代法求解压力修正方程,得到压力修正量 p ,代入修正公式得到 M+1 时刻的速
度场
u
M
1,
v
M
1
和压力场
1Mp 。将 M+1 时刻的速度场
u
M
1,
v
M
1
和压力场
1Mp 作为新的
猜测的速度场和猜测的压力场估计值,采用上述方法计算下一个时刻的速度场和压力场,直
到满足收敛条件。
收敛判据
p
jibMax
,
为很小的正实数,视计算的精度要求而定。本算例中取
e
1
8
。
若
ib
, p
j
0
,则
,此时
U
M
,
j
i
1
U
*
,
i
j
,从而来自于离散动量的 *
, j
iU 满足离散的连
, j
0
ip
p
jibMax
,
续性方程。因此
可以作为收敛判据。
边界条件处理
首先对计算区域离散,并流动边界之外扩充一个虚拟网格,将真实流动的离散域包围,
如图 7 所示。