# HMR Electric Field Model インストールドキュメント # 2000/09/09 Manabu YAMADA 1 HMR Electric Field Model 詳細は以下のサイトを参照. ttp://nssdc.gsfc.nasa.gov/space/model/ionos/heppner_maynard_rich.html 2 プログラムのダウンロード 以下のサイトより Fortran プログラムを取得 ftp://nssdc.gsfc.nasa.gov/pub/models/ionospheric/convection_Efield/HMR/ 以下のファイルを入手 - aareadme.doc :(MS Word 形式) - hm_main.for - hm_model.for - hm_subr.for - hmcoef.dat - tape1.dat 3 HMR を使う前に… ○g77 での動作確認 $ g77 hm_main.for hm_subr.for $ g77 hm_model.for => エラーが沢山出る.... (T_T) エラーのパターンは以下の3種類 1. サポートしていない命令だぞ!! 1-1 エラー出力例) hm_main.for:129: type *,'ans:',ans Unsupported VXT statement at (^) 1-2 対処) (未定) type って命令は何をするためのもの?? 2. 外部組み込み関数が参照できないよ. 2-1 エラー出力例) hm_model.for:679: warning: SINA = SIND(ANGLE) ^ Reference to unimplemented intrinsic `SIND' at (^) (assumed EXTERNAL) 2-2 対処) (未定) SIND, COSD ってどうすれば使える…?? 3. コモン文のバイト数があってないぞ. 3-1 エラー出力例) COMMON/PLATS/THET0,THETC,REGMX,REGMN 1 hm_model.for:1207: (continued): COMMON/PLATS/THET0 2 Common block `plats' is 16 bytes in length at (1) but 4 bytes at (2) hm_model.for:1165: warning: 3-2 対処) 上記例の場合 hm_model.for の 1207 行目を COMMON/PLATS/THET0,THETC,REGMX,REGMN に修正. ○Fort (Compaq Fortran Compiler) での動作確認 $ fort hm_main.for hm_subr.for $ fort hm_model.for g77 で出力されたエラーは全くなく, サクッとコンパイルできる. ただし以下の様な警告がでる. f90: Warning: hm_model.for, line 1981: The return value of this FUNCTION has not been defined. [EPSTIN] FUNCTION EPSTIN(CLAT,RD,HAT,S1,S2,XMIN,XMAX) ---------------^ 関数 EPSTIN は以下のようになっていた. ===================================================================== C* FUNCTION EPSTIN(CLAT,RD,HAT,S1,S2,XMIN,XMAX) C C EVALUATE EPSTEIN FUNCTION D=CLAT-HAT EX=EXP(D) XL=(1.-S1/S2*EX)/(1.-S1/S2) XL=ALOG(XL) EP=RD+S1*D+(S2-S1)*XL C IF (CLAT.LT.HAT.AND.EP.LT.XMIN) EP=XMIN-.000001 IF (CLAT.GT.HAT.AND.EP.LT.XMAX) EP=XMAX-.000001 C EPST=EP RETURN C** ===================================================================== 1996 行 を以下のように変更すべきと思われる. 誤?) EPST=EP 修正> EPSTIN=EP