スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


ecaljのインストール(Ubuntu + gfortran)

ecaljは鳥取大学の小谷先生が開発しているGW近似を用いた第一原理計算コードです。
ecaljのインストール方法は、ecaljのgithubのページにまとめられています。
今回は、その中でubuntuでgfortranを使ってコンパイルする方法に絞って紹介します。
大まかにいうと、以下の4つのステップです。

  1. 各種ツールのインストール
  2. ecaljのダウンロード
  3. InstallAll.gfortranの編集
  4. InstallAll.gfortranの実行



各種ツールのインストール


ecaljをインストール、実行するために必要なプログラムをインストールします。Ubuntuを使う限り、すべてsudo apt-get install なんちゃらでインストールできてしまいます。
sudo apt-get install git
sudo apt-get install gitk
sudo apt-get install gfortran
sudo apt-get install openmpi-bin libopenmpi-dev
sudo apt-get install libfftw3-3
sudo apt-get install libblas3gf
sudo apt-get install liblapack3gf
sudo apt-get install csh bash tcsh gawk

既にインストールされているものもあるかもしれませんが、気にせずにすべて実行してしまいます。

ecaljのダウンロード


上記のツールのインストールの段階でgitをインストールしてあれば、以下のコマンドを実行することによりecaljのフォルダがホームディレクトリいかに作成されます。

git clone https://github.com/tkotani/ecalj.git


InstallAll.gfortranの編集


ecaljディレクトリに移動すると、それぞれのコンパイラに対応したインストール用のシェルスクリプトが見つかります。
今回はgfortranを利用するので InstallAll.gfortran を使います。基本的にはそのまま使えば良いはずなのですが、私の環境では以下のエラーメッセージが出てインストールに失敗するようです。

gfortran: エラー: /usr/lib/x86_64-linux-gnu/libfftw3.so.3: そのようなファイルやディレクトリはありません


そこでlibfftw3.so.3がどこにあるのか探します。

whereis libfftw3.so.3


私の環境では、以下の結果が返ってきました。
libfftw3.so: /usr/lib/libfftw3.so.3 /usr/lib/libfftw3.so

そこで InstallAll.gfortran を以下のように編集します。
MATH='/usr/lib/libfftw3.so.3 /usr/lib/liblapack.so.3gf /usr/lib/libblas.so.3gf'


InstallAll.gfortranの実行


最後にInstallAll.gfortranを実行します。端末に以下のように入力します。

./InstallAll.gfortran


ずらずらと結果が表示され、インストールが完了すると、次々とテスト計算を行います。
テスト計算は、それなりに長い時間(数時間程度)がかかるかもしれません。

2018年4月7日追記


Ubuntu 16.04で以下の2つのパッケージのインストールをしようとすると見つからないといわれる。
sudo apt-get install libblas3gf
sudo apt-get install liblapack3gf

代わりに以下のようにした。
sudo apt-get install libblas3
sudo apt-get install liblapack3

これに伴ってInstallAll.gfortranも編集する必要がある。
MATH='/usr/lib/x86_64-linux-gnu/libfftw3.so.3 /usr/lib/liblapack.so.3 /usr/lib/libblas.so.3'
#MATH='/usr/lib/x86_64-linux-gnu/libfftw3.so.3 /usr/lib/liblapack.so.3gf /usr/lib/libblas.so.3gf'


関連エントリ




参考URL




参考文献/使用機器




フィードバック



にほんブログ村 その他趣味ブログ 電子工作へ

 ↑ 電子工作ブログランキング参加中です。1クリックお願いします。


コメント・トラックバックも歓迎です。 ↓      


 ↓ この記事が面白かった方は「拍手」をお願いします。


tag: ecalj gfortran ubuntu 

comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性CPAPICOPアンプecalj状態密度モンテカルロ解析常微分方程式トランジスタodeDOSインターフェースPDS5022定電流スイッチング回路分散関係半導体シェルスクリプトレベルシフト乱数HP6632A可変抵抗トランジスタ技術R6452AI2C温度解析ブレッドボードバンドギャップ確率論反強磁性セミナーバンド構造数値積分偏微分方程式非線形方程式ソルバ熱設計絶縁三端子レギュレータISO-I2CA/DコンバータシュミットトリガフォトカプラカオスPWscfGW近似LM358LEDマフィンティン半径発振回路USB数値微分TL431PC817Cサーボアナログスイッチ直流動作点解析補間カレントミラー74HC4053bzqltyチョッパアンプFFT2ちゃんねる開発環境量子力学単振り子電子負荷VESTAQuantumESPRESSO標準ロジックパラメトリック解析ブラべ格子イジング模型アセンブラLDA基本並進ベクトルBSchSMPTLP621失敗談六方最密充填構造コバルト位相図QSGWGGAスイッチト・キャパシタewidth状態方程式VCAキュリー温度繰り返し最適化仮想結晶近似不規則合金熱伝導gfortran相対論抵抗FETMaximaQuantum_ESPRESSOcygwinランダムウォークラプラス方程式スピン軌道相互作用スレーターポーリング曲線マントルシュレディンガー方程式ZnO自動計測QNAP固有値問題ダイヤモンドデータロガー井戸型ポテンシャルTLP552CIFxcrysdenゼーベック係数熱力学条件分岐MCU最小値UPS格子比熱最大値ガイガー管平均場近似過渡解析Writer509スーパーセルFXA-7020ZR差し込みグラフ第一原理計算テスタ起電力OpenMP三角波ubuntuLM555NE555ブラウン運動詰め回路ハーフメタルawkfsolveUbuntuフェルミ面TLP521トランスMAS830LPGACK1026OPA2277フィルタトレーナーバトルEAGLEノコギリ波負帰還安定性ナイキスト線図MBEP-10LMC6622SC1815CapSenseAACircuitPIC16F785入出力固定スピンモーメントFSMTeX結晶磁気異方性全エネルギーc/a合金multiplotgnuplot非線型方程式ソルバL10構造正規分布等高線ジバニャン方程式ヒストグラム確率論初期値interp1fcc面心立方構造ウィグナーザイツ胞半金属デバイ模型磁気モーメント電荷密度重積分SIC不純物問題擬ポテンシャル状態図cif2cellPWgui二相共存ウルツ鉱構造edeltquantumESPRESSOフォノンリジッドバンド模型スワップ領域BaO岩塩構造ルチル構造マテリアルデザインspecx.fフラクタルマンデルブロ集合キーボードRealforceクーロン散乱三次元疎行列縮退化学反応関数フィッティング最小二乗法Excel直流解析PCTS-110TS-112日本語パラメータ・モデル等価回路モデル文字列ポケモンGO熱拡散方程式HiLAPW両対数グラフ片対数グラフ陰解法Crank-Nicolson法ifort境界条件連立一次方程式グラフの分割軸ラベルヒストグラム不規則局所モーメントスーパーリーグ円周率Gimp凡例線種シンボルトラックボール

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。