分布式多层次粒子碰撞检测算法

来源 :华南理工大学 | 被引量 : 0次 | 上传用户:baiqing001
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
粒子碰撞检测是为了发现整个场景所有粒子之间存在的物理相互作用,在离散元方法(Discrete Element Method,简称DEM)[1]、分子动力学(Molecular Dynamics,简称MD)[2][3]和流体动力学(Smoothed Particle Hydrodynamics)[4]等许多领域有着非常重要的作用。粒子仿真通常都是将连续时间划分成许多小的时间片,每经过一个时间片进行一次计算,再更新粒子的状态,而在每次计算中有个非常耗时的过程就是检测所有粒子对之间是否发生物理碰撞[5],所以粒子间的碰撞检测算法一定程度上决定了实际物理模拟的效果。随着人们研究的问题越来越复杂,粒子规模变得越来越大,如果直接两两进行碰撞检测,那么时间复杂度就是2O(n),在大规模的粒子系统中是不可接受的,所以研究者提出了许多复杂度为O(nlogn)和O(n)的算法,包括ADT(Alternating Digital Tree)[6],ASDT(Augmented Spatial Digital Tree)[7],链式单元法(Linked-Cell Method)[8][9][10],NBS(no binary search)[11],单层盒(Level Boxing)[12],多层次盒(Multilevel Boxing)[12][13][14][16][17][18][19],索引盒(Indexed-level Boxing)[12],多层次网格(Multigrid Contact Detection Method,简称MGCD)[20]等,在不同的场景中选择适当的算法会达到更好的效果。同时,随着不同的并行编程模型的快速发展,将粒子碰撞检测算法并行化成了一种非常有效的提高效率的手段。本文在深入理解各个碰撞检测算法以及并行化手段的基础上,提出两种基于多层次碰撞检测技术的并行化算法(以下称为算法二和算法三)。不同于传统的直接等分空间(以下称为算法一)来实现并行化,算法二和算法三都采用预估计算量来达到负载均衡,算法二通过计算量来划分空间以实现并行化,算法三考虑到划分空间产生的边界问题以及由粒子运动产生的负载不均衡,先按照粒子大小将空间分层,然后按照计算量和空间层次划分粒子数据。最后,使用MPI实现三种算法,设计多组实验场景,算法二和算法三在不同场景下均能较好的达到负载均衡,效率优于算法一;算法三的效率最高,在负载均衡和通信开销上均优于其他两种算法。
其他文献
目的探析危重症心脏病患者应用主动脉内球囊反搏辅助治疗的临床效果。方法对2016年1月至2018年1月期间在本院接受治疗的60例危重症心脏病患者进行研究,根据随机数字表法进行
目的观察对比两孔法和三孔法胸腔镜肺叶切除术联合系统性淋巴结清扫术治疗肺癌效果。方法将本院确诊收治的84例肺癌患者作为本次研究对象,随机双盲法分为两组,对照组40例采用
猪传染性胃肠炎是生猪养殖中一种常见疾病,影响猪健康养殖,有着高死亡率特点,尤其是对新生猪仔,由于身体抵抗力较差或母猪影响继而感染胃肠炎。因此,养殖在生猪养殖过程中应
笔者所说的"精系化",是一种工具和方法论,即是一种在精细化基础上更系统,更科学的经营管理模式。一个人要做好工作需要具备两个基本要素,一是要有满腔热情和认真负责的态度,
本报讯 12月9日下午,合肥市庐阳区人民政府与华为软件技术有限公司正式签署华为合肥云计算合作协议。未来,庐阳区作为安徽首个与华为开展合作的县区,将率先与华为共同开展城市产
报纸
农业自然风险度量对农业保险的发展和防灾减灾具有重要的理论和现实意义,而在风险评估中采用何种方法来测度风险又是一个基本问题。文章主要从理论上分析了农业自然(巨灾)风
小学生自从进入学习时代就面临着一个重要的学科问题,那就是数学,相对于其他学科的生动、有趣,数学这门理科显得更加的枯燥、抽象。能使学生投入到抽象数字运算学习中,无疑是
<正>【理论基础】积极心理学关注人的积极心理品质对人的积极影响与对消极情绪的积极转换,从积极心理品质出发,遵循调动人的身体线(肢体互动与放松)、情感线(情感激荡与升华)
肝移植是治疗急性肝衰竭、失代偿期肝硬化及肝细胞癌等终末期肝病的有效方法。近年,随着患者对医疗技术水平的认识和对术后生活质量要求的提高,肝移植已逐渐成为临床常见手术
亚里士多德是西方实践哲学的开山之祖,他把人类活动分为理论、实践和创制,继而从伦理学的进路上创立了实践哲学。马克思的实践哲学是西方实践哲学史的一个最亮眼的点,马克思