32 N体压力计算的简单数据并行程序--Grav--I
函数Grav(X,M)
C 接受粒子X的位置和粒子M的大量数据
C 在Grav中反回加速度
C 使用完整的并行计算,忽略压力的反对称metry of force
integer, parameter :: N = 粒子数
real, parameter :: G = 重力常数(gravitational constant)
real array (1:3, 1:N) :: X,M,Grav
! 由于体j输入为(:i,j),计算体i的加速度
real array (1:3, 1:N,1:N) :: A, Xi, Xj, Ms, D, R
logical, array (1:3, 1:N,1:N) ::diag
integer i,j,k
! 对于N x N的范围的对角线,diag为真
forall ( k=1:3, i=1:N, j=1:N ) diag = (i.eq.j)
Copyright: NPACT