我在高性能集群中从事理论化学工作,通常涉及分子动力学模拟.我的工作涉及的问题之一涉及N维(通常N = 2-5)超球的静态场,测试粒子可能碰撞.我正在寻找优化(读取:大修)我用来表示球体领域的数据结构,这样我就可以进行快速碰撞检测.目前,我使用一个死的简单指针数组指向N元结构(中心的每个坐标加倍)和最近邻居列表.我听说过oct和quad-trees,但是没有找到关于它们如何工作的明确解释,如何有效地实现它,或者如何用一个快速碰撞检测.鉴于我的模拟大小,内存(几乎)没有对象,但周期是.