收藏 分享(赏)

计算机虚拟技术毕业论文.doc

上传人:myk79025 文档编号:8136504 上传时间:2019-06-10 格式:DOC 页数:70 大小:1.47MB
下载 相关 举报
计算机虚拟技术毕业论文.doc_第1页
第1页 / 共70页
计算机虚拟技术毕业论文.doc_第2页
第2页 / 共70页
计算机虚拟技术毕业论文.doc_第3页
第3页 / 共70页
计算机虚拟技术毕业论文.doc_第4页
第4页 / 共70页
计算机虚拟技术毕业论文.doc_第5页
第5页 / 共70页
点击查看更多>>
资源描述

1、 毕业设计(论文)烟雾骏马形态的计算机模拟杨青青燕山大学里仁学院2014 年 6 月 毕业设计(论文)烟雾骏马形态的计算机模拟学 院:里仁学院专 业:计算机科学与技术 学生 姓名:杨青青 学 号:101304011180 指导 教师:唐勇 答辩 日期:2014 年 6 月 21 日 燕山大学里仁学院毕业设计(论文)任务书学院:里仁学院 系级教学单位: 电子工程系学号 101304011180学生姓名 杨青青专 业班 级计算机科学与技术 10-7题目名称 烟雾骏马形态的计算机模拟题目性质1.理工类:工程设计 ( ) ;工程技术实验研究型( ) ;理论研究型( ) ;计算机软件型( ) ;综合型(

2、 )2.文管理类( ) ;3.外语类( ) ;4.艺术类( )题目类型 1.毕业设计( ) 2.论文( )题目题目来源 科研课题( ) 生产实际( )自选题目( )主要内容实现烟雾的控制操作和保持烟雾的自然流动状态。从控制烟雾目标变形这一方面对烟雾进行模拟。(1)为实现烟雾的控制模拟,建立烟雾物理模型,控制烟雾的运动状态。边界通过吸引力将烟雾吸引到指定的对象中,通过驱动力使烟雾在对象内部运动。(2)计算吸引力和驱动力将烟雾吸引到目标处,使烟雾依据指定目标进行变形。基本要求(1)必须在尊重事实的基础上将理论研究与实际应用密切结合,使本课题的研究成果既有理论高度又有实际应用价值。(2)在深入学习模

3、拟不规则物体的理论知识、总结和借鉴别人的优秀研究成果的基础上,添加自己想法和设计思路,在保持烟雾自然流动的前提下,通过高效简洁的操作实现对烟雾模拟的控制。(3)使烟雾更好的保持细节,在应用时能使之表现更真实。利用 Visual C+和OpenGL 来实现一个烟雾控制模拟系统。参考资料1孙家广.计算机图形学.清华大学出版社.20002张茂军.虚拟现实系统.科学出版社.20013石教英.虚拟现实基础及实用算法.科学出版社.20024Dave Shreiner(著).李军(译).Open GL 编程指南.机械工业出版社.2010周 次 第 1 4 周 第 5 8 周 第 9 12 周 第 13 16

4、 周 第 17 周应完成的内容可行性研究。查阅相关资料,了解烟雾变形的发展与研究现状,掌握C+与OpenGL。总体设计。熟悉算法,建立烟雾物理模型,确立每个模块的功能以及联系。详细设计。确立每个模块的具体实现细节。编码、测试。进行整个项目的代码编写与测试。论文的总结与验收。最终完成一篇完整且优秀的论文。进行最后的答辩准备工作。指导教师:唐勇职称:教授 2014 年 3 月 12 日系级教学单位审批:年 月 日摘要I摘要在人们的生活和生产活动中随时随地都可遇到流体,所以对流体的研究是与人类日常生活和生产事业密切相关的。设计者常常希望通过简单高效的操作即可快速获得理想的流体模拟效果。因而,烟雾的控

5、制模拟在游戏、影视特效等方面都具有广泛的应用。本文采用基于外力的物理方法,从目标驱动烟雾变形这一方面对运动规律复杂的烟雾进行研究。首先,为实现烟雾的控制模拟 采用非粘性不可压缩 Navier-Stokes 方程组建立烟雾物理模型,针对目标驱动烟雾运动的设计需求,通过对三维模型进行体素化的预处理,标识出目标的内部网格和边界网格,计算出目标外网格对应的吸引力系数,并通过在外力项中引入吸引力和驱动力控制烟雾的运动状态,保持烟雾的细节。其次,进行场景渲染 利用 RGBA 模式对烟雾进行颜色绘制。 最后,利用 VC+语言和开放性图形接口 OpenGL 在 Windows 平台下进行烟雾的形变控制模拟,对

6、改进后的方法进行实验验证。实验证明:利用本文的方法可根据设计者的意愿对保持自然流动状态的烟雾进行有效控制。关键词 烟雾控制模拟;烟雾变形;Navier-Stokes 方程组;场景渲染燕山大学里仁学院毕业设计(论文)IIAbstractAnytime and anywhere in peoples life and production activities can meet fluid, so the study of fluid is closely related to human daily life and production business. Designers often ho

7、pe that through a simple and efficient operation can quickly obtain ideal fluid simulation results. Therefore, the controllable smoke simulation has a wide range of applications in the game, the film, television special effects and so on. The paper based on the external force physical method and foc

8、us on controlling the target-driven smoke deformation. Firstly, in order to achieve the control of smoke simulation, the non-viscous incompressible Nervier-Stokes equations is adopted to establish the physical model of smoke. In order to satisfy the designing needs of target-driven smoke simulation,

9、 Through the pretreatment such as the novelizations of 3d model to mark out the internal grids and boundary grids of targets. Then , to calculate the target grid corresponding to the appeal of the coefficient, and through introducing appeal and driving force on control of smoke motion, to keep the d

10、etails of the smoke.Secondly, carry on the scene to render . Use the RGBA pattern paint the color of smoke. Finally, use VC + + language and open interface OpenGL graphics on a Windows platform for deformation control of smoke simulation, then verify the improved method .Experimental results show: u

11、sing the method of this paper according to the will of the designer can keep the natural flow of smoke under effective control.Keywords controllable smoke simulation; smoke deformation; Navier-Stokes equations; scene renderingIII目 录摘要 IAbstractII第 1 章 绪论 11.1 课题的背景、目的和意义 11.1.1 课题背景 .11.1.2 课题目的和意义

12、.11.2 国内外研究现状 21.3 本文研究内容 4第 2 章 相关技术介绍 52.1 烟雾形变模拟原理 52.1.1 拉格朗日法 .52.1.2 欧拉法 .62.1.3 半拉格朗日法 .62.2 开放图形库 72.3 VS2010 实验平台 72.4 本章小结 7第 3 章 烟雾运动方法分析 93.1 影响烟雾运动因素的分析 93.2 物理模型的构建 93.3 N-S 方程的求解 113.3.1 计算区域的网格划分 .123.3.2 计算外力项 .123.3.3 求解对流项 .153.3.4 计算在压力梯度影响后的速度场 .153.3.5 计算密度 .163.4 本章小结 16第 4 章

13、烟雾骏马模拟的具体设计 17IV4.1 力的描述 174.2 模型体素化 174.3 悬浮控制菜单 184.4 本章小结 18第 5 章 烟雾骏马模拟的具体实现 195.1 实验平台的搭建 195.2 模块功能的具体实现 195.2.1 力的描述 .205.2.2 模型体素化 .215.2.3 悬浮控制菜单 .225.3 本章小结 23结论 24参考文献 25致谢 27附录 1 开题报告 .28附录 2 文献综述 .33附录 3 中期报告 .38附录 4 外文原文 .42附录 5 外文翻译 .50第 1 章 绪论 1第 1 章 绪论1.1 课题的背景、目的和意义1.1.1 课题背景在我们的生活

14、中流体几乎随处可见,烟雾、云等的自然现象总能赋予人们丰富的遐想空间。当人们看到烟雾形成具有一定特征的烟团,或是天空中的云形成动物的形状时总是惊讶而又兴奋的,正是此类具有某种特征状态的流体在日常生活中的稀有更增添了人们对流体控制的兴趣和向往。对如烟雾、云、火焰等不规则物体的真实感模拟一直是计算机图形学中最具有挑战性的研究方向之一。虽然真实性是流体模拟中非常重要的一方面,但在流体模拟已取得巨大成就的今天,如何根据设计者的意愿高效地控制流体动画的模拟亦是当前研究的热点之一。由于在很多情况下,流体自然无规则的运动状态并不是人们所期望得到的理想状态,故设计者常常更希望可以调整流体的大致运动,或控制其流动

15、速率等。1.1.2 课题目的和意义在烟雾受控模拟的研究中,人们希望能够快速方便地对烟雾形态和运动形式进行控制。作为计算机图形学中颇具挑战性的研究方向之一,烟雾变形的研究不仅可以在计算机动画上展示一个唯美的画面,更重要的是此类变形有着广泛的应用,可以被应用到影视、游戏、军事等广泛的领域中。之所以研究烟雾变形模拟的原因在于:(1) 烟雾变形应用的普遍性 烟雾形变的控制及其实时绘制问题在自然界和工程应用中到处可见。比如,自然界中从工厂烟囱中冒出的滚滚浓烟、影视中的烟雾动画等都需要对烟雾进行控制模拟。(2) 逼真的运动物理特性 烟雾本身很不规则,变化也很多,所以对其运动变形的模拟需要实时并且逼真的完成

16、。这样的话,就必须得到较多的参数信息用来控制烟雾的变形细节。其变形就需要对多个点的信息进行燕山大学里仁学院毕业设计(论文)2控制,计算量较大、容易失真。(3) 碰撞的实时形变控制模拟 烟雾因自身的重量以及风的作用,其运动具有随意性,形变中的烟雾遇到流体或刚体的碰撞也是研究的难点之一。在流体的变形模拟方面,烟雾的变形模拟是计算机图形学中一项重要的并且具有挑战性的研究课题。1.2 国内外研究现状1983 年,Reeves 首次系统的提出了一种不规则物体建模的方法 1。1999 年, Stam 引入了无条件稳定的方法来近似求解流体物理方程 2。求解方法结合了半拉格朗日方法和隐式求解方法,取得了对流项

17、无条件的稳定解,获得了稳定实时的模拟结果,另外使用投射方法来保证质量守恒。但半拉格朗日法会带来大量数值耗散,从而导致一些典型的小尺度漩涡消失太快。Stam 的这篇论文为用 N-S 方程进行流体模拟奠定了基本框架,引发了学术界研究基于物理方程模拟流体的热潮。2001 年,Foster 和 Fedkiw 使用在指定网格点上人为的强迫速度方向趋向空间曲线方向的方法来控制流体流动。2002 年,Lamorlette 通过参数曲线控制火焰的模拟,这些空间曲线和曲面根据手工定义的风而发生变化,继而控制流体的运动和结构,其中曲线的切线方向或表面的法线方向显示了烟雾运动的方向 3。但如上方法均不能允许用户直接

18、指定高层次的目标,例如匹配一定目标对象的密度或形状。2003 年,Truille 提出了一个基于梯度的迭代优化方法用于控制特定关键帧的烟雾模拟 4。通过一个目标函数来衡量密度关键帧、速度关键帧与当前烟雾密度和速度场之间的差异,并进行匹配。这个方法最大的优点是能够在模拟自身速度场的框架中动态模拟速度场的导数,然而因速度场对应的每个控制参数的导数都需在整个模拟过程中计算,且在整个模拟过程中都要最小化风力和目标函数,使该方法非常耗时且复杂。2004 年,Pighin 等人使用基于径向基函数的控制粒子来引导它周围的第 1 章 绪论 3粒子沿着用户定义的方向运动 5。流体能够用此方法建模和编辑,但这个方

19、法依赖并受限于适合的有限粒子数和固定的半径。2004 年,McNamara 为了加速计算,在关键帧技术的基础上采用了伴随矩阵的方法,大大提高了非线性优化过程中每步迭代的导数求解效率,但增大了存贮量的要求 6。Fattal 等人提出了一种更有效的方法来匹配用户指定的密度关键帧,即在普通 N-S 方程组上加入一个驱动力、动量衰减项和一个聚合力,以较快的计算速度完成了烟雾的形状控制模拟。但驱动力要求全局网格的非均匀密度分布的梯度估计,同时动量衰减项减慢了流体流动,增加了计算时间。Jeong-mo Hong 和 Chang-hun Kim 则使用一个基于几何形状的势能场体保持流体目标形状,势能作为模拟

20、中额外的一项来驱使流体向目标形状变形。2005 年,LinShi 提出了使用速度限制的方法 8。使用水平集的方法隐式表示烟雾变形过程中的一系列中间形状和指定形状。通过在烟雾边界上的速度限制使烟雾逐渐匹配目标形状,最后即可得到烟雾形成目标形状的连续动画。该方法的优点是既可以对烟雾的变形实现控制又展示了真实的烟雾形态;但该方法对烟雾运动采用可压缩的 N-S 方程表示,要多求一个扩散方程,增加了计算时间。同时基于目标轮廓的技术使烟雾在变形时只能到达目标模型的表面,可能导致精细部分的烟雾不够明显。2006 年,Kim 等人提出了一种基于物理方法的控制烟雾模拟方法,该方法可使烟雾沿着用户设定的三维空间曲

21、线运动,但由于路径控制是通过在线性回馈循环中不断地将当前烟雾速度场和目标速度场相匹配得到的,故在模拟过程一直在当前烟雾速度场和目标速度场之间进行匹配 9。同年,Angelidis 等人提出了一种基于漩涡的方法以实现三维烟雾沿路径运动的模拟,方法中通过调和分析和主要成分分析的方法有效的描述了流体的流动。同年,浙江大学博士周永霞等通过量纲分析简化了 N-S 方程,在求解对流项时采用半拉格朗日方法,为弥补半拉格朗日方法带来的数值耗散,引入了高阶精度的格式,在较粗的网格上亦可得到较高精度的导数值。2007 年,Arisara 和 Pizzanu 等人提出了一种基于耦合的 Reeb 图和径向基函数的可控

22、流体模拟技术,并使用 SPH 近似描述流体的动态,用于骨燕山大学里仁学院毕业设计(论文)4架粒子实现控制 10。然而,为使流体粒子和骨架粒子之间的速度均衡会造成一定的虚假效果。这个方法的另一个问题是它不能自动地选择骨架粒子的数量和其运动的终点。2009 年,Yang Qing 提出基于 N-S 方程的三维烟雾实时模拟,通过基于 GPU 数值化求解 N-S 方程实现实时烟雾模拟 11。2010 年,唐勇提出用 MacCormack 方法求解 N-S 方程对流项,简化了进退误差补偿修正方法求解对流项的求解步骤,减少了计算时间,生成的烟雾效果也具有相当高的真实感 12。1.3 本文研究内容实现烟雾的

23、控制操作和保持烟雾的自然流动状态,从控制烟雾目标变形这一方面对烟雾进行模拟。(1) 为实现烟雾的控制模拟,建立烟雾物理模型,控制烟雾的运动状态。边界通过吸引力将烟雾吸引到指定的对象中,通过驱动力使烟雾在对象内部运动。(2) 计算出吸引力和驱动力,将烟雾吸引到目标处,使烟雾依据指定目标进行变形。(3) 进行场景渲染,引入光照使整个场景更具立体感与真实感;利用RGBA 模式对烟雾进行颜色绘制;为更好的展现烟雾变形的控制,加入悬浮菜单对烟雾进行直接控制。(4) 设计一个烟雾控制模拟系统,采用 VC+、OpenGL 图形编程库建立控制模拟系统,并对目标对象驱动烟雾形变的模拟进行验证。第 2 章 相关技

24、术介绍 5第 2 章 相关技术介绍2.1 烟雾形变模拟原理要进行烟雾的形变控制的模拟,就必须建立控制烟雾形变的方程来控制烟雾整体的运动的状态,将每一个时刻烟雾的运动形态进行数学描述,以此确定烟雾粒子的速度、质量、温度、颜色等等属性,然后依据这些属性对每一时刻的烟雾进行绘制。在流体力学中,描述烟雾粒子运动的方法有三种:一种是基于粒子的拉格朗日法;一种是基于欧拉网格法;第三种是前两者的结合即半拉格朗日法。下面就依次介绍这三种方法。2.1.1 拉格朗日法拉格朗日法又叫做随体法,是以研究单个质点运动过程为基础,综合所有质点的运动,建立起整个流体的运动 1。其基本特点是追踪流体质点的运动。拉格朗日法假设

25、流场中充满了大量的微小的粒子,粒子作为对流体的采样点携带了速度、密度、温度等物理量,粒子随着流场运动,记录每一个时间段这些粒子的各个物理参数的变化,从而得到整个流场随时间变化的情况,假如某一时刻每个质点的坐标是(a 、b、c ) ,则任意时刻质点在空间中的位置就是(a、b、c )和 t 的函数。使用拉格朗日法首先要根据烟雾形态定义粒子的初始属性,再分析物体的运动规律,建立粒子属性变化的动态特性,赋予每一个新粒子各自不同的属性,并将其加入模拟系统中,然后根据处在生命周期中粒子的动态属性对粒子进行位置的移动和属性的变换,若粒子超出生命周期则删除,最后对有生命的粒子进行绘制,就模拟出了不规则动态变化

26、的烟雾。拉格朗日法的优点是描述流体的运动非常简单明了,随流场运动正向追踪粒子,保证了计算在任意时间步长上的稳定性和计算的精确性。但这种方法也有缺陷。在粒子系统产生的近三十年的时间里,其本身并没有发生太大的变化;运算量和存储量都比较大,当处于生存期的粒子数超过一定的数量时,系统的性能会受到很大的影响,大量粒子的增加,必然导致运算量和存储量的增加,所以实时性方面受到限制,而为了获得真实感、燕山大学里仁学院毕业设计(论文)6高细节的烟雾效果,只能通过增加模拟烟雾的粒子数量获得。2.1.2 欧拉法欧拉法又叫做流场法,是以流场作为描述对象研究流动的方法。它不直接看质点的运动过程,而是以流场为对象,研究各

27、时刻质点在流场中的变化规律 5。其采用固定的坐标系,将整个流场空间用网格进行离散化,并在网格上选定固定采样点,记录和分析每一采样点上的流体的速度、密度和温度等物理量随时间的变化。然后观察在流动空间中的每一个采样点上运动要素随时间的变化,当流体流经这些采样点时,采样点上的物理量状态会更新,但是采样点不会随着流场运动。最后把足够多的空间点综合起来而得出的整个流体的运动情况。欧拉法的优点是描述流场具有很好的规则性,它在每一个时间步长上对固定的采样点进行流体物理量状态的更新,计算相对简单。但这种方法不能保证在任意时间步长上计算的稳定性,并且当时间步长过大会导致烟雾模拟的失真,过小时导致计算量的加大,影

28、响烟雾模拟的实时性。2.1.3 半拉格朗日法拉格朗日法和欧拉法描述流体运动各有优缺点,所以,Stam 提出一种半拉格朗日法,这种方法结合了拉格朗日法的稳定性和欧拉法的规则性优点,保证了求解过程任意时间步长的稳定性和计算的简单有效 2。半拉格朗日法的核心思想是将每个网格单元看作是一个粒子,使用速度场回流的方法追溯速度场被更新前的粒子,并对其周围的采样点进行插值计算,在保证求解过程计算简单的前提下又保持了任意时间步长上的稳定性。三维的目标对象是有规则边界的,并且需要使大量的烟雾快速充满模型目标,故使用具有规则网格单元的半拉格朗日法来描述烟雾的运动更有益于高效快速地实现基于目标的烟雾控制模拟。综合以

29、上分析,为同时实现基于路径和基于目标的烟雾控制模拟,本文选用欧拉网格的方法来描述烟雾的运动。第 2 章 相关技术介绍 72.2 开放图形库近年来,三维图形技术得到了快速发展,OpenGL 是其中性能最优异的一款,在多家研究计算机方面的公司的推荐下,如世界计算机技术顶尖的 SGI 公司,OpenGL 制定了在三维图形数据库下的一种标准,该标准具有通用性、共享性和开放性。OpenGL 特点及功能 14。OpenGL 独立于操作系统及窗口系统,作为开放的图形软件包,在此基础上,OpenGL 应用程序可以在不同的软硬件平台上方便的进行移植操作。为有效的保证算法的可靠性和准确性,它与Visual C+的

30、紧密结合,并极大程度上提高了在图形和计算方面算法的效率,同时使用 OpenGL 既简单又便捷,从而提高了效率。2.3 VS2010 实验平台 VS2010 的全称是“Visual Studio 2010”。微软发言人在 Visual Studio 2010 的揭幕仪式中说:毫无疑问,软件将驱动整个世界。看看你的周围所有的事物、我们所使用的设备以及与之交流的系统就知道了。所有的东西都由软件驱动,开发者仅仅是使得这一切发生的人而已。软件驱动这个世界,意味着开发者就是驱动这个世界的引擎。Visual Studio 2010 新功能主要包括:动态编程、应用程序生命周期(ALM)、C#4.0 动态类型,

31、并支持多显示器、TDD、Office 开发、Quick Search 特性、 C+0x 新特性、.NET 平台的语言 F#等。OpenGL 同时对下述功能进行了增强和改进:进一步完善了 Visual Studio IDE,WPF 和 Silverlight 应用程序的开发、进一步弥补了 C#和Visual Basic 语言的不足,并依据开发人员的需求选择一种合适的语言,简化了基于 MVC 的 Web 开发,从而提高了代码编写速度,其中最为主要的改进是极大的丰富和完善了 Visual C+的功能。本文主要用到的语言就是 C+,在 VS2010 的平台上使用方便。2.4 本章小结本章主要介绍了关于

32、烟雾形变控制模拟理论的论述和 OpenGL 开放图形库和 VS2010 实验平台。首先主要介绍的三个理论是拉格朗日法、欧拉燕山大学里仁学院毕业设计(论文)8法和半拉格朗日法。它们分别有优缺点,最后根据需要选择了其中一个合适的方法即半拉格朗日法进行研究。然后介绍了 OpenGL 开放图形库,它可以与 Visual C+紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性并且使用简便,效率高。最后介绍了 VS2010的实验平台,并用 C+语言在此平台上进行操作。第 3 章 烟雾运动方法分析 9第 3 章 烟雾运动方法分析3.1 影响烟雾运动因素的分析能够影响烟雾运动的因素有多种

33、,如外力的作用、压力项的改变、粘性系数大小的调整以及对烟雾速度的直接限制。下面将对能够改变烟雾运动的不同影响因素进行分析。(1) 力的作用 烟雾在受到外力的作用时,会引起流体速度场的变化,速度场驱动密度场继而改变它原有的运动形态。例如缓缓飘升的烟雾被吹过的风改变其原有的运动方向,以及烟雾的运动形态。外力的作用能够明显的改变烟雾的运动形态。(2) 压力的作用 压力即在流体内各微团上单位质量流体的压强合力。在流体运动时,各粒子被相邻的粒子挤压和碰撞,流体的属性因此而变化;另外,流体中各粒子间的距离非常近,当流体受到作用力时,离外力比较近的粒子传递一个作用力到较远的粒子上,如此逐步的传导过程产生压强

34、。这样的压强梯度逐渐作用到整个流体,进而影响流体运动状态。(3) 粘性项系数 粘性特征较明显的流体,如蜂蜜,使流体在运动受到一定的运动阻力,这种阻力导致了动力的扩散,同时也以抵抗着流体的流动,使流体运动速度及形态有所变化。但对于烟雾等气体的粘性很小,所以此项是可以忽略不计的。(4) 烟雾速度的直接限制 对烟雾的运动速度直接限制可以很快的改变烟雾的运动状态,即这样的方法能够快速有效的约束烟雾的运动速度,从而实现烟雾的形变控制模拟,但烟雾的真实性会随之发生变化。可见欲通过基于外力的方法实现具有较高真实度的烟雾控制模拟,就要最大程度地将设计者的理念通过简单高效的操作转化为相应的外力对烟雾进行控制,来

35、相对提高基于外力方法的可控性。3.2 物理模型的构建在计算机图形学领域,人们一直追求用计算机再现周围的真实世界,然而看似简单的现实世界,实质却极其复杂。其中一些自然现象,人们可燕山大学里仁学院毕业设计(论文)10以采用过程描述的方式模拟出某种特定的效果,但是对于烟雾、云等不规则物体的自然现象人们却无法找到一个简单的模型来描述它,这就需要去追溯自然现象本身的物理根源,只有借助其本身较为精确的物理描述才能再现出具有真实感的外在视觉效果。随着计算机硬件的飞速发展和计算能力的不断增强,计算机能够完成的算法复杂度不断上升,使得基于物理的动画模拟成为当前和未来计算机图形学发展的一个重点研究方向。纳维-斯托

36、克斯方程是用来计算流体力学的经典模型描述方程,简称N-S 方程,该方程是由法国力学家 Claude-Louis Navier 和英国的物理学家George Gabriel Stokes 在 18 世纪分别导出而得名,在流体模拟时,依赖微分方程来描述流体的运动规律 10。虽然 N-S 方程组是最为常用的流体物理模型,但完整的 N-S 方程组需要考虑流体内粒子动量的改变率即加速度、流体内部压力的变化、抵制流体流动的粘性阻力以及外力之间的关系,导致计算量很大,通常在为不同的流体建立物理模型时,需要根据流体的特性对 N-S 方程进行简化。本文只研究烟雾的运动,而流体的粘性效果在如烟雾等气体模拟时可忽略

37、,并当流体的速度远远低于声速时,流体的压缩效果也可忽略不计,因此,可将简化的 N-S 方程即欧拉方程,表示如下:(3-1)0u(3-2)式中 p压力密度f外力u速度矢量, ),(zyxu矢量点积 散度算子微分算子,也是梯度算子拉普拉斯算子2方程(3-1)是在流体是不可压缩流体且密度 是常数的条件下,由质量守恒定律推导而得到的流体的质量方程,又称质量守恒方程和连续方程。fpt 1)(第 3 章 烟雾运动方法分析 11方程(3-2)为以动量守恒定理为基础,在连续流体力学中由牛顿第二定理推导而得到的流体的动量方程,描述了流体在一定加速度和不同作用力的影响下发生了怎样的运动变化情况。为对烟雾运动及其形

38、变进行有效的控制模拟,使烟雾按照设计者的意愿进行运动,本文使用基于力的方法对烟雾进行变形控制,首先定义外力f 由边界吸引力、内部驱动力和热浮力三项构成。其中边界吸引力是通过解析路径或是目标对象的几何特征,使路径或对象的边界对外面的烟雾产生吸引力,吸引力不仅可以把烟雾吸引到用户指定的路径或对象里,还可确保烟雾达到设计者的理想效果后仍保持其形态,抵消烟雾的扩散现象。而内部驱动力使到达边界的烟雾继续向路径或对象内部运动,即使烟雾在指定的路径范围或对象内从烟雾密度高的区域运动到烟雾密度低的区域,从而控制着烟雾在路径或对象内的运动快慢及方向。所以将流体动量方程中的风力 f 为:(3-3)atrcdriv

39、ebuoyff式中 fattract边界吸引力fdrive路径内部驱动力fbouy垂直向上的浮力,方向是垂直向上的,大小也可以由设计者指定对于烟雾的密度 ,一般认为密度 只是随流体速度场水平输送,即:(3-4)综合方程(3-1)、方程(3-2)、方程(3-3)和方程(3-4) 即构成了本文中可控烟雾的基本物理方程组。 3.3 N-S 方程的求解N-S 方程求解得过程就是逐步求解外力,对流项,再求解压力项,最后利用变化的速度场计算密度场。分别用 u0、u1、u2、u3 来表示在不同计算阶段的烟雾的速度场。)(Ut燕山大学里仁学院毕业设计(论文)123.3.1 计算区域的网格划分想要精确的求解 N

40、-S 方程组是非常困难的。首先利用有限差分法对连续的计算区域进行离散,得到有限的网格结点,然后用离散的变量值近似的表示连续的变量值,再将微分方程转化成代数方程近似求解。因为有限差分法是将计算区域划分为很多的规则网格,规则网格的特点是求解简单且快速。所以本文用有限差分法求解 N-S 方程,来达到烟雾形变模拟的效果。将计算区域离散后,就要进行数据的记录,目前常用的方法有两种,一个是交错网格,另一个是非交错网格。两种网格的记录方式不同,交错网格是把数据分开记录的,流体的压强与密度是记录在网格中心而速度分量是记录在网格表面的;非交错网格将所有数据都记录在网格中心。所以用非交错网格处理数据相对简单快速,

41、固本文中使用规则的非交错网格来离散计算区域。三维计算区域被划分成网格精度为 MNO 的三维网格空间,图 3-1中所示的三维网格。图 3-1 三维空间网格的划分3.3.2 计算外力项为了完成烟雾的形变控制模拟,本文引入外力 f(边界吸引力、内部驱动力和热浮力的和)对烟雾进行控制。边界吸引力的作用就是防止烟雾的随意扩散,因为烟雾的运动是复杂且随机的,所以要加如边界吸引力来将N+1zx0O+1第 3 章 烟雾运动方法分析 13扩散的烟雾吸引到目标对象内,以此达到理想的形变效果,并且在之后的时间里维持形变效果,抵消烟雾的扩散。内部驱动力的作用就是使模型的内部快速的,按照一定规则的充满烟雾,这个规则就是

42、是烟雾由高密度区流向低密度区。热浮力是方向垂直向上的,大小可自定义的力。所以将流体动量方程中的风力 f 为:(3-3)式(3-3)中 fattract 代表边界吸引力,fdrive 代表路径内部驱动力,fbouy 代表垂直向上的浮力,方向是垂直向上的。(1) 边界吸引力的计算基于目标对象的烟雾形变控制模拟, x 处受到的边界吸引力 ,如式(3-5)(3-6)(3-7)(3-8)式中 )(x 表示外部网格点 x 处的密度, )(xAe 表示所有模型边界网格点在 x 处的吸引力系数矢量之和,M 是边界网格点的总数, )(xai 表示边界网格点 Pi 对当前网格点 x 处所施加吸引力的吸引力系数矢量

43、, 表示吸引力影响因子,用于调整吸引力的大小; )(xDi 表示从网格点 x 到 Pi 的距离;R 是吸引力作用半径, Pi 是球心, 为线性光滑函数,作用是使吸引力的大小平滑的从远到近进行变化。(2) 内部驱动力的计算因为烟雾总是从高密度区流向低密度区,所以在模型内部定义的内部驱动力所产生的理想速度方向应该与烟雾的密度梯度相反,且大小与粒子当前的速度大小相同,因此烟雾可以在模型内部按照一定的速度和规则将模型逐渐填充。buoydriveatrct ff)()(AfeatrcMiiexaxA1/()RHii)aii燕山大学里仁学院毕业设计(论文)14如图 3-2 显示了内部驱动力改变速度的过程。

44、图 3-2 内部驱动力对速度方向的改变unewxuduiu开 始外力计算及对速度的影响对流项的求解压力项的计算求解密度对流方程n=n+1n=1n=endtime?结 束NY第 3 章 烟雾运动方法分析 15图 3-3 N-S 方程求解过程图 3-3 中 u 为当前网格点 x 处的速度,ui 为大小与当前速度 u 相同、方向与密度梯度方向相反的理想速度,ud 为内部驱动力产生的速度,unew为加入内部驱动力后的新速度,即(3-9)(3-10)(3-11)其中,驱动力系数 可用于控制烟雾在内部网格从高密度处向低密度处的运动速度,其值越大,内部网格的速度方向改变的就越大;当等于 1 时,当前速度即是

45、理想速度,方向刚好与密度梯度的方向相反;当等于 0 时,表明内部驱动力不起任何作用,当前速度没有变化。3.3.3 求解对流项流体的对流是指流体的各物理量随流体运动速度的方向进行传输,而流体速度也会携带流体本身运动,称为速度场的对流。在本文的求解中,采用 MacCormack 方法求解对流项,提高了模拟速度的同时也保留了烟雾细节的真实感。第一步,利用前向对流算子 A 计算得到中间量 )(1nnA ,其中 n 表示对流前的量 。第二步,用逆向对流算子 R 获得另一个中间量 1nRn ,即可获得最后用来调整对流初始条件的评估对流步误差, 2/)(e 。如果前向对流算子 A 是线性的,则默认为能够及时

46、对方程和前向误差进行求解,可得, )()(1 Aennn 。因为不可证明 e 是关于时间 n 的函数得, ennn11)( 。最终求得对流后的量 2u = 1 。dnewuu)(id1,0|uui燕山大学里仁学院毕业设计(论文)163.3.4 计算在压力梯度影响后的速度场当外力作用在流体上时,会由离外力较近的粒子逐渐作用到较远的粒子上而产生压力,压力的不均匀会产生压力的梯度力。用一阶导数中心差分格式展开泊松方程 的左边,用二阶导数中心差分格式展开泊松方程的右边,对方程进行整理之后利用压力对速度场进行修正,即得到受压力梯度影响后的新速度场 。(3-12)3.3.5 计算密度速度场驱动密度场以使密

47、度场发生平移:(3-13)至此,已完成模拟中一个时间步长内的所有计算,从 n=0 开始,循环执行上述步骤进行迭代计算,直到 n=endtime 结束。则通过目标对象或指定路径计算外力项的 N-S 方程求解过程如图 3-3 所示。3.4 本章小结本章主要对烟雾运动及其形变的控制模拟方法进行了分析和研究。首先,结合烟雾的物理特性对影响烟雾运动的因素加以分析;然后,鉴于烟雾的压缩性和粘性效果不明显的情况,采用不可压缩非粘性的 N-S 方程组建立烟雾物理模型以减少模型的复杂度;其次,在 N-S 方程的外力项中加入边界吸引力和内部驱动力,使得烟雾能够按照设计者的意愿进行运动。最后,用有限差分法求解烟雾的

48、物理 N-S 方程,并通过引入 MacCormack方法求解对流项,以减少 N-S 方程求解过程中的数值耗散,提高真实度。)(3utptu23第 4 章 烟雾骏马模拟的具体设计 17第 4 章 烟雾骏马模拟的具体设计4.1 力的描述力的描述一共包括三个方面,边界吸引力、内部驱动力以及旋涡力的实现。(1) 边界吸引力 在进行烟雾形变模拟时,由于烟雾的运动是随机且复杂的,若不受外力的约束,它的边界是不断向外扩散的,无法形成设计者想要的固定形状,所以加入边界吸引力的作用就是使烟雾能按照设计者的思想聚拢,减少向外扩散的程度,达到形变的效果。(2) 内部驱动力 内部驱动力是使烟雾向目标模型聚拢的力,在模型内部根据烟雾密度的不同进行驱动,使烟雾由高密度区向低密度区这样一个有序的路径进行运动,进而充满整个模型,并且,这样的描绘使烟雾的运动更加自然,提高了烟雾的真实性。(3) 旋涡力的实现 烟雾的密度和周围的空气相仿,在运动的过程中很容易产生大量的漩涡。所以漩涡力就是使烟雾产生漩涡的力。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报