①アーカイブ作成
  .tarというファイルで作成するのが一般的。

  アーカイブの作成
  tar -cvf hoge.tar(作成するファイル名) XXXX.grd XXXX..sh(アーカイブするファイル) …など

  アーカイブの展開
  tar -xvf hoge.tar(展開するファイル名)

 -以降のオプションに関しては他ウェブページを参照。

②ファイルの圧縮
  .gzと.Zの形式がある。

 ◆.gz形式に圧縮
  gzip hoge.tar(圧縮するファイル名)
  もしくは
  gzip -r hoge.tar(ディレクトリ名)

 ◆.Z形式に圧縮
  compress hoge.tar(ファイル名)
  もしくは
  compress -r hoge.tar(ディレクトリ名)

 ◆展開
  .gz形式→ gunzip hoge.gz
  .Z形式→ uncompress hoge.Z

③一発でアーカイブ作成と圧縮を行う
 ・・・といっても、tarとgzipをパイプでつなぐだけだけど。

 tar -cvf - hoge.grd(アーカイブするファイル) | gzip -c > hoge.tar.gz

 gzipの-cオプションは標準出力のオプション。
今さらですが、トラブル対処の基本を書いておきます。

コンパイル時に『-check -traceback』を入れる。
例) ifort -check -traceback~
これを入れると、詳しいログが出る。
もしプログラムの処理が止まっても、ログを見て原因を解明することが可能。
止まった場合は、どのプログラムの何行目で止まったのかログに出るので、
止まった箇所を見て原因を考えて見ましょう。
単に場所の書き間違えだったりするものです。


また、シミュレーションする前に、設定を良く考えましょう。
シミュレーションが終わってから、「見たい要素を出力し忘れた!」なんてことのないように。
parmカードの設定”NAMMSW”や”NAMKDD”、”NAMNST”あたりは要注意。
NAMKDDの設定によっては、後でお絵かきできる要素が限られてしまいます。
GrADSで2つのctlファイルAとBを開いたとする。
Aの要素とBの要素を同じ図に描きたいときは

ga> d rh.1 →rh.1は1つ目に開いたctlファイル中の要素rhを描くってこと
ga> d qr.2 →qr.2は2つ目に開いたctlファイル中の要素qrを描く

とすればよい。
「set dfile 1」や「set dfile 2」で使用するctlファイルを変えられるが
明らかに rh.1 などとする方が便利。

ちなみに、ctlファイルを開く順としては、鉛直層の数やTsizeが多いものをはじめに開くようにする。

つまりNHMのoutputの地形gradszs.ctlとgrads3d.ctlを併用したい場合は
はじめに open grads3d.ctl
その後に open gradszs.ctl
とする。
*地形を描く時の注意
  ただ「d zs.2」とするのではなく、「d zs.2(t=1,z=1)」とすること。
  そうしないとエラーで描けない。
スパコンでの実行時エラーについて。

ログ中に「Invalid operation~」などのエラーが出た場合。

①エラーが出たプログラムと、プログラム中のどこでエラーが出たのか確認。

②エラー箇所がどのように最適化されているか確認
  →Module/Bin/_fcst_nfx.cmp/~.L などのファイルを見ることで確認可能。
  ちなみに.Lのファイルはコンパイルする際に「include.mk」というファイル内で
  オプション「-R5」を書いてやると作成される。

③ベクトル化されたところ:V、ベクトル化されないループ:+、
  並列化されたところ:Pなどを確認。

④エラー箇所がベクトル化・並列化されていたら、
  とりあえずベクトル化・並列化しないで計算をやり直す。
  自動ベクトル化する/しない !cdir vector/novector
  自動並列化する/しない   !cdir concur/noconcur
  ↑これらはループの前などにおく。

①jmanhm-rel-02-00.tgzをgenにfrontからコピー

(scp jmanhm-rel-02-00.tgz (利用者番号)@gen:)



②NHMを展開。その際、コマンドは、
tar zxvf jmanhm-rel-02-00.tgz
オプションの所にハイフンをつけてはいけない。



③config/mri/config.sx7(沢田さんによる修正済)を
tsugita or takuyaのとこからgenにコピー
Mk/fcst_nfxもコピー



④genにて
sh configure -c config/mri/config.sx7
make libfakempi.a
make fcst_nfx

mpi関連で文句を言われるので
"Nhm/Module/Src/fakempi/mpif.h" を
"Nhm/Module/Src/JMANHM/"の中にコピーして、もう一度

"make libfakempi.a"

"make fcst_nfx"

これでfcst_nfx(実行ファイル)の作成完了。


◆補足

jmanhm-rel-02-00.tgz をコンパイルする際、
1つ1つのコンパイルが終わって、リンクするときに

mpicomm.oに関連するエラーが出るかも。
もしエラーが出たら、

"Nhm/Module/Src/fakempi/mpif.h" を
"Nhm/Module/Src/JMANHM/"の中にコピーして、

もう一度"make fcst_nfx"を行う。
これでfcst_nfxができるはず。



⑤初期値・境界値と放射のファイルを
実行シェルfcst_XXXX.shの中を参照してgenにコピー

*実行シェル中、"fcst_nfx"を実行する前の部分に、以下の一行追加。

F_RECLUNIT=BYTE; export F_RECLUNIT

意味は出力するバイナリの単位をバイト(BYTE)にするということ。
これをしないと、ワード(WORD)単位となるので、

異様な量のデータが出力されてしまう。



⑥実行
qsub -q p8 fcst_XXXX.sh など

(p16とかp32もある→使いたいcpu数に応じて変更)


qstat ←ジョブ待ち状況、投入したジョブの状況を表示

(-Q をつけると全体のジョブの状況表示)


kill 12345(job number) ←ジョブの強制終了

qdel [-k] リクエストID ←リクエストの取り消し

(-kあり:ジョブの状態に関わらず取り消し、-kなし:実行待ちのジョブのみ取り消し)



⑦計算結果は、置いておかないようにする。

  ファイル使用量のチェックが入るのは土曜の朝4時くらいという噂。

  ちなみに、scpを使う場合typhoonを通じてのみコピー可(計算機の設定による。2007.9現在)

  例) scp output hoge@typhoon.~jp:/mnt/~

  ↑typoon経由でmntにファイルを移動