多数の複雑な方程式を扱う必要がある場合、または高速な計算が必要な場合、科学は非常に困難になります。しかし、近年、これらの問題は、コンピューターのおかげで、より具体的には、計算を行う際により良い理解と経験をもたらすことに焦点を当てたオープンソースプロジェクトのおかげで大幅に減少しました。
物理学の学生として、私はいくつかの特殊なツールを使用しており、それらのほとんどはオープンソースです。今日は、そのうちの1つであるElkコードを共有します。これは、固体物理学に焦点を当てたオープンソースプロジェクトです。
Ubuntuリポジトリで利用できますが、明示的にインストールして構成する必要のある依存関係がいくつかあります。
Elkコードとは何ですか?
一言で言えば、その公式ページのおかげで、Elkコードは全電子全ポテンシャル線形化拡張平面波コード 密度汎関数理論の分野で強力な役割を果たしています。
これは、ジオメトリの最適化などの多くの高度な機能を備えた結晶性固体の特性を決定することです。 、 2Dおよび3Dプロット、 など
UbuntuにIntelFortranコンパイラをインストールする
使い始めるのは少し難しいかもしれませんが、重要なのは、Elkコードをインストールする前にシステムに数学ライブラリとコンパイラをインストールすることです。
このプロセスでは、GNUFortranやIntelFortranなどのコンパイラを使用できますが、コード内の問題のほとんどはIntel Fortranコンパイラで解決されるため、IntelFortranコンパイラをインストールすることをお勧めします。
インテルFortranコンパイラーは2つの部分に分かれています:
- 最初のInteloneAPIBase Toolkitは、数学ライブラリを提供します。
- 2番目のInteloneAPIHPC Toolkitは、Elkコードを正しく計算するためのFortranライブラリを提供します。
Intel oneAPIBaseToolkitの入手
はじめましょう! Ubuntuでターミナルを開き、次のコマンドを使用して必要なパーツをダウンロードします。
wget https://registrationcenter-download.intel.com/akdlm/irc_nas/17977/l_BaseKit_p_2021.3.0.3219.sh
次のようになります:
その後、同じ端末で次のコマンドを入力します:
sudo bash l_BaseKit_p_2021.3.0.3219.sh
新しいウィンドウが開く前に、ターミナルでこのようなものを見ていることになります。心配しないでください。それはプロセスの一部です。
GUIインターフェイスが開きます:
[続行]ボタンをクリックすると、Intel oneAPIBaseToolkitのダウンロードが開始されます。
ダウンロードが完了すると、次のウィンドウが表示されます。
このAPIに正確に含まれているものが表示されます。含まれているすべてのパッケージをインストールすることを強くお勧めします。ライセンス契約の条件に同意し、[続行]ボタンを押します。
その後、次のページは一種の検証ページです。何かが足りない場合は、警告が表示されます。
たとえば、この場合、GPUドライバーに関する警告が表示されましたが、この製品は引き続きCPUで使用できるため、スキップしてプロセスを続行しましょう。
したがって、右矢印ボタンをクリックするだけです。
このパートでは、Eclipse IDEをインストールしていて、ライブラリをそれに統合する場合は、最初のIDEを選択します。それ以外の場合は、統合をスキップして右矢印ボタンをクリックします。完了すると、完全にインストールする前に最後の部分を確認できます。
インテルソフトウェア改善プログラムを読み、情報の収集に選択を入力して、「インストール」ボタンを押します。最後に、インストールが開始されます。
インストールの期間は、インターネット接続の速度によって異なります。辛抱強く、Intelにタスクを完了させてください。
タスクが完了すると、次のように表示されます。
これは、Intel oneAPIBaseToolkitのインストールが完了したことを意味します。それでは、次のものから始めましょう。
InteloneAPIHPCツールキットのインストール
正直なところ、これはほぼ同じプロセスなので、少し速くなります。
次のコマンドを使用して始めましょう:
wget https://registrationcenter-download.intel.com/akdlm/irc_nas/17912/l_HPCKit_p_2021.3.0.3230.sh
上記のプロセスが終了したら、次のコマンドを使用します:
sudo bash l_HPCKit_p_2021.3.0.3230.sh
その後、前に見たようにインストールプロセスが開始されます。
続行をクリックすると、ダウンロードが開始されます:
完了すると(このダウンロードは非常に高速です)、次のウィンドウがデスクに表示されます。利用規約に同意して、[続行]をクリックします。
以前と同じように、ライブラリとIDEの統合はスキップしましょう。
最後に、情報を収集するための選択肢を入力し、[インストール]ボタンをクリックします。
ライブラリのダウンロードとシステムへのインストールが開始されます。このプロセスが完了するまでお待ちください。ダウンロードの速度はインターネット接続によって異なるため、しばらくお待ちください。
プロセスが終了したら、[完了]ボタンをクリックします。
そして、それは実質的に完全なElkコードのインストールと機能の鍵です。これらの2つのライブラリは、正しく実行するために不可欠です。
コンパイラの構成
最後に、次のコマンドラインを実行して、ターミナル内でこれら2つのライブラリを起動します。
source /opt/intel/oneapi/setvars.sh
次に、このディレクトリに移動します:
cd /opt/intel/oneapi/mkl/2021.3.0/interfaces
このフォルダ内には他のフォルダがありますが、重要なものは次のとおりです。
- fftw2xc
- fftw2x_cdft
- fftw2xf
- fftw3xc
- fftw3x_cdft
- fftw3xf
- mklmpi
上記のすべてのフォルダ内で、次のコマンドを実行する必要があります:
make libintel64
重要なことの1つは、これからは、Elkコードを使用するたびに、これら2つのライブラリを機能させるために、端末で次の行を実行する必要があるということです。
source /opt/intel/oneapi/setvars.sh
これらの手順を前に行うと、最も重要な手順であるLinuxディストリビューションへのElkコードのインストールの準備が整います。
UbuntuへのElkコードのインストール
もちろん、最新バージョンがSourceForgeページにあるElkコードのダウンロードを始めましょう。
ダウンロードしたフォルダを解凍します。
それでは、Wannier90の最新の安定バージョンライブラリをダウンロードしましょう。これは、材料の高度な電子特性を高効率かつ正確に計算するのに役立ちます。
.tar.gzファイルをダウンロードしたら、ファイルアプリに配置し、ダブルクリックしてコンテンツを抽出します。
抽出したフォルダに移動して、ターミナルで開きます。
次のコマンドを1つずつ入力します:
source /opt/intel/oneapi/setvars.sh
cp ./config/make.inc.ifort ./make.inc
make
make lib
cp libwannier.a ../elk-7.2.42/src/
cd ../
終了します。端末で次のコマンドを1つずつ入力し続けます。
wget http://www.tddft.org/programs/libxc/down.php?file=5.1.4/libxc-5.1.4.tar.gz
次に、これらのコマンドを1つずつ実行します。
mv down.php?file=5.1.4%2Flibxc-5.1.4.tar.gz libxc-5.1.4.tar.gz
tar -zxvf libxc-5.1.4.tar.gz
cd libxc-5.1.4
./configure CC=icc FC=ifort
make
make check
sudo make install
cp /opt/etsf/lib/libxc.a ../elk-7.2.42/src/
cp /opt/etsf/lib/libxcf90.a ../elk-7.2.42/src/
プロセスの最後に、端末に次のようなものが表示されます。
ターミナルを閉じて、最後に最後の部分を実行します。次に、抽出した前のElkコードフォルダーに直接移動します。そこに到達したら、ターミナルでフォルダを開きます。
そして、次の2つのコマンドを入力します。
source /opt/intel/oneapi/setvars.sh
cp /opt/intel/oneapi/mkl/2021.3.0/include/mkl_dfti.f90 src/
もうすぐです。セットアップを開始します:
./setup
端末は次のようになります:
インテルFortranコンパイラーをインストールしたので、1番を書きます。
ターミナルを閉じないでください。ファイルアプリのElkコードフォルダに戻り、「make.inc」というファイルを開きます。
含まれているすべての単語を消去し、代わりに次のように入力します:
MAKE = make
F90 = mpiifort
F90_OPTS = -O3 -ip -xHost -qopenmp
F77 = mpiifort
F77_OPTS = -O3 -ip -xHost -qopenmp
AR = xiar
LIB_SYS =
SRC_OMP =
SRC_MPI =
LIB_LPK = -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
#LIB_LPK = -L/opt/intel/oneapi/mkl/2021.3.0/lib/intel64 -lmkl_cdft_core -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl
SRC_MKL =
LIB_libxc = libxcf90.a libxc.a
SRC_libxc = libxcf90.f90 libxcifc.f90
SRC_FFT = mkl_dfti.f90 zfftifc_mkl.f90
LIB_W90 = libwannier.a
SRC_W90S =
SRC_OBLAS = oblas_stub.f90
SRC_BLIS = blis_stub.f90
ファイルを保存して、ターミナルに戻ります。最後に、次のように入力します:
make
そして大丈夫!この最後の手順が完了すると、LinuxシステムにElkコードがインストールされます。
素晴らしい!この最後のステップは少し退屈ですが、リラックスしてください。それがあなたにできることのすべてでした。これで、最終的にすべてのプロセスが完了しました。おめでとうございます!
個人的な結論
このプロセスは少し網羅的かもしれませんが、ソフトウェアの正しい機能のためにすべてのステップが非常に重要です。あなたが科学者であるか、このトピックについて知りたいだけの場合は、この投稿が非常に役立つことを願っています。
一方、Elkコードが計算にどのように役立つかについて詳しく知りたい場合は、Elkコードを使用して状態方程式を取得する方法についてのすばらしいビデオがあります。頑張ってください!
元の記事
Debian 11 /Ubuntu20.04にMattermostデスクトップクライアントをインストールする方法
Ubuntu20.04にNtopngネットワーク監視ツールをインストールする方法
Libreoffice Writerでマラヤーラム語を使用する方法は?