FORTRAN 可分配数组。这段代码的数学表示是什么?
FORTRAN allocatable arrays. What is the mathematical representation of this segment of code?
这段代码发生了什么?
DOUBLE PRECISION, INTENT(IN) :: x(3,3), y(3,3)
DOUBLE PRECISION :: e(3,3)
do i=1,3
j=mod(i,3)+1
e(:,i)=x(:,j)-x(:,i)
done
简而言之,这需要每一列并从其后的一列中减去它(逐个元素),索引环绕数组。
即e
的第一列包含x
的第二列减去x
的第一列,e
的第二列包含x
的第三列减去e
的第二列和第三列包含 x
的第一列减去第三列。
这段代码发生了什么?
DOUBLE PRECISION, INTENT(IN) :: x(3,3), y(3,3)
DOUBLE PRECISION :: e(3,3)
do i=1,3
j=mod(i,3)+1
e(:,i)=x(:,j)-x(:,i)
done
简而言之,这需要每一列并从其后的一列中减去它(逐个元素),索引环绕数组。
即e
的第一列包含x
的第二列减去x
的第一列,e
的第二列包含x
的第三列减去e
的第二列和第三列包含 x
的第一列减去第三列。