本文へ

コンパイル手順 

Go to English site

    このガイドではユーザーがLinuxに習熟していて fftw3ライブラリを使用できることを前提としています。fftw3はFPSEID21にて必須の数値計算ライブラリーです。 fftw3ライブラリをインストールする際にconfigure指定に-enable-openmpを付けておくことを強く推奨します。 ここでは、ユーザーの方に3つの実行モジュール ‘cg_exe’, ‘sd_exe’, ‘tddft_exe’を作成していただくようご案内いたします。

 実行モジュール‘cg_exe’は平面波基底の共役勾配法による対角化を利用した、DFTバンド計算を実行します。波動関数を記述するための平面波基底はG空間中のcompact-sphereです。
 一方、実行モジュール‘sd_exe’は最急降下法による対角化を利用したDFTバンド計算を実行します。波動関数を記述するための平面波基底はG空間中のフルグリッドです。フルグリッドにするのは、次に実行するTDDFT計算では鈴木-Trotter分解による時間発展計算を行うことが理由です。
  そして最後に実行モジュール‘tddft_exe’は電子-イオンのエーレンフェストダイナミクスを実行し、それに光電場の効果を取り入れることが可能です。

 まずこのWebサイトより"FPSEID21.tar.gz"ファイルをダウンロードして、利用者の計算機のホームディレクトリへ移してください。以下の説明ではLinux上のコマンドが灰色の背景色 で表示されます。

ファイルの移動が完了したらホームディレクトリーに行き次のようにタイプしてください
$ tar xvzf PSEID21.tar.gz
そうすると新しい"PSEID21"ディレクトリーがあなたのホームディレクトリーに現れます。そのディレクトリーへ移動して次のようにタイプしてください。
$ ls
そうすると以下の3個のサブディレクトリーが現れます。
$ cg_GGA_f_code  sd_GGA_f_compact_code  tddft_f_Avec_compact_multifft
各々のディレクトリーの中で実行モジュールを作成できます。
例えば以下の手順を行ってみてください
$ cd cg_GGA_f_code
$ chmod 744 make.sh
$ ./make.sh >& make.out
そうすると実行モジュール ‘cg_exe’が現れます。コンパイル時のトラブルに備えてなにかエラーメッセージが出ていないか'make.out'ファイルの中を確認することをお勧めします。この'make.sh'スクリプトは'ifort'コンパイラをある適当と思われるオプション付きで使用します。もし利用者の方が'ifort'コンパイラに精通しておられ実行性能を最大にしたいとお考えか、あるいはほかのコンパイラをご使用になりたい場合には'make.sh'スクリプトを編集してください。

このサイトの別のマニュアル'実行手順'と整合させるため、利用者のホームディレクトリーに'lm'ファイルを作成し、'cg_exe’を'lm'へ移動させることをお勧めします。

 同様に実行モジュール 'sd.exe'を以下の手順で作成してください。
$ cd ..
$ cd sd_GGA_f_comact_code
$ chmod 744 make.sh
$ ./make.sh >& make.out
そうすると実行モジュール'sd_exe'が作成されます。再び'sd_exe'を'lm'へ移動させることを推奨します。

最後に 'tddft_exe'を以下のディレクトリー上で得るのですが
$ cd ..
$cd tddft_f_Avec_compact_multifft
その前に'make.sh'を編集します。(このスクリプトはmpiifortコンパイラを使用します。)
このスクリプトの最初の行は以下のように記載してあります。
export DIR={your directory where the FFTW3 is installed}
この部分をユーザーの環境に合わせて書き直します。例えば '/home/appl/FFTW3'とか'/home/youraccount/appl/FFTW3'とかになるでしょう。そうして、書き直しにより指定されたFFTW3アプリのあるディレクトリーへ移動してみて、その下に'lib'と'inlucde'のサブディレクトリーがあることを確認してください。これらは、コンパイルオプション '-L{$DIR}/lib' と  '-I{$DIR}/include.'で参照されます。

'make.sh'の編集が済んだら以下を実行します。
$ chmod 744 make.sh
$ ./make.sh >& make.out
これで実行モジュール'tddft_exe'を得ますので'lm'へ移動させることを推奨します

 ここでコンパイル手順の説明をすべて終えました。続いて 実行手順へ移動してください。

▲ Top of the page