[发明专利]一种SPH与动态表面网格相结合的流体仿真方法有效
申请号: | 201310744592.3 | 申请日: | 2013-12-30 |
公开(公告)号: | CN103714575A | 公开(公告)日: | 2014-04-09 |
发明(设计)人: | 李胜;任毅;王衡;汪国平 | 申请(专利权)人: | 北京大学 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T13/20 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 冯艺东 |
地址: | 100871 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sph 动态 表面 网格 相结合 流体 仿真 方法 | ||
技术领域
本发明属于计算机图形与动画技术领域,涉及一种流体仿真数据表示方法以及流体运动和动画的高效仿真计算方法。
背景技术
在自然界以及日常生活中,流体是很常见的物质形态。在很多计算机图形学应用中,流体的仿真也占据了很重要的地位,例如在动画、游戏等娱乐领域,以及在科学可视化和医疗应用领域的应用等。现在计算机图形学上的流体仿真与动画方法有很多种,主流的有基于欧拉观点的有限差分方法(通称欧拉法)和基于拉格朗日观点的粒子法(无网格法,通称拉格朗日法)。两种方法各有优缺点,各有应用。粒子法在描述流体的细节特征(波动以及涡旋)方面具有天然的优势。
欧拉法(Euler法)最早由Stam在1999年引入图形领域(Jos Stam.Stable fluids[C].Proceedings of the26th annual conference on Computer graphics and interactive techniques.ACM Press/Addison-Wesley Publishing Co.,1999,121–128)。在这篇文章中作者描述了使用有限差分法进行流体仿真的算法流程,给出了在Euler框架下求解Navier-stokes方程的方法,并给出了平流和投影的数值解法。这篇文章提供了在图形学中进行基于物理的流体仿真的基本框架。
SPH方法(光滑粒子动力学法)是一种基于Lagrange观点的典型的无网格方法。2003年M¨uller将该方法引入计算机图形学中进行流体仿真(Matthias M¨uller,David Charypar,Markus Gross.Particle-based fluid simulation for interactive applications[C].Proceedings of the 2003ACM SIGGRAPH/Eurographics symposium on Computer animation.Eurographics Association,2003,154–159)。SPH方法避免了基于网格方法中频繁的重网格化操作,能够增加程序的鲁棒性,降低计算复杂度。SPH方法在连续介质特别是流体的仿真领域中有广泛的应用。图形学中的流体仿真有多种方法,其中比较常用的是基于Euler观点的有限差分法以及基于Lagrange方法的无网格方法(SPH)。相比于Euler方法,SPH方法能更好地展现流体的细节,例如流体的飞溅效果。另外,通过调节粒子的规模可以很容易的使用SPH方法达到实时仿真而不使效果有很大损失。
动态显式表面的主要思想是在仿真的初始阶段给定一个满足闭合流形条件的初始显式表面(通常即为三角形网格),随着仿真的不断进行,每个时间步都得到一个空间中的速度场,由该速度场驱动显式表面的顶点进行运动并保持连接关系不变。之后得到了一个可能有相交以及退化三角形的网格,对此网格上的三角形进行操作以保证三角形的质量(由面积、边长比、角度等指标来衡量),同时修正已经相交的部分使网格仍然保持闭合流形性质,在此过程中应能处理由于运动引起的拓扑变化。由于动态显式表面的输入仅需要初始网格和速度场,与底层的仿真无关,只要是能提供速度场的数值方法都可以使用。又由于动态显式表面可以很好地处理形变以及拓扑变化,很适合应用在流体仿真中作为流体的表面。传统的流体仿真使用隐式表面,即通过仿真模型生成一个距离场,再从距离场上抽取出一个等值面作为流体的表面。显式表面与隐式表面相比有如下好处:
·显式表面比隐式表面更有利于保持住表面细节,这一点上要优于动态隐式表面,后者常常会因为平流中的数值耗散而抹掉细节;
·显式表面能够很好地表示几何上退化的特征,例如三维场景下的一维或二维特征。而隐式表面则受限于空间离散化的分辨率大小,往往很难表现这类特征;
·显式表面能够很好地保持表面上的参数化特征,例如纹理坐标等等。使用动态显式表面意味着可以省去每步重建表面的过程,不仅可以节省大量的内存空间(以及通常会节省计算时间),更重要的是可以天然地保持住表面上各点在时间序列上的演变关系,从而可以使参数化特征的传递有迹可循;
·对于流体来讲,引入显式表面可以有助于以一种更直接的方式来计算表面物理,例如由于表面张力引起的表面压差和毛细波等现象。此外,有了显式表面,可以借助离散微分几何上的大量知识来理解当前的仿真系统,例如可以便捷地计算表面积以及体积等等;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310744592.3/2.html,转载请声明来源钻瓜专利网。