linux操作系統安裝phonopy


轉自https://zhuanlan.zhihu.com/p/26894911

linux下超詳細教程安裝phonopy

phonopy安裝:

第一步:准備文件##

  1. python-3.6 (https://www.python.org/downloads/source/)

  2. numpy-1.11.2 (Obtaining NumPy & SciPy libraries)

  3. lxml-3.6.4 (Processing XML and HTML with Python)

  4. matplotlib-1.5.0 (Browse Files at SourceForge.net)

  5. PyYAML-3.12 (PyYAML)

  6. phonopy-1.11.0 (phonopy)

Note:前5個包也可以用yum 或 apt-get 安裝##

第二步:安裝Python-3.6.0b3.tar.xz##

$tar xvf Python-3.6.0b3.tar.xz
$cd Python-3.6
$./configure --prefix= /home/…/phonopy/Python-3.6/build 
				#在python解壓目錄事先新建build目錄,省略部分根據每個人電腦而定
$make
$make install

設置環境變量###

$vi ~/.bashrc
在.bashrc文件末尾加入:

$export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/…/phonopy/Python-3.6/build/lib
$export PATH=$PATH:/home/…/phonopy/Python-3.6/build/bin
$export PATH=/home/…/phonopy/Python-3.6:$PATH
$source ~/.bashrc

測試###

命令行輸入python3.6,若成功會出現(避免和系統自帶/usr/bin混淆)

Python 3.6.0b3 (default, Nov 6 2016, 02:12:05)
[GCC 4.9.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

第三步:安裝numpy-1.11.2.tar.gz##

$tar xzvf numpy-1.11.2.tar.gz
$cd numpy-1.11.2
$cp site.cfg.example site.cfg
$vi site.cfg:

修改文件中如下所示部分:

# [mkl]
# library_dirs = /opt/intel/mkl/10.0.1.014/lib/32/
# lapack_libs = mkl_lapack
# mkl_libs = mkl, guide

注意:mkl前面的注釋一定要去掉,此外,左端不能留空格。

修改后的如下(根據實際情況修改):

[mkl]
library_dirs = /opt/intel/composer_xe_2013_sp1.2.144/mkl/lib/intel64
include_dirs = /opt/intel/composer_xe_2013_sp1.2.144/mkl/include
lapack_libs = mkl_lapack95_lp64
mkl_libs = mkl_def,mkl_intel_lp64,mkl_intel_thread,mkl_core,guide,iomp5

(最后一行逗號為英文輸入法下面的)

$python3.6 setup.py build --help-fcompiler #查看下可用的編譯器,結果發現--fcompiler=intelem可用
$python3.6 setup.py build --fcompiler=intelem
$python3.6 setup.py install --home=Python3.6解壓目錄/pymodule

(pymodule是自己在python解壓目錄下新建的numpy安裝目錄)

$vi ~/.bashrc 添加下面內容:

PYTHONPATH="${PYTHONPATH}:/home/…/phonopy/Python3.6/pymodule/lib/python"
export PYTHONPATH
export PATH=/home/…/phonopy/Python-3.6/pymodule/bin:$PATH
export PYTHONPATH=/home/…/phonopy/Python-3.6/pymodule/lib/python

$source ~/.bashrc

讓python知道到哪里去找模塊

測試python是否能夠調用numpy:###

$cd .. (退出 numpy的目錄)

這一步一定要做,不然會出錯, ImportError: Error importing numpy.

$python3.6 進入python界面

>>>import numpy

執行 numpy 看是否出錯
>>>print numpy.version.version
查看numpy的版本

第四步:安裝lxml-3.6.4.tgz##

$tar xzvf lxml-3.6.4.tgz
$cd lxml-3.6.4
$vi ~/.bashrc   #添加下面內容:

PYTHONPATH="${PYTHONPATH}:/home/…/phonopy/Python3.6/lxml/lib/python"
(lxml是自己在python解壓目錄下新建的lxml安裝目錄)

$source ~/.bashrc
$python3.6 setup.py install --home=Python3.6解壓目錄/lxml

第五步:安裝matplotlib-1.5.0.tar.gz##

$tar xzvf matplotlib-1.5.0.tar.gz
$cd matplotlib-1.5.0
$vi ~/.bashrc 

添加下面內容:

PYTHONPATH="${PYTHONPATH}:/home/…/phonopy/Python3.6/matplotlib /lib/python"

(matplotlib是自己在python解壓目錄下新建的matplotlib安裝目錄)

$source ~/.bashrc
$python3.6 setup.py install --home=Python3.6解壓目錄/ matplotlib

第六步:安裝PyYAML-3.12.tar.gz##

$tar xzvf PyYAML-3.12.tar.gz
$cd PyYAML-3.12
$vi ~/.bashrc 

添加下面內容:

PYTHONPATH="${PYTHONPATH}:/home/…/phonopy/Python3.6/pyyaml/lib/python"

(pyyaml是自己在python解壓目錄下新建的pyyaml安裝目錄)

$source ~/.bashrc
$python3.6 setup.py test
$python3.6 setup.py install --home=Python3.6解壓目錄/pyyaml

第七步:安裝phonopy-1.11.0.tar.gz##

$tar xzvf phonopy-1.11.0.tar.gz
$cd phonopy-1.11.0
$python3.6 setup.py install

把/home/…/phonopy/phonopy-1.11.0/build/scripts-3.6的phonopy拷貝到usr/bin

測試###

在phonopy目錄下命令行輸入phonopy:

結果顯示:

結果顯示:

參考資料:##

  1. linux ubuntu 下 phonopy 的安裝步驟

  2. Linux下安裝Phonopy_雁過留痕Neo_新浪博客

  3. linux系統vasp5.2+phonopy安裝 - 第一原理 - 小木蟲 - 學術 科研 互動社區

  4. 小木蟲論壇

  5. linux下超詳細安裝phonopy教程-第一性原理-計算化學公社

appendix:PHONOPY的安裝##

參考資料https://atztogo.github.io/phonopy/
phonopy下載目錄https://pypi.python.org/pypi/phonopy

把/home/…/phonopy/phonopy-1.11.0/build/scripts-3.6的phonopy拷貝到usr/bin

安裝依賴###

  • Python and its header files
  • numpy
  • matplotlib
  • python-yaml (pyyaml)
  • python-h5py (h5py)

前四個可通過yum包管理器安裝

#yum provides python-dev python-numpy  python-matplotlib python-yaml
#yum install python-dev python-numpy  python-matplotlib python-yaml

CentOS 7 下通過epel擴展源才能安裝h5py

#yum -y install epel-release
#yum provides h5py
#yum install ....

另外pip也可以通過epel安裝
#yum provides pip

CentOS7 yum安裝matplotlib時需要安裝大量的依賴包,對於老系統,大量更新會出現問題。換成pip安裝
$sudo pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple
清華大學開源鏡像站pip目錄(校園網):https://pypi.tuna.tsinghua.edu.cn/simple

安裝Phonopy##

  1. Download the source code at
    https://pypi.python.org/pypi/phonopy
    and extract it:
$ tar xvfz phonopy-1.11.12.31.tar.gz
$ cd phonopy-1.11.12.31

The other option is using git to clone the phonopy repository from github:

$ git clone https://github.com/atztogo/phonopy.git
$ cd phonopy
  1. Assuming the installation location is those shown in the step 3, set $PATH and $PYTHONPATH:
export PYTHONPATH=~/.local/lib:$PYTHONPATH
export PYTH=~/.local/bin:$PATH

in your .bashrc (or maybe .bash_profile), .zshenv, or other script for the other shells.
在安裝前先設置路徑變量PYTHONPATH與PATH
3. Set up C-libraries for python C-API and python codes. This can be done as follows:
Run setup.py script:

$ python setup.py install --user

Watching carefully where the phonopy commands and library are installed. Those locations can be ~/.local/bin and ~/.local/lib directories, respectively.

如果要自定義安裝目錄

$ python setup.py install --home=...

測試###

在phonopy目錄下命令行輸入phonopy:

結果顯示:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM