尝试从 xyz 数据文件创建数组。数据文件的排列方式使每个原子的 x,y,z 位于新行上,我希望数组反映这一点。然后使用此数组查找列表中每个原子与所有其他原子的距离。
为此,已复制数组,以便 atom1 和 atom2 应与输入文件相同。
长度只是列表中的原子数。写语句: WRITE(20,'(3F12.9)') atom1 实际上给出了想要的矩阵,但是当我尝试找到单个元素时,它们都错了!
任何帮助将非常感激!多谢你们。
DOUBLE PRECISION, DIMENSION(:,:), ALLOCATABLE ::atom1,atom2'
ALLOCATE(atom1(length,3),atom2(length,3))
READ(10,*) ((atom1(i,j), i=1,length), j=1,3)
atom2=atom1
distn=0
distc=0
DO n=1,length
x1=atom1(n,1)
y1=atom1(n,2) !1st atom
z1=atom1(n,3)
DO m=1,length
x2=atom2(m,1)
y2=atom2(m,2) !2nd atom
z2=atom2(m,3)`