并行计算入门应用 MPI/OpenMP 于简单 NBody/多体问题
发布时间
阅读量:
阅读量
串行代码
首先是对基础的NBody程序进行编写,其中设定所有质点的质量保持一致。初始速度设定为零,而初始位置则按照均匀分布的方式进行安排。
大致结构如下(尺寸为16 * 16):

通过这种方式,能够将代码中的循环逻辑进行提炼,其中N代表系统中质点的总数(如上图所示,具体数值为256),在每次执行update操作时,依次对每个质点的受力情况(即加速度)、运动速度以及空间位置进行计算。
void update() {
for (int i = 0; i < N; i++)
force(i);
for (int i = 0; i < N; i++)
velocity(i);
for (int i = 0; i < N; i++)
position(i);
}
为了实现数据的存储需求,有必要引入特定的数据结构,用于分别记录质
全部评论 (0)
还没有任何评论哟~
