イントロダクション¶
まずは始めましょう¶
pCANS はGitでバージョン管理されています。GitはWindows, linux, Mac OSに対応したバージョン管理ソフトウェアです。Gitのインストールは、FedoraなどRedhat系の場合、
$ yum install git
UbuntuなどDebian系の場合、
$ sudo apt-get install git
で簡単にできます。Gitのツールを利用してコードのインストール、アップデートを行います。
まずは、 pCANS のレポジトリを以下のようにダウンロードします。
$ git clone https://www.github.com/ymatumot/pcans
pCANS は開発途上なため、不定期に更新されます。最新版を反映させるためには、上記で指定した directory-name 内で、
$ git pull origin master
とすれば、最新版の差分情報が反映されます。 この際、自分で修正を加えたファイルと更新ファイルが重なる場合はマージ(merge)する必要が出てきます。またその結果、衝突(conflict)する可能性もあります。 その場合は出力に従って、テキストエディタ等で該当個所を編集してください。
注釈
gitをインストールできる環境にない場合は、最新版が https://github.com/ymatumot/pcans/archive/master.zip よりダウンロードできます。
動作環境¶
以下のソフトウェア・ライブラリがシステムにインストールされている必要があります。
Git。レポジトリのダウンロード、最新版のアップデートを行うのに必要です(上述)。
MPI(Message Passing Interface)。2次元以上のコードはMPI並列化バージョンのみです。
Fortranコンパイラ。ソースコードはFortran 90で書かれています。デフォルトはgfortranです。
IDL(Interactive Data Language)。可視化ルーチンはIDLで用意されています。
wcコマンド。データを読み込むIDLのプロシージャが必要としています。Linux/Mac-OSでは標準インストールされていると思います。Windows(MS-DOS)の場合、 http://www.vector.co.jp/soft/dos/util/se004157.html からインストールできます。
OSはLinuxで動作確認済み。上記ソフト・ライブラリがインストールされていれば、Windows、Mac-OSでもたぶん可だと思います。
不具合等についての問い合わせは https://github.com/ymatumot/pcans/issues まで。
環境変数¶
環境変数$PCANS_DIRを pCANS がインストールされたディレクトリの絶対パスとし、以下のように設定します(~/pcansにインストールした場合)。
bashの場合、
export PCANS_DIR = ~/pcans
tcshの場合、
setenv PCANS_DIR ~/pcans
解析・可視化環境¶
IDLによる解析・可視化プロシージャがあらかじめ用意されています。$PCANS_DIR/idl内には共通プロシージャ、各課題内には専用のプロシージャがあります。使うためには、環境変数$IDL_STARTUPに$PCANS_DIR/idl/init.proを設定します。
bashの場合、
export IDL_STARTUP = $PCANS_DIR/idl/init.pro
tcshの場合、
setenv IDL_STARTUP $PCANS_DIR/idl/init.pro
$PCANS_DIR/idl/init.pro内には、pathの設定、IDL内の環境の設定等が含まれており、IDL起動時に自動的に設定されます。各自の好みに合わせて修正してください。
さらなる詳細は 本テキストidlのページ を参照ください。
全体の構成¶
pCANS では、1次元及び2次元のコードが用意されています(2018年8月現在)。1次元コードは、シリアル版、MPIによる並列版が用意され、2次元コードはMPI並列版のみとなっています。$PCANS_DIR内は、以下のようにディレクトリとファイルで構成されています。

"idl/"内には、IDLによる可視化ルーチンが含まれています。各課題で使用する可視化のための共通プロシージャが含まれています。
"em1d/"、"em2d_mpi/"はそれぞれ、1次元シリアル版、2次元MPI並列化版コードが含まれます。
各コードのディレクトリ内には、コンパイル用のMakefile、コンパイル時の環境変数を設定したMakefile_incが用意されています。各自の環境によってコンパイラ、コンパイラオプションを指定したい場合は、Makefile_inc内に設定されている、"$FC"と"$FFLAGS"を変更してください。"common/"にはPICコードの共通エンジンが収められています。"md_???"は、各物理課題の初期設定等が含まれており、"???"に、物理現象の名前が付けられています。