我在一個有限差分法工作的不規則柵格分配1,這是代碼的重要組成部分:錯誤:不兼容的行列0和在(1)
IMPLICIT DOUBLE PRECISION (A-Z)
REAL*16 IPSI,ICORR,POT(20000),VA(20000),delta1(20000),
$delta2(20000),R(20000),a,b,d
COMPLEX Y(20000),TY2(50000),Z(20000),PSI0(20000),RES,DPSI,C,
$CORR,OPK
DO I=3,NR-1
delta1=R(I)-R(I-1)
delta2=R(I+1)-R(I)
a=(2/(delta1*(delta1+delta2)))
b=(-2/(delta1*delta2))
d=(2/(delta2*(delta1+delta2)))
TY2(I)=((d*Z(I+1))+(b*Z(I))+(a*Z(I-1)))
ENDDO
當嘗試編譯我得到錯誤:在a,b,d和TY2的(1)賦值中不兼容的等級0和1。任何解決方案將不勝感激。謝謝!
如果你把這樣的代碼寫成新代碼,我強烈建議你改變你的風格。這不是1982年。你的指數隱含地加倍。你正在混合單複雜,雙重和四重實數。一塌糊塗。 –
我回到你原來的問題,現有的答案是基於這個問題。你的新代碼是完全不同的。如果您根據答案更改代碼並仍然存在問題,則應該提出一個新問題。然而,在問一個新問題之前,請確保使用'IMPLICIT NONE'。經過這麼長的代碼,你試圖在沒有「IMPLICIT NONE」的情況下發布是毫無價值的。這是**必不可少**。 –