大きな配列があります。配列が非常に大きいため、「割り当て可能」を使用して fortran で割り当てる必要があります。例えば、
complex(8),allocatalbe :: E0(:, :, :)
allocate(E0(1000,1000,1000))
私たちのコードでは、配列の形式を から に変換する必要がありますE0(1000,1000,1000)
。E1(1000*1000,1000)
つまり、3 次元配列E0(M,N,L
) を対応する 2次元 に変換しE1(M*N,L)
ます。ただし、Equivalence (E0,E1)
「割り当て可能」であるため、ステートメントを使用できません。E1(M*N,L)
メモリが限られているなどの理由で、別の配列を定義したり割り当てたりするのは好きではありません。
誰かが達成する方法を持っていますEquivalence(E0,E1)
か?