Python Materials Genomics (pymatgen)是进行高通量材料计算最强大的python程序包之一,pymatgen诞生于2011年,由加州大学圣地亚哥雅各布斯工程学院的纳米工程教授Shyue Ping Ong和他的材料虚拟实验室(Materials Virtual Lab)团队开发维护且目前他们仍是该项目的负责人。
pymatgen的功能十分强大,从建模到各种DFT计算软件输入、输出文件处理,可以说你想要的功能他都有,而且官方文档详细的令人发指,只要有一些python基础就能看懂以及使用。pymatgen官网 github仓库地址
看一下官网介绍的pymatgen的功能:
- 各种高度灵活的类,用于表示Element,Site,Molecule,Structure等。
- 广泛的输入/输出支持,包括对VASP、ABINIT、CIF,Gaussian,XYZ和许多其他文件格式的支持。
- 强大的分析工具,包括生成相图,Pourbaix图,扩散分析,反应等。
- 电子结构分析,例如状态密度和能带结构。
- 集成了Materials Project REST API,Crystalography Open Database等。
pymatgen的工作流程:
Overview of a typical workflow for pymatgen安装pymatgen库
建议大家安装在Linux系统下,pymatgen的一些依赖库主要在linux下开发,在Windows上很容易出问题。此外很多VASP数据处理软件也是在linux下开发的,如 p4vasp、vaspkit等。
pymatgen提供两种安装方法:通过conda和pip,如果是在超算等集群系统上安装,建议使用conda安装。
1. 通过conda安装pymatgen
conda是一个强大的软件包和环境管理工具,如果你的电脑上没有可以先安装一个Miniconda或者Anaconda。conda默认源在国外,用起来比较慢甚至需要科学上网工具才能用,因此建议换成中科大源,具体方法可以百度一下,网上教程很多,这里就不浪费篇幅了。
安装完conda后,就可以开始使用conda安装pymatgen了:
可以给pymatgen创建一个专门的conda环境:
$ conda create -n my_pymatgen python # 创建虚拟环境my_pymatgen
$ conda activate my_pymatgen # 激活虚拟环境
$ conda install --channel conda-forge pymatgen
$ conda install gcc # 安装gcc编译器用来编译pymatgen
pymatgen版本更迭很快,基本上每个月都会更新,而且有时更新后会不支持之前的代码,可以使用下面的命令跟新:
$ conda upgrade pymatgen
安装依赖库
如果要使用pymatgen的枚举功能和电荷分析功能,需要安装相应的库:
$ pmg config --install enumlib
$ pmg config --install bader
enumlib是一个使用Fortran开发的软件包,可以实现枚举功能,因此需要Fortran编译器,如果上面的命令安装失败,你可能需要安装一个Fortran编译器,推荐安装gfortran,一个跨平台、免费的Fortran编译器:
$ sudo apt-get update
$ sudo apt-get install gfortran
2. 使用pip安装pymatgen
pip安装比较简单,只需要一行命令:
$ pip install pymatgen
更新的话使用命令:
$ pip install --upgrade pymatgen
要使用一些功能的话仍然需要安装相应的软件包:
$ pmg config --install enumlib
$ pmg config --install bader
此外,如果要使用pymatgen生成VASP的POTCAR文件,需要下载vasp的赝势库并配置好路径,具体操作见pymatgen官网 Installation 部分。
网友评论