Il existe un logiciel de calcul basé sur les premiers principes appelé OpenMX. Le calcul des premiers principes est un cadre de calcul de l'état électronique à partir des informations de position d'un solide. Selon la théorie de la fonction générale de densité, les états électroniques de nombreux corps peuvent être obtenus en principe. Cependant, certaines personnes peuvent ne pas appeler cela un calcul basé sur les premiers principes (en particulier dans le domaine chimique) car le calcul réel utilise diverses approximations. Quoi qu'il en soit, je l'appellerai ici un logiciel de calcul des premiers principes.
http://www.openmx-square.org/openmx_man3.9jp/index.html
Quand j'ai essayé d'installer ce logiciel sur Ubuntu 18.04.5 LTS, j'ai été surpris, alors j'aimerais l'écrire ici pour partager la solution. Tout d'abord, veuillez noter que l'exemple de makefile dans le manuel japonais est incorrect pour gfortran.
[Note] Il est tombé lorsque j'ai fait deux parallèles avec mpirun, donc cela peut toujours être faux. Si quelqu'un sait, nous vous serions reconnaissants si vous pouviez coopérer.
Préparez une VirtualBox et conservez une trace de votre travail lorsque vous installez OpenMX sur un Ubuntu 18.04.5 LTS propre. Voici la commande exécutée dans le terminal.
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo sh -c 'echo deb https://apt.repos.intel.com/mkl all main > /etc/apt/sources.list.d/intel-mkl.list'
sudo apt-get update
sudo apt-get install intel-mkl-2020.0-088
sudo apt install gfortran
sudo apt install emacs
sudo apt install openmpi-doc openmpi-bin libopenmpi-dev
echo "source /opt/intel/mkl/bin/mklvars.sh intel64" | cat >> ~/.bashrc
sudo apt install libfftw3-3 libfftw3-dev libfftw3-doc
wget http://t-ozaki.issp.u-tokyo.ac.jp/openmx3.9.tar.gz
wget http://www.openmx-square.org/bugfixed/20Feb11/patch3.9.2.tar.gz
tar -xvf openmx3.9.tar.gz
cp ./patch3.9.2.tar.gz openmx3.9/source/
cd openmx3.9/source
tar zxvf patch3.9.2.tar.gz
mv kpoint.in ../work/
Qu'est-ce que tu as fait?
--Installation de MKL --Installez gfortran --Installez emacs --Installation d'Openmpi --Installation de FFTW3 --Télécharger OpenMX
est. Ensuite, jouez avec le Makefile.
emacs makefile &
makefile
MKLROOT = /opt/intel/mkl
CC = mpicc -O3 -fopenmp
FC = mpif90 -O3 -fopenmp
LIB = -lgfortran -lmpi_mpifh -L${MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_scalapack_lp64 -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lmkl_blacs_intelmpi_lp64 -lgomp -lpthread -lm -ldl -lfftw3
Ce n'est pas grave si vous le faites. Comme make n'est pas installé à ce stade,
sudo apt install make
Faire. Et
make all
Faire. Avec cette marque, il se passe quelque chose d'intéressant qui est unique à Ubuntu. Au milieu,
`sqrt'Référence indéfinie à
Il lance une erreur comme celle-ci et tombe. En regardant où il est tombé,
mpicc -O3 -fopenmp -I./elpa-2018.05.001 -g gcube2oned.c -o gcube2oned
Il est. L'erreur selon laquelle sqrt n'est pas défini se produit lorsque la bibliothèque mathématique n'est pas liée. Ainsi, vous pouvez ajouter l'option -lm, mais dans le cas d'Ubuntu, pour une raison quelconque, si vous n'ajoutez pas -lm à la fin, la même erreur se produira. Donc,
mpicc -O3 -fopenmp -I./elpa-2018.05.001 -g gcube2oned.c -o gcube2oned -lm
make all
Disons. Vous pouvez maintenant compiler cette partie correctement avec -lm et continuer avec make all.
Finalement,
make install
Faire.
Pour vérifier le fonctionnement
cd ../work
mpirun -np 1 openmx Methane.dat -nt 1 > met.std
cat met.std
Et
The calculation was normally finished.
Ce sera bien s'il y en a.
Recommended Posts