本发明专利技术公开了一种格子玻尔兹曼方法的并行加速方法及系统,克服目前使用X86服务器集群来进行LBM处理在时间等消耗较大的缺陷,该方法中:CPU端确定网格所有格点上的宏观参量及其初始值,定义数据结构和存储方式用于存储每个格点各个方向的平衡分布函数和每个格点的宏观参量,根据宏观参量计算出所有格点上各方向的平衡分布函数,设置MIC卡内核的线程执行配置;MIC端根据宏观参量及其初始值、线程执行配置及网格所有格点上各方向的平衡分布函数进行迁移和碰撞的并行计算和并行的边界处理,并根据网格所有格点各方向的平衡分布函数获得收敛状态。本申请的实施例提高了格子Boltzmann方法的处理性能,满足了流体模拟的需求。
【技术实现步骤摘要】
本专利技术涉及计算流体力学领域,尤其涉及一种格子玻尔兹曼方法的并行加速方法及系统。
技术介绍
格子玻尔兹曼方法(Lattice Boltzmann Method, LBM)是介于微观分子动力学方法和基于连续介质假设的宏观方法之间的一种介观方法。该方法与传统的流体模拟方法不同,它基于分子动理论,通过跟踪粒子分布函数的输运而后对分布函数求矩来获得宏观平均特性。格子Boltzmann方法的动理论特性使得它在模拟许多复杂流动的时候更有效,如 多孔介质流动、悬浮流、多相流、多组分流等。格子Boltzmann方法具有天生的并行特性,以及边界处理简单、程序易于实施等优点。采用LBM方法求解物理问题时的基本过程如图I所示。对于一个特定的物理问题,首先进行如图I中步骤SllO至步骤S130的辅助步骤。步骤S110,基于各种简化假设,进行物理建模,确定出计算区域、初始条件以及边界条件等,并根据物理问题的不同,选择相应的格子Boltzmann模型。步骤S120,进行网格划分,确定节点。假设网格划分大小为NX*NY,其中,NX为x方向的大小,NY为y方向的大小。步骤S130,根据不同格子Boltzmann模型,选择控制方程,并对控制方程进行离散。如采用标准格子Boltzmann方法对等温不可压缩流动进行模拟,则离散后的控制方程为LBGK方程。前面这3步是在数值模拟之前就进行的。随后进入数值模拟阶段。步骤S140,根据物理问题,给定所有格点上的宏观参量(密度、速度、黏性系数等),并由此计算出所有格点上各个方向的平衡分布函数,以此作为计算的初场。步骤S150,求解离散后的控制方程,例如,采用迁移碰撞规则求解LBGK方程。步骤S160,根据边界条件,在相应边界格点上实施边界处理格式。步骤S170,基于不同格子Boltzmann模型的宏观量的定义法则,计算各格点上的宏观参量。步骤S180,判断计算是否收敛,若计算收敛,则转步骤S190 ;否则返回步骤S150继续求解。步骤S190,输出计算结果。广泛应用的格子-Boltzmann单松弛时间近似BGK模型基于如下的演化方程 I/{Χ + ββ, + )=— —Ifl(XJ)-, j = O 汉式⑴ τ这里,N为网格大小,fi为粒子分布函数,代表时间t在 处存在以微观速度^运动的粒子的概率。松弛时间τ代表达到局部平衡的速率,与流体的动粘性系数相关。平衡分布函数/%是Maxwe 11-Bo Itzmann方程的低马赫数近似,取决于流体的密度和流动速度。它们之间的关系由如下表达式决定。权利要求1.一种格子玻尔兹曼方法的并行加速方法,包括 (PU端确定网格所有格点上的宏观参量及其初始值,定义数据结构和存储方式用于存储每个格点各个方向的平衡分布函数和每个格点的宏观参量,并根据所述宏观参量计算出所有格点上各个方向的平衡分布函数,并设置至强融核(MIC)卡内核的线程执行配置; 至强融核(MIC)端根据所述宏观参量及其初始值、所述线程执行配置以及所述网格所有格点上各个方向的平衡分布函数进行迁移和碰撞的并行计算和并行的边界处理,并根据所述网格所有格点各个方向的平衡分布函数获得收敛状态并传递给所述CPU端。2.根据权利要求I所述的方法,其中 所述宏观参量包括密度、速度、参考长度、雷诺数和黏性系数。3.根据权利要求I所述的方法,其中,所述CPU端设置MIC卡内核的线程执行配置的步骤,包括 所述CPU端根据所述MIC卡的核数设置并行执行的线程数。4.根据权利要求I所述的方法,其中,所述并行的边界处理包括 反弹法或者非平衡外推法的边界处理。5.根据权利要求I所述的方法,其中 所述MIC端根据所述CPU端确定的网格所有格点上的宏观参量及其初始值,计算出所有格点上各个方向的平衡分布函数。6.根据权利要求I所述的方法,其中 所述MIC端的MIC卡内核中的每个线程计算一行网格点的迁移和碰撞处理。7.一种格子玻尔兹曼方法的并行加速系统,包括CPU端和至强融核(MIC)端,其中 所述CPU端用于确定网格所有格点上的宏观参量及其初始值,定义数据结构和存储方式用于存储每个格点各个方向的平衡分布函数和每个格点的宏观参量,并根据所述宏观参量计算出所有格点上各个方向的平衡分布函数;以及设置至强融核(MIC)卡内核的线程执行配置; 所述MIC端用于根据所述宏观参量及其初始值、所述线程执行配置以及所述网格所有格点上各个方向的平衡分布函数进行迁移和碰撞的并行计算以及并行的边界处理;并用于根据所述网格所有格点各个方向的平衡分布函数获得收敛状态传递给所述CPU端。8.根据权利要求7所述的系统,其中 所述宏观参量比如包括密度、速度、参考长度、雷诺数和黏性系数。9.根据权利要求7所述的系统,其中 所述CPU端用于根据MIC端的MIC卡的核数设置并行执行的线程数。10.根据权利要求7所述的系统,其中 所述MIC端用于进行反弹法或者非平衡外推法的边界处理。11.根据权利要求7所述的系统,其中 所述MIC端用于根据所述CPU端确定的网格所有格点上的宏观参量及其初始值,计算出所有格点上各个方向的平衡分布函数。12.根据权利要求7所述的系统,其中 所述MIC端的MIC卡内核中的每个线程计算一行网格点的迁移和碰撞处理。全文摘要本专利技术公开了一种格子玻尔兹曼方法的并行加速方法及系统,克服目前使用X86服务器集群来进行LBM处理在时间等消耗较大的缺陷,该方法中CPU端确定网格所有格点上的宏观参量及其初始值,定义数据结构和存储方式用于存储每个格点各个方向的平衡分布函数和每个格点的宏观参量,根据宏观参量计算出所有格点上各方向的平衡分布函数,设置MIC卡内核的线程执行配置;MIC端根据宏观参量及其初始值、线程执行配置及网格所有格点上各方向的平衡分布函数进行迁移和碰撞的并行计算和并行的边界处理,并根据网格所有格点各方向的平衡分布函数获得收敛状态。本申请的实施例提高了格子Boltzmann方法的处理性能,满足了流体模拟的需求。文档编号G06F17/50GK102945295SQ20121039062公开日2013年2月27日 申请日期2012年10月15日 优先权日2012年10月15日专利技术者张广勇, 张清 申请人:浪潮(北京)电子信息产业有限公司本文档来自技高网...
【技术保护点】
一种格子玻尔兹曼方法的并行加速方法,包括:CPU端确定网格所有格点上的宏观参量及其初始值,定义数据结构和存储方式用于存储每个格点各个方向的平衡分布函数和每个格点的宏观参量,并根据所述宏观参量计算出所有格点上各个方向的平衡分布函数,并设置至强融核(MIC)卡内核的线程执行配置;至强融核(MIC)端根据所述宏观参量及其初始值、所述线程执行配置以及所述网格所有格点上各个方向的平衡分布函数进行迁移和碰撞的并行计算和并行的边界处理,并根据所述网格所有格点各个方向的平衡分布函数获得收敛状态并传递给所述CPU端。
【技术特征摘要】
【专利技术属性】
技术研发人员:张广勇,张清,
申请(专利权)人:浪潮北京电子信息产业有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。