我有一个大数组,数组太大了,我必须使用“可分配”并在 fortran 中分配。例如,
complex(8),allocatalbe :: E0(:, :, :)
allocate(E0(1000,1000,1000))
我需要在我们的代码中将数组的形式从转换E0(1000,1000,1000)
为E1(1000*1000,1000)
,即将一个三维数组E0(M,N,L
) 转换为其对应的二维E1(M*N,L)
。但是,我不能使用这些语句:Equivalence (E0,E1)
因为它是“可分配的”。E1(M*N,L)
由于内存有限,我不喜欢定义或分配另一个数组。
有没有人有一些方法来实现:Equivalence(E0,E1)
?