当前位置:问答库>论文摘要

题目:基于SPH的流体交互仿真研究

关键词:光滑粒子流体动力学;流体固体交互;流体绘制;并行仿真

  摘要

虚拟现实技术是以计算机技术为核心,结合相关科学技术,在视、听、触感等方面生成与一定范围真实环境近似的数字化环境,使用户产生身临其境的感觉,具有沉浸性、交互性和想象性等特征。逼真的流体仿真作为虚拟现实技术的一个研究热点,受到越来越多的关注,具有重要的理论研究价值,已广泛应用于娱乐游戏、电影特效、医学仿真和军事仿真等领域。然而,流体仿真复杂多样、建模难度大,选择合理的建模方法至关重要。SPH (Smoothed Particle Hydrodynamics) 方法作为一种纯拉格朗日方法,用于基于物理的流体仿真。本文首先分析SPH方法的核函数、邻域搜索、边界条件和时间步积分等问题;总结SPH方法在水、气泡、流固交互、多相流等流体仿真中的应用,并且讨论SPH流体中所涉及的自适应采样、流体控制、表面渲染以及并行加速等研究热点。在此基础上,本文开展了基于SPH的流体交互仿真理论、方法和关键技术的研究,研究成果如下:(1) 提出了一种弱压缩光滑粒子流体动力学 (Weakly Compressible Smoothed Particle Hydrodynamics,WCSPH) 的流体仿真方法。与求解压强泊松方程获得无耗散的速度场不同,本文基于Tait方程和兰纳-琼斯势方程,提出了弱压缩流体保护方法。该方法减少了时间消耗,加速密度收敛,且允许采用两倍以上的自适应时间步长。此外,从减少仿真的迭代次数和使时间步独立于场景的角度考虑,提出了自适应时间步计算方法。它根据每个粒子的特点自适应的计算时间步,改善了计算的效率和稳定性,保证一定规模粒子流体的实时仿真。(2) 提出了一种基于粒子的流固交互方法。首先,为了使流体和固体自由交互,本文采用距离场方法对固体进行粒子采样;为了保证仿真的精确性,采用基于粒子移动速度的固体表面粒子提取算法,很好的生成了完全覆盖固体表面的边界粒子,实现了流体和固体的统一表示。其次,对于静态固体,使用基于距离场的方法快速实现了流体与固体交互;对于动态固体,提出了一种将惩罚力和密度改进相结合的方式。在初始阶段,采用限制粒子密度的计算方法,单独计算流固之间的压力,并在物理计算之后校正固体的质心来控制固体模型的相对位置。此外,为防止固体之间的重叠现象,使用改进的密度计算方法来控制高低密度区域粒子体积的变化,再在固体粒子之间产生一种排斥力,以避免固体之间的重叠现象。该流固交互方法可以方便植入WCSPH、PCISPH (Predictive-Corrective Incompressible Smoothed Particle Hydrodynamics,PCISPH) 等仿真框架中。(3) 提出了一种基于自适应标量场的流体表面重建方法,有效的保护了流体表面细节,并实现了高质量的流体可视化效果。首先,本文定义了一个标量场计算模型,采用自适应的椭球型核函数取代球型核函数,相比于传统的标量场计算方法,具有更好的计算精度;同时,通过约束校正的方法获得自适应的光滑半径。它充分考虑了邻近粒子的分布特征,从而得到了精确的标量场,有效的保护流体表面的细节。其次,它根据粒子的数量自动计算网格的分辨率,再将粒子放入相应的网格中,从得到的标量场体数据中重建流体表面。此外,为了提高计算的效率,我们仅在接近表面的粒子上生成标量。最后,为了实现实时的流体渲染,我们采用延时绘制管线的方法,实现了对流体的真实感绘制,得到了逼真的流体场景渲染。(4) 设计并实现了一个基于多GPUs的并行仿真系统。首先,提出了一种基于SPH的牛顿流体与非牛顿流体统一仿真方法,通过添加物理项和参数调整即可实现不同类型的流体仿真。该模型易于并行,便于实现。此外,设计了一种基于多GPUs的流体并行加速仿真方法。针对多GPUs的特点,我们研究了流体数据的多GPUs划分方法,根据场景的特点,将流体数据自动的分配到相应的GPU上执行;为了保证各GPU的计算效率,提出了基于时间和空间的动态划分策略,保证了GPUs间的负载均衡;为了减少数据传输开销,利用CUDA提供的多线程机制,设计了一种异步数据传输策略,合理的隐藏了粒子传输的开销。最后,基于本文的研究,我们搭建了一个统一的流体并行仿真系统平台原型。