- ベストアンサー
宣言文のimplicit none宣言方法
- 宣言文のimplicit noneでの宣言方法について教えてください。
- implicit noneを使って宣言文を宣言する方法を教えてください。
- 宣言文をimplicit noneを使用して宣言する方法を教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
なんというか, 「最初から Fortran をやりなおせ」と言いたい.... 配列の上下界は integer じゃないといかんのよ....
その他の回答 (3)
- Tacosan
- ベストアンサー率23% (3656/15482)
暗黙の規則を再確認することを強くお勧めします. なんで maxX とか maxY を real*8 で宣言するかなぁ....
補足
real*8はintegerを包括してると考えているので、こっちの方が融通きくのかなと思い、宣言してます。 厳格に、整数だから、integerで宣言しとくのがベターなんでしょうか?
- asuncion
- ベストアンサー率33% (2127/6289)
> INTRINSIC mod > > エラーで > Error: The intrinsic data types of the arguments must be the same. [MOD] mod関数を呼び出しているところのソースを見せてください。 Fortranであることを、できれば明記していただきたいところです。
- Tacosan
- ベストアンサー率23% (3656/15482)
最も簡単なのは, parameter 文の前にでも適切な型宣言を入れておくこと.
補足
現在、なんとかここまでいきました。 implicit none real*8 pi,dx,dy,dt,Te,gamma,alpha,a_const,valK_const real*8 e_bar,theta0,delta,j_num,val_tau,nwrite real*8 nstepT,nfile,ix,iy real*8 ic,istep real*8 maxX,maxY,xS,xE,yS,yE,numX,numY,nstep * parameter (maxX=500,maxY=500) parameter (xS=1.0d0,xE=1.0d0) parameter (yS=0.0d0,yE=1.0d0) parameter (numX=400,numY=400) parameter (nstepT=5000) parameter (nfile=200) * real*8 Tarr_M(0:maxX,0:maxY), Tarr_P(0:maxX,0:maxY) real*8 Earr_M(0:maxX,0:maxY),EParr_M(0:maxX,0:maxY) real*8 Parr_M(0:maxX,0:maxY), Parr_P(0:maxX,0:maxY) real*8 Vect_P(0:maxX,0:maxY,1:3) * real*8 P_work(0:maxY),Q_work(0:maxY),Tarr_W(0:maxX,0:maxY) * character*15 ofile LOGICAL*1 character*1 ihun,isen,iten,ione INTRINSIC mod エラーで Error: The intrinsic data types of the arguments must be the same. [MOD] と出てきます。
お礼
そうなんすか!? テキストにそんなこと書いてなかったです。 ありがとうございます♪