论文部分内容阅读
近年来,随着软硬件的高速发展,将有限元思想应用于物理仿真领域逐渐成为图形学领域的研究热点。就目前的研究现状而言,高分辨率变形体的仿真由于其计算量巨大,一直以来都是物理仿真领域的一大难题。本文针对此难题,展开研究,实现了一个基于GPU(Graphics Processing Unit)的高效的FEM(Finite Element Method)仿真系统。该系统充分利用GPU的并行处理能力对仿真全过程进行加速。通过将材料模型和时间积分部分隔离,能满足不同材料模型和不同时间积分方法组合使用的需求。本文的主要工作内容概括如下: 1.设计了一套简单高效的四面体网格模型生成流程。由一个精细的三角面片模型,通过使用多种造型软件不断的迭代调整,最终生成符合本FEM仿真系统格式要求的四面体网格模型。通过该流程的使用,利用简化后的四面体网格模型进行仿真,降低了仿真系统的计算量。 2.设计了一套基于多线程的绘制流程。通过主线程和辅助线程的双线程模式的使用,使计算任务和绘制任务能并行执行,从而将绘制任务从整个仿真系统中解耦。通过该流程的使用,提升了该FEM仿真系统的用户体验。 3.实现了一个基于GPU的高性能稀疏线性系统求解器。该求解器支持迭代的共轭梯度法和基于矩阵分解的直接求解法两类求解算法,为不同特征的稀疏线性系统都提供了高效的解决方案。 4.提出了一种基于GPU的快速碰撞响应算法。该算法克服了传统的惩罚力法和冲量法的内在缺陷,通过对穿透深度和碰撞质点的相对速度的综合考虑,能对检测到的碰撞作出迅速响应,提高了系统的仿真效率。 5.在Windows7平台上,使用Visual Studio2013对本文描述的FEM仿真系统进行了实现。该系统使用NVIDIA Tesla K40c显卡,通过对多个高分辨的场景进行测试,与Intel Core i7-4790k处理器上单线程的实现相比,获得5-15的加速。