论文部分内容阅读
气泡的运动现象是自然界和工程应用中常见的经典两相流现象。气泡的动力学特性在现实生活和工程应用中发挥着重要的作用。近年来,众多国内外学者使用理论分析方法和实验方法对气泡的动力学特性进行研究,然而,由于这些方法存在一定的局限性,加上气泡运动的复杂性,这一领域的研究受到极大的限制。随着计算机软硬件技术的发展,具有成本低、精确度高、计算效率高的数值模拟方法的兴起,使得基于气泡动力学的研究得以迅速开展。LBM是一种具有介观特性的数值模拟方法,它的算法简单、边界易于处理、具有天然并行性,诞生以来,已经被广泛用于多相流、微尺度流、化学反应流、多孔介质流等方面的研究。基于CUDA的并行技术,是近几年发展起来的一种高性能运算技术。CUDA技术充分利用了 GPU多核多线程的优势,编程简单、效率高,极大促进了 GPU性能的提升,并且被迅速应用于并行计算和图像处理领域。目前,CUDA技术已经在医学图像、计算流体力学、环境工程等领域广泛应用。本文提出了一种伪势模型与自由能模型相结合的LBM模型。模型采用了伪势模型中标准的动量演化方程和平衡态速度计算方法,演化过程简单、不需要求解复杂的偏微分方程,采用了自由能模型中的界面捕获方程,需要较少的离散速度。模型融合了伪势模型与自由能模型的优点,既能适应大密度比情况下的两相模拟,又具有较小的虚速度。本文用该模型研究气泡的动力学特性,并采用基于CUDA的并行技术对LBM程序进行优化加速。首先进行模型验证。验证Laplace定律,一共取了 12个不同的半径进行模拟求解气泡内外压力差,模拟曲线与理论分析曲线完全吻合。流场中所有格点到气泡中心的距离与序参数存在一定的关系,模型取半径为30个格子单位的气泡进行模拟,模拟结果与理论分析曲线基本一致,曲线呈现反“Z”形。半径为20个格子单位的气泡在初始化状态下,与横坐标平行且经过气泡中心的直线上的格点的序参数值作为理论数据;在稳定状态下,与横坐标平行且经过气泡中心的直线上的格点的序参数值作为模拟数据,将两种不同状态下的数据作图,理论曲线与模拟基本一致。以上实验表明,模型的模拟结果与理论分析基本吻合。接着用模型研究单个气泡的参数之间的关系。表面张力是气液接触面受力不均匀而产生的一种力。气泡在不同的界面厚度情况下,表面张力的大小也有不同的变化。论文定义气泡的半径为20个格子单位,取10种不同的界面厚度计算了气泡的表面张力。模拟结果显示,在一定范围内,随着界面厚度增大,气泡的表面张力越接近于理论分析值。虚速度是进行LBM模拟时产生的而实际不存在的速度,虚速度越大,模拟越不稳定。论文取10种不同的表面张力,计算了半径为20个格子单位的气泡达到稳定时的最大虚速度。结果表明,随着表面张力增大,模拟产生的虚速度越大。因此,进行LBM模拟时,尽量取较小且合适的表面张力进行计算。然后研究了气泡的合并情况。首先研究了影响两气泡合并的因素。迁移系数、界面厚度、表面张力等参数都是影响气泡合并的重要因素。论文将其中两参数固定不变,改变第三个参数,研究了各参数对气泡合并快慢的影响。模拟结果表明,迁移系数越大,两气泡合并得更快,模拟结果与文献[34]基本吻合。本文还研究了界面厚度、表面张力对气泡合并的影响,界面厚度越大,两气泡合并得更快;表面张力越大,两气泡合并得更快。接着,研究了三个对称放置的气泡、四个对称放置的气泡的合并情况,气泡都能合并在一起,并且四个对称气泡合并成为中间含有液体的大气泡最后用CUDA技术对LBM程序进行优化。在维度划分优化过程中,Grid的取值尽可能大,block的取值是尽量使block的线程数量是32的整数倍。通过对Grid和block尺寸合理划分,程序获得最高24.6876倍的加速比。在存储器访问优化过程中,论文主要对全局存储器和常量存储器进行优化。全局存储器优化是使全局存储器访问满足合并访问条件,常量存储器优化是把程序中始终不变的量定义常量存储器。通过存储器访问优化程序获得最高25.41倍的加速比。在指令优化过程中,论文主要使用了算术指令优化方法,将程序中所有时钟周期操作数低的算术指令改成时钟周期操作数高的算术指令,程序获得最高26.872倍的加速比。在综合优化过程中,程序将以上几种单一优化方案整合在一起,由于各种优化方案的优化效果不是线性叠加,程序获得最高29.931倍的加速比。论文良好的优化效果大大提升了 LBM程序的模拟效率。