论文摘要
动画模拟技术现在已经广泛应用到了电影电视特技,电子游戏特效等领域之中。人们对电影电视和电脑游戏的画面精细程度和视觉效果的要求也变得越来越高。在动画模拟技术中,关于流体的动画的模拟一直是这几年来研究的一个有趣而且具有实际意义的话题,因为流体本身运动的特殊性和复杂性,一般的描述性的模拟方式变得不太可行,同时基于物理方程的流体模拟因为真实感强烈等优势得到了极大的发展。如今,在基于物理方程的流体的模拟中,很多都是利用了有网格方法,而本文主要介绍的就是一种典型的拉格朗日型的无网格方法—光滑粒子流体动力学(Smoothed Particle Hydrodynamics,简称SPH)法。本文主要利用SPH方法求解了Navier-Stokes方程和浅水波方程。为了防止临近粒子之间的相互穿透,引入了Monaghan人工粘性的变形形式,从而起到了消除数值震荡的问题;为了能保持相邻粒子之间的数量,提高计算的精度和效率,本文使用了可变的光滑长度的方法,为了能解决边界缺陷等问题又引入了Liu提出的两层虚粒子的方法;同时本文还简要的介绍了现在最为流行的几种粒子搜索策略,并进行了对比,列举出了每种搜索策略的优缺点;最后为了能达到数据的可视化的效果,本文又引入了OpenGL技术,通过OpenGL技术将SPH方法计算出来的结果绘制出来,从而起到模拟真实场景的效果。在具体的数值模拟试验方面,本文先利用了浅水波方程结合SPH方法对水流的震荡和水流的方溃坝进行了模拟,并形成了可视化的结果,接着利用二维的Navier-Stokes方程求解了经典的溃坝问题。最后,为了能模拟一些复杂的水流现象,本文引入了一种经常用来模拟复杂不规则物体运动的可视化方法--粒子系统,通过对粒子系统的简单介绍,我们得出粒子系统可过程化的特点并把这一特性和基十物理方程的方法进行了有效地结合,最终模拟出了喷泉的效果。