论文部分内容阅读
流体充斥着人们的日常生活,在图形学领域研究这类物质的建模有着十分重要的现实意义。仿真、电影及游戏的强力需求推动着基于物理的计算机动画的研究,形象的真实感和运动的真实感成为评价模拟结果的重要依据。真实世界蕴涵着复杂的运动规律,其复杂度往往难以用一些简单过程来表述。如何发现这些规律并通过计算机重现真实世界的运动成为基于物理的计算机动画研究的关键。对真实世界内在本质的不断探索使得在计算机图形学领域中对于物理模型的描述还存在困难,同时计算的复杂度常常也会成为制约物理建模的限制因素。本文着重从基于物理的流体动画建模进行研究,研究了流体的运动模型,自由表面模拟,大规模水面建模,非牛顿流体等问题,在理论研究和算法实践过程中,根据所研究的内容以及所要解决的问题,有针对性地提出了一些新思路和新算法。具体来说,论文的创新点和贡献主要体现在以下几个方面:提出了一种基于宏观控制方程的流体自由表面模拟方法。在对基于宏观控制方程的VOF(Volume of Fluid Method)方法、SPH(Smoothed Particle Hydrodynamics)方法、Level Set方法性能进行综合分析和比较的基础上,提出了一种改进的Level Set方法,将欧拉法与拉格朗日法相结合,通过引入带有拉格朗日特征的无质量粒子,克服了传统的Level Set方法无法准确地描述运动界面在网格内部的位置的缺点;通过半拉格朗日法求解对流项,保证了计算的稳定性。实验表明该方法适合多种流体运动界面的模拟。提出了一种基于LB(Lattice Boltzmann)方程的流体自由表面模拟及2D、3D混合的大规模流体建模方法。探索并实现了基于LB方程在介观层次上对流体自由表面的模拟,克服了基于NS(Navier-Stokes)方程的宏观模拟方法对多介质流等复杂流体运动界面描述的不足,以及基于分子动力学的微观模拟方法计算量过大而无法保证实时性的缺点。研究了LB模型的多速度模型和相应的平衡分布函数及多尺度分析。解决了基于LB方程的自由表面模拟中障碍物及边界条件处理问题。提出了基于LB方程的流体运动控制方法,该控制粒子方法可以较为容易的集成到各种类型的流动模拟过程中。提出一种基于LB方程的浅水面模拟方法,取代流体压力而要考虑的是每个单元高度值的计算,基于LB方程的流体运动模型中的流动步骤和松弛平衡分布都依然有效。解决了2D、3D混合模拟中的相互匹配问题。提出了一种满足计算机动画要求的非牛顿流体和气泡表现方法。在宏观层次的流体运动建模的研究基础上针对非牛顿流体黏性大的特点,提出并实现了一种非牛顿流体建模方法。在传统的模拟不可压流体自由表面的欧拉方法基础上提出一种新的方法,通过在基本的NS方程上附加一些弹性项用来计算黏弹性的流动,这些项可以较为容易的通过欧拉方程实现对非牛顿流体的运动建模。针对计算机动画中碳酸类液体丰富的泡沫效果,研究了液体中气泡产生的机理及规律,提出了一种模拟液体中丰富泡沫效果的方法,该方法适用于气体融解于流体时产生的气泡。方法对于气泡的动力学模拟具有广泛的适用性,模型中气泡尺寸和形成过程具有明确的物理意义,这是很多传统的模拟方法所不具备的。通过本文的研究工作,初步完成了基于物理的流体建模由理论走向应用的相关实践,进一步促进了流体力学和计算机图形学等相关学科的交叉融合,同时也为其它相关理论和实际应用打下了基础。