【发布时间】:2015-07-21 06:52:10
【问题描述】:
我想通过一个矩阵并检查它的任何块是否与预定义的单元相同。这是我的代码。 'sd5' 是 2 x 2 的预定义单位。
ALLOCATE (fList((n-1)**2,3))
fList = 0
p = 1
DO i = 1, n-1, 1
DO j = 1, n-1, 1
IF (TEST(i:i+1, j:j+1) == sd5) THEN
fList(p,1:3) = (i, j+1, 101) ! 101 should be replaced by submatrix number
END IF
p = p+1
END DO
END DO
问题似乎出在IF 语句中,因为TEST(i:i+1, j:j+1) == sd5 中返回了四个逻辑语句。我收到此错误:
Error: IF clause at (1) requires a scalar LOGICAL expression
我收到另一个错误:
fList(p,1:3) = (i, j+1, 101) ! 101 should be replaced by sub matrix number
1
Error: Expected PARAMETER symbol in complex constant at (1)
我不明白这个错误,因为所有变量都是我定义的整数。
【问题讨论】: