0

誰かが同様の質問をしたことを知っています。エラーは、配列をスカラーに割り当てようとしたことが原因である可能性があるとのことでした。言われたとおりに何度もプログラムをチェックしましたが、実際にはプログラムに問題はありません。

具体的なエラー メッセージは次のとおりです。

D:\src\fortran\Kramers\kramers.f90(54) : エラー: 配列式の形状が一致しません。[Y2] y2(1)=sqrt(2.0d0*T)*[h*オメガ(2)-h1*オメガ(3)+h1*h*オメガ(4)-h1*h1*オメガ(6)+& ----------------^
D:\src\fortran\Kramers\kramers.f90(65) : エラー: 配列式の形状が一致しません。[Y2] y2(2)=sqrt(2.0d0*T)*[オメガ(1)-h*オメガ(2)+h*h*オメガ(3)-h1*h*オメガ(4)+h1*h1 *omega(6)+& ----------------^
df.exe の実行中にエラーが発生しました。

kramers.obj - 2 つのエラー、0 の警告

これは、エラーを引き起こす私のプログラムの一部です:

real*8 :: y(2),y2(2),omega(10),V4

real*8 :: h,h1,T,ngt

real*8,external :: V,V1,V2,V3

y2(1) = sqrt(2.0d0*T)*[h*omega(2) - h1*omega(3) + h1*h*omega(4) - h1*h1*omega(6) + &
    (-h1*h*omega(4) + 2.0d0*h1*h1*omega(6))*V2(y(1)) - h1*h1*y(2)*omega(10)*V3(y(1))]

y2(2) = sqrt(2.0d0*T)*[omega(1) - h*omega(2) + h*h*omega(3) - h1*h*omega(4) + h1*h1*omega(6) + &
    (-h*h*omega(3) + 2*h1*h*omega(4) - 3*h1*h1*omega(6))*V2(y(1)) + &
    (-h1*h*y(2)*omega(5) + h1*h1*y(2)*omega(7) + h1*h1*y(2)*omega(8) + h1*h1*y(2)*omega(10))*V3(y(1)) + &
    h1*h1*V2(y(1))*V2(y(1))*omega(6) + h1*h1*V1(y(1))*V3(y(1))*omega(8) - 0.5d0*h1*h1*V4*y(2)*y(2)] - h1*h*T*V3(y(1))*ngt
4

1 に答える 1

4

[]配列コンストラクターを示す角括弧を使用します。通常のものを使用する必要があります()

于 2012-10-18T14:34:58.197 に答える