利用Conda安装Phonopy声子谱的方法(操作简易,15分钟从0到1)
做真实的自己
21 人赞同了该文章
一、前言
Phonopy是一款由Python编译,基于第一性原理进行声子计算的开源软件。要安装phonopy,并不是直接安装这一个软件即可,而是需要做以下准备(如官网所示):
- 1个集成开发环境:Python;
- 4个Python第三方开源扩展(库):
- numpy,一个开源的数值计算扩展;
- Matplotlib,Matplotlib 是一个 Python 的 2D绘图扩展;
- PyYAML,解析yaml文本的扩展。
- h5py,一个存放数据的扩展。
常规的安装方法,需要手动依照一定顺序安装,如这篇文章所示。手动的常规安装门槛相对较高,加上集成intel性能加成“黑科技”Math Kernel Library (Intel® MKL) 也需要手动配置,每个系统环境又有差异,造成遵循以往教程不一定能成功,并且浪费较多时间。
这里介绍一种新方法,利用免费发布的分发版Python进行安装。推荐Anaconda和Intel® Distribution for Python。
- Anaconda是一个用于科学计算的Python发行版,支持 Linux、Mac、Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。
- Intel® Distribution for Python是一个由Intel®发布,用于科学计算的Python发行版,其大致与Anaconda相同(预集成第三方扩展相对少一些),并且已经集成设置好了Intel® Performance Libraries加速,包括Intel® Math Kernel Library (Intel® MKL)、Intel® Threading Building Blocks (Intel®TBB)和Intel® Data Analytics Acceleration Library (Intel® DAAL)。
两者的安装都十分友好,并且已经集成绝大多数常用第三方扩展,即便目前没有的,也能通过包管理功能下载(更新)。
二、分发版 Python的安装
分发版Python的下载(Anaconda、Intel® Distribution for Python)和安装都很简易,每一步都有提示,也有官方说明(Anaconda、Intel® Distribution for Python)和很多第三方说明,在此不再赘述。
- tips:在某些情况下,当tar包中包含了bin文件时,使用tftp上传后解压会出现“tar: Skipping to next header”的提示,解决方法有2种,解压后上传或者使用Bin命令传输。
需要注意的是,对于Linux系统,安装好后,实际上就是在主目录下多了个文件夹,需要设置PATH:
- 对于Anaconda,输入:
[yourname@localhost ~]$ echo 'export PATH="~/anaconda3/bin:$PATH"' >> ~/.bashrc
[yourname@localhost ~]$ source ~/.bashrc
以上“~/anaconda3/bin:$PATH”根据用户具体目录路径设置。
- 对于Intel® Distribution for Python,输入:
[yourname@localhost ~]$ echo 'export PATH="~/intel/intelpython3/bin:$PATH"' >> ~/.bashrc
[yourname@localhost ~]$ source ~/.bashrc
以上“~/intel/intelpython3/bin:$PATH”根据用户具体目录路径设置。
完成配置后,可以通过“which conda”和“conda –version”检查是否配置好,也可以输入python检验是否正确:
[yourname@localhost ~]$ which conda
~/anaconda3/bin/conda
[yourname@localhost ~]$ conda --version
conda 4.3.21
[yourname@localhost ~]$ python
Python 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:09:58)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
按“Ctrl+D”退出。
三、扩展的更新和phonopy的安装
为了让插件都安装好以及保持为最新版本,输入以下代码进行扩展更新和下载:
[yourname@localhost ~]$ conda install numpy scipy h5py pyyaml matplotlib
注:如果服务器与外网未接通,此更新不可用,不过通常来说最新版本的conda附带扩展都适用于phonopy。
对于phonopy,首先我们需要在官网下载,本文所用版本是phonopy-1.11.12.92。
- 解压
[yourname@localhost ~]$ tar -xzvf phonopy-1.11.12.92.tar.gz
- 进入解压文件夹并安装phonopy
[yourname@localhost ~]$ cd phonopy-1.11.12.92
[yourname@localhost ~]$ python setup.py install
- 验证是否安装成功,成功时为如下所示:
[yourname@localhost ~]$ phonopy
_
_ __ | |__ ___ _ __ ___ _ __ _ _
| '_ \| '_ \ / _ \| '_ \ / _ \ | '_ \| | | |
| |_) | | | | (_) | | | | (_) || |_) | |_| |
| .__/|_| |_|\___/|_| |_|\___(_) .__/ \__, |
|_| |_| |___/
1.11.12-r92
Crystal structure file of POSCAR (default file name) could not be found.
___ _ __ _ __ ___ _ __
/ _ \ '__| '__/ _ \| '__|
| __/ | | | | (_) | |
\___|_| |_| \___/|_|