近邻列表 neighbor list (转)
标签:
杂谈 |
分类: study |
近邻列表:近邻列表(neighbor list,也叫做Verlet
list)是分子动力学模拟中为了加速体系粒子间相互作用的力的计算而设置的一种数据结构。在分子动力学模拟中,粒子间相互作用力的计算最耗时间,而其中非键合作用力的计算又占主要部分。因此,如何有效地提高计算非键合作用力的效率成为提高分子动力学计算效率的关键因素。前面关于截断半径的介绍就是一种方法。虽然截断半径的设置可以大大减少需要计算相互作用力的原子对数目,但是在模拟中的每次迭代都要对全部粒子进行搜索,以判断每个粒子截断半径范围内的其它粒子。近邻列表的根本思想是在限定的局部空间而非整个模拟盒子范围内搜索可能产生相互作用的粒子对。在近邻列表法中,将与粒子i距离在Rm内的粒子都存储在该列表中,在模拟中作用力的计算仍考虑截断半径Rcut的范围。在一段模拟时间内,如果Rm范围外的粒子都不会进去Rcut的范围,则不需要更新近邻列表。Rm-Rcut的范围即是一个缓冲区域,即图2.2中的skin
region。在计算与粒子i之间的作用力时,该区域内的粒子实际上并不被考虑。简单说,这是一种用计算机内存空间换取CPU计算时间的方法。

加载中…