方腔自然对流换热问题的LBM并行计算

绝世美人儿
684次浏览
2020年07月30日 18:22
最佳经验
本文由作者推荐

2013年高考语文-党章的内容


中国工程热物理学会 传热传质学
学术会议论文 编号:083440
方腔自然对流换热问题的LBM并行计算
赵婷,杨茉*,李佳明,卢玫
(上海理工大学动力工程学院,上海,200093)
(Tel: , Email:zhaoting_842@)

摘要

本文利用消息传递接 口库实施数据传递,将SPMD编程模式的并行算法与LBM相结合,提出
了LBM的两种并行计算方法 ,在小型局域网下实现了对二维方腔自然对流换热问题的LBM并行模拟。
数值结果表明,所建立的并行 计算环境和区域分解并行算法能够得到正确和收敛的数值结果。对并行
算法作出的性能分析表明,所给出 的区域分解并行算法得到了明显的加速效率。
关键词

并行计算,LBM,区域分解,方腔自然对流


0 前言
格子玻尔兹曼方法(Lattice-Boltzmann method, LBM)由格子气自动机(Lattice Gas
Automata,LGA)发展而来,从微观层 次描述流体内部流动,是近年来涌现出来的一种
新型的能够与现代高性能计算机紧密耦合的本质并行算法
[1]
,在流体动力学及其相关领
域得到了成功的应用
[2],[3]
。通过多尺度展开能够从LBM的演化方程得到宏观方程
[4]
。同
时,LBM具有 算法简单,空间、时间完全离散及粒子相互作用的局域性等优点使其适合
分布式并行。消息传递接口(M PI)是国内外在高性能计算中最广泛使用的并行编程环
境,已成为一种并行程序的标准
[5]
。而消息传递并行性的开发中基于区域分解形式的单
控制流多数据流(Simple Program Multiple Date,SPMD)编程是最普遍且并行效率最高
的形式。
本文将SPMD的编程模式和LBM相结合,通过MPI在Windows XP PC机组成的
小型局域网环境下搭建了并行计算平台,研究基于LBM的高效计算机并行算法,给出
了LBM区域分 解并行方法实施的具体步骤以及实现数据交换的措施,并通过对二维方
腔自然对流换热问题的并行模拟实 验比较,考察和验证所给出的并行算法的并行性能和
可靠性。
1计算模型及LBM模型
1.1 物理模型
图1示出了本文要计算的二维方腔内自然对流换热问题物理模型。方腔上下 底面绝
方腔内充满空气,
Pr
=0.7,
热,左边为高温壁面
Th
,右边为低温壁面
T
c
,方腔高度为
H

β
⋅ΔT⋅g⋅H
3
Ra=

ν
D

资助项目:国家自然科学基金项目(No. 50576057);上海市重点学科建设项目资助(No. J50501)
*通讯作者:上海军工路516号,200093,Tel: ,Email: yangm66@


g
图1 计算模型

1.2 数学模型
LBM计算 选用模型为GUO等
提出的TD2G9模型,即二维空间中分布函数和速度等
分解为图2所示的 9个方向,
c
i
表达式为:
6
2
5
[6]


(0,0) i=0

(i−1)
π
(i−1)
π

c
i
=

(cos, sin)c i=1,
L
,4
22



(i−1)
π
+
π

, sin

(i−1)
π
+
π

) c
i=5,
L
,8
2(cos

⎢⎢
4
4



2
⎦⎣
2

其中
c=
Δx
Δt
3
0
1
7
图2 离散方向
4
8
为粒子迁移的速度,
Δx,Δt
分别为格子宽度和时间步长。
f
i
eq
p

−4
σ
+
s
0
(u(x,t))

i=0
2

c


p
=

λ
2
+
s
i
(u(x,t))


i=1,2,3,4

c

p

γ
c
2
+
s
i
(u(x, t))

i=5,6,7,8

(1)
2

c
i
⋅u
u

(c
i
⋅u)
2
s
i
(
u
)
=
ωi

3
+4.5−1.5
2

2
c
c
⎥⎢
c
⎣⎦

49 (i=0)< br>⎪

λ
+
γ
=
σ
ω
i
,< br>σ
,
λ
,
γ
是模型参数:
ω
i
=< br>⎨
19 (i=1,2,3,4)


(2)

136 (i= 5,6,7,8)

λ
+2
γ
=12

温度场使用 4个离散速度
c
1
,c
2
,c
3
,c
4< br>。引入温度分布函数
T
i
,其演化方程为:


T
i
(
x+c
i
Δt
,
t+Δt
)
−T< br>i
(
x
,
t
)
=−
T
i
(
x
,
t
)
=
eq
eq
T
i
(
x
,
t
)
−T
i
(
x
,t
)
⎤⎡
⎣⎦
,
τ
T
1
(3)
T

c
i

u

+=
12
< br>1,2,3,4
i
4

c
2

⎣⎦
宏观的温度定义为:
T=
演化方程为:

T
。由于流体的流动与换 热耦合,采用Boussinesq假设,
i
i
f
i
(
x< br>+
c
i
Δ
t
,
t

t
)

f
i
(
x
,
t
)
=−
eq
f
i
(
x
,
t
)

f
i
(
x
,
t
)
⎤⎡
⎣⎦
+g
i
(4)
τ
1
Δt
α
i
c
i
⋅g
β
(
T−T
0
)< br>,其中当
i=2,4
时,
α
i
=
1
;否则
α
i
=
0

2
c
宏观密度、速度及压力定义如下:
g
i
=−
ρ
(x,t)=
1

i
c
2
⎡⎤
f
i
(x,t),
u(x,t)=

c
i
f
i
(x,t)
,
p=
f(x,t)−s(u)
(5)

i
0< br>⎢⎥
4
σ

i

i
通过Chapman- Enskog多尺度展开方法可以推导出宏观的N-S方程,且粘性系数及
导温系数表示式如下: 1
Δx
2
1
Δx
2
ν
=
(
τ
u
−0.5
)
D=
(
τ
T
−0.5
)
(6)
Δ
t

3
Δt
2
2并行算法的设计
2.1并行计算环境
本文进 行研究的并行计算环境是笔者在小型局域网下应用mpich2-1.0.7自行搭建的,
局域网内的计 算节点机是AMD 2800+处理器(32-bit,主频1.61GHz)微机,计算节点之间
通过 100Mbps的Ethernet高速通信网进行通信,操作系统是Windows XP Pro SP2,程序采
用FORTRAN90语言编写。
2.2 LBM区域分解并行算法设计与实现
由于LBM中所有网格节点的演化(流动和碰撞)同时进行,且每 个格点只涉及到相
邻格点上的参数而不涉及到全部计算区域,整个流场区域中,只有边界点上的计算稍有
不同,其它各点的计算公式相同,并且所有格点的演化都同时进行,这是一种典型的区
域分解模 式,非常适合于大规模的并行计算。
本文针对LBM模型设计区域分解并行计算方案。区域分解并行计 算方法的设计采用
MPI消息传递的并行编程模式实现,它的基本思想就是区域分解算法
[7]
。基于区域分解
思想开发出的SPMD并行程序,就是将同一程序复制到各个处理器上,而不同 的数据分
布到不同的处理器上。设计SPMD形式消息传递程序的主要步骤是:1.数据划分:尽量考< br>虑负载平衡、存储空间的均衡使用以及较少处理器之间的通信,把整个计算区域分解为
若干个形状 尽量规则的子区域,并将各子场所属的计算边界条件和初始条件分别映射到


并行环境中各 计算节点机上;2.单独计算:各个计算区域所属的节点机运算区域内部各
网格上流体质点的流动与碰撞 子步,并计算出宏观的物理量;3.优化通信:各计算节点
机通过一定的耦合规则同其相邻的节点进行相 交边界上的数据交换和信息传递以组织并
行计算,尽量提高计算通信比,数据就地使用和合并短信息成一 个长信息进行传输;4.
全局操作:将各处理器之局部结果组合起来,实现整个原问题的解。
算法的设计采用对等模式,为了有效实现并行计算个进程间的数据通信,并且考虑
到FORTRAN编程 中对数组元素的访问顺序,这里将参加迭代的数据按行进行分割。假
设一共有P个节点机参与并行计算, 则数据的分割结果如图3所示。本文采用非重叠型区
域分解,即相邻两子区享有唯一的分界线(内边界) ,相邻子区各有一条网格线与分界线
重合。由于迭代过程中,各子场边界点新值的计算需要相邻子场内部 节点的数据,因此
对各子区域,考虑分界线上格点的演化规则,需要传递与边界相邻子场边界格点的数据 。
进程P-1
进程P-2
……
……
进程1
进程0

在循环两端调用精度单位为0.01秒的时间函数MPI—C OMPUTIME统计运算所耗
时间。为考察并行计算效率,定义加速比S为单机运算时间与P台处理器 处理相同问题
所需运算时间的比值;并行效率E为加速比与处理器台数的比值(E=S/P)。
图3 数据分割方式
3并行计算的数值实验结果及分析
3.1等温线图
计算时分别取Ra数为10
4
、10
5
、10
6
,网格划分 取60×60、120×120和240×240三套网
格,计算节点机个数P=1、2、4三种情况, 根据运行时间得到加速比和并行。图4给出了
Ra=10
4
,网格数取240×240 时P分别取1、2、4时方腔自然对流的等温线图。
(a) (b) (c)
图4 方腔自然对流等温线图
Fig.1 The streamlines on different co
mp
uter node’s number for nature convection in a square cavity

图4(a)为P=1,即 LBM串行计算所得;图4(b)为P=2时LBM并行计算所得;图4(c)为


P=4 时LBM并行计算所得。通过比较可以发现计算结果基本一致,针对该问题设计的并
行算法是正确的。表 1列出了不同网格划分时,针对正方腔自然对流问题Ra数为10
6
时,
串行以及并行 计算时得到的Nu数和基准解
[8]
,通过比较发现,计算结果与基准解基本吻
合。
表1 不同情况下的Nu数
Table 1 Computing Nu on
different grids and different c
omputer node’s number
1 2 3
网格
划分
基准解Nu
60×60
120×120
240×240
8.743 8.832 8.794
8.796 8.854 8.894
8.903
8.837 8.93 8.735

3.2计算时间
表2是在各
种网格尺寸和相同计 算误差下,用不同的节点机数目并行计算得到的结
果。
结果表明,随着处理器个数的增加,并行 系统的整体效率随之增加,但对于每一种
网格划分来说总是存在一个最佳的节点机个数P值。这是因为, 在传递通信量的交换上
所花费的时间在并行系统计算总时间中所占的比例越来越大,并行效率就会下降。 即当
节点机个数达到最佳P值以后,再增加节点机个数其计算效率也不会得到很大提高,只
会造 成资源的浪费。因此,在计算时应该尽量选择合适的P值。由于LBM方法的高度
并行性,有些情况下并 行效率甚至大于1(加速比S大于节点机数目P),即所谓的
super-linear speedu p问题,从硬件方面来说主要是二级缓存(cache)引起的。根据并行算法
的可扩展性定义,在几乎 所有的本文涉及的问题规模下,随着并行规模的增加,加速比
随之增长。因此可以说该算法具有一定的可 扩展性,且的LBM的并行方法可以获得很
好的加速比和并行效率。
表2 不同节点机数目并行计算时间
Table 1
Computing time on different computer node’
s number
P=1 P=2
1
71.01

80.25
计算时间s
--- 2.13
加速比
--- 1.065

行效率

6
93.5
7
462.32
计算时间s
--- 1.50
加速比
--- 0.75
并行效率

24
83.62
1
409.78

计算时间s
--- 1.76
加速比
--- 0.88
并行效率

P=4
69.43
2.46
0.615
198.47
3.49
0
.8725

983.43
2.53
0
.6325

网格划分
60×60
120×120
240×240
4 结 论
本文给出了基于区域分解的LBM并行数值计算方法 ,并对方腔自然对流进行了数
值模
拟实验。数值实验结果表明,所给出的LBM分区并行算法能 够得到正确的和收敛
的数值结果。对并行算法做出的性能分析表明,对于自然对流换热的LBM数值模拟 ,
由于算法本身的高度并行性,采用并行算法可以显著缩短计算时间,提高计算效率,所
给出的 并行算法得到了明显的加速效率,有些情况下并行效率甚至大于1。随着计算规
模的增大,加速比呈现增 大的趋势。


参考文献
[1] Chopard B., Masselot A. Cellular automata and lattice Boltzmann methods: a new approach to
computational fluid dynamics and particle transport. Future Generation Computer Systems, 1999, 16(2-3):
249-257
[2] Gallivan M A, Noble D R, Georgiadis J G, Buckius R O. An evalustion of the bounce-back boundary
condition for lattice-Boltzmann simulations. Int J Numer Methods Fluids,1997.25(3):249-263
[3]
P.-H. Kao, R.-J. Yang, Simulating oscillatory flows in Rayleigh-Bénard convextion using th
e lattice
Boltzmann method. J. Heat and Mass Transfer, 2007(50):3315-3328
[4]
Qian Y, d’Humi res D, Lallemand P, Lattice BGK models for Navi
er- Stokes equation, Europhys. Lett.,
1992(17):479-484
[5]
蒋英,雷永梅.基于
MPI的几种算法的并行编程通用算法. 计算机工程与应用,2003,3:139-141
[6] Zhaoli Guo, Baochang Shi, Chuguang Zheng, A coupled Lattice BGK Model for the Bouessi
nesq
Equation, Int. J. Num. Fluids, 2002(39):325–342
[7]
Jack D,Ian F,Geoffrey F,William G. Sourcebook of
Parallel Computing . Morgan Kaufmann,2005:40-68
[8] De Vahl Davis G,Jones I P. Natural Convection in a Square Cavity,A Comparision Exercise. Numerica
l
Method in Thermal Problems, Edited by R W Lewis, K. Morgan and B A Schrefler, Swensea UK:
Prinendge Press,1981:552-572

都柏林城市大学-陕西省人事厅网


话务员-志愿者心得


在尝试中成长作文-如何申请日本大学


因为有了期盼作文-泰安人事考试网


2013成人高考-低碳环保手抄报


升职感言-单片机实习报告


升国旗作文-小学手抄报


专业描述-蛇年祝福