VASP实用教程:pymatgen — 高通量材料计算最强大的python程序包之一

687 篇文章 18 订阅
175 篇文章 3 订阅

本文为由小强撰写的《VASP实用教程》第38篇,全系列约60篇,将在近期陆续更新。

Python Materials Genomics (pymatgen)是一个API包,可以连接materials project进行高通量计算,是进行高通量材料计算最强大的python程序包之一,是加州大学圣地亚哥雅各布斯工程学院的纳米工程教授Shyue Ping Ong和他的材料虚拟实验室(Materials Virtual Lab)团队开发并维护的程序。

我们主要会用到这个软件包的一些功能,如切割晶面,绘制能带和态密度图,生成吸附模型等。下面和大家简单介绍一下pymatgen。

e6f9bf6c97c3240881427163d96c8124.jpeg

  • 软件介绍

pymatgen是一个用于材料分析的强大的、开源的Python库,供用户免费使用。以下是一些主要功能:

  • 高度灵活的类,用于表示元素、位点、分子、结构对象;
  • 广泛的输入/输出支持,包括对VASP、ABINIT、CIF、Gaussian、XYZ和许多其他文件格式的支持;
  • 强大的分析工具,包括生成相图、Pourbaix图、扩散分析、反应等;
  • 电子结构分析,如态密度和能带结构;
  • 集成了Materials Project REST API, Crystallography Open Database。

pymatgen输出图形的例子:

394d08d6b6dd1ce4ab192f77fba3853d.jpeg

  • 安装pymatgen

可以通过两种方法来来安装pymatgen。

  • 通过conda安装(推荐)

如果您完全不熟悉Python和/或正在使用Windows,那么最简单的安装过程就是使用conda。如果已经安装了conda,那么可以使用以下命令从conda-forge channel安装pymatgen:

conda install --channel conda-forge pymatgen

请注意,您可能需要确保gcc的相对较新版本可用于编译pymatgen。你可以通过conda得到:

conda install gcc

pymatgen正在积极开发中,并定期添加新特性。要将pymatgen升级到最新版本,请使用以下命令:

conda upgrade pymatgen

  • 通过pip安装

Python Package Index(PyPI)上的版本始终是相对无bug的最新稳定版本。在任何系统上安装pymatgen的最简单方法是使用pip:

pip install pymatgen

需要确保安装了相对较新的gcc版本。

要通过pip升级pymatgen:

pip install --upgrade pymatgen

要使用一些功能的话仍然需要安装相应的软件包:

pmg config --install enumlib

pmg config --install bader

此外,如果要使用pymatgen生成VASP的POTCAR文件,需要下载vasp的赝势库并配置好路径,具体操作见pymatgen官网 Installation 部分。

  • pymatgen的典型工作流概述

下图是pymatgen的工作流程概述。典型的工作流程需要用户使用pymatgen的io包将来自不同来源(第一原理计算、晶体学和分子输入文件、材料项目等)的数据(结构、计算等)转换为Python对象,然后使用pymatgen的io包执行进一步的结构操作或分析。

cf79ac74283c79ffb0962b29e3c21167.jpeg
  • pmg-命令行工具

pymatgen附带了一组有用的脚本,这些脚本利用库来执行各种分析。当您通过典型的安装路径安装pymatgen时,这些默认安装到您的路径中。

pmg的典型用法是:

pmg {setup, config, analyze, plotdos, plotchgint, convert, symm, view, compare} additional_arguments

可以使用“pmg--help”或“pmg subcommand--help”来显示关于如何使用这些子命令的有用帮助消息。从v4.6.0开始,pmg还支持使用argcomplete的bash完成,这对于cli工具中提供的许多选项非常有用。要启用argcomplete,请pip安装argcomplete,然后按照argcomplete的说明启用全局完成,或者在.bash_profile中添加以下行(此方法通常更可靠):

eval "$(register-python-argcomplete pmg)"

b25df3c7520d6d144b7c3552b0d2221e.jpeg

以下是一些典型用法的示例:

如果在发表的成果中使用了pymatgen,请按照以下格式引用:

Shyue Ping Ong, William Davidson Richards, Anubhav Jain, Geoffroy Hautier, Michael Kocher, Shreyas Cholia, Dan Gunter, Vincent Chevrier, Kristin A. Persson, Gerbrand Ceder. Python Materials Genomics (pymatgen) : A Robust, Open-Source Python Library for Materials Analysis. Computational Materials Science, 2013, 68, 314–319. doi:10.1016/j.commatsci.2012.10.028.

网zhi资料:

pymatgen:ht0tps://pymatgen.org/


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值