イントロダクション

まずは始めましょう

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_???"は、各物理課題の初期設定等が含まれており、"???"に、物理現象の名前が付けられています。