Nbody程序是模拟一个多体系统的演化过程,该系统中的每个个体(Body)都会与周围的其他物体发生非接触力学吸引/排斥作用。通过nBody仿真,可以获得大量长程力作用的系统,比如小到范德华力作用下的原子/分子群或者大到万有引力作用下的星系之类各色场合的模拟结果。对于气流等稀薄流体的模拟同样可以归约成NBody仿真过程并予以解决。
NBody 将场景设定为大量粒子在引力这一种基本长程力下高速运动作用形成的多体问题,尽管粒子间不考虑接触力学传递,NBody 模拟需要大量应用到矩阵操作等大量常见的数学方法。在此基础上,由于长程力一次影响的对象远较流体模拟中弹性碰撞传递所能够影响的对象要多,其背后所对应的线程量非常庞大,因此NBody 对于硬件构架的并行度有极高的要求。透过NBody 的测试,可以了解到被测对象的吞吐能力、对基本条件分支的应对能力、并行处理能力以及对矩阵等常规数学方法的处理能力。
Nbody是在DirectX11下,使用C++ AMP开发而成的。">Nbody程序是模拟一个多体系统的演化过程,该系统中的每个个体(Body)都会与周围的其他物体发生非接触力学吸引/排斥作用。通过nBody仿真,可以获得大量长程力作用的系统,比如小到范德华力作用下的原子/分子群或者大到万? [更多]
1