Phonopy 计算声子谱

上传人:碎****木 文档编号:220860973 上传时间:2021-12-09 格式:DOCX 页数:4 大小:175.64KB
返回 下载 相关 举报
Phonopy 计算声子谱_第1页
第1页 / 共4页
Phonopy 计算声子谱_第2页
第2页 / 共4页
Phonopy 计算声子谱_第3页
第3页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Phonopy 计算声子谱》由会员分享,可在线阅读,更多相关《Phonopy 计算声子谱(4页珍藏版)》请在金锄头文库上搜索。

1、Phonopy 计算声子谱(2010-02-07 11:03)注明:numpy , numpy-dev matplotlib python-lxml python-yaml 其中 numpy 和 matplotlib 在安装vasputil(为了装 ase)已经安装过了。所有本人先找到 python-lxml-1.3.4-1.el5.rf.x86_64.rpm python-yaml-3.05-1.el5.rf.noarch.rpm 安装,装好以后便安装 phonopy,报错找不到 numpy 下的arrayobject.h,原来是找不到 numpy 的include,export CPPFL

2、AGS=-I/usr/lib64/python2.4/site-packages/numpy/core/include 顺便指定一下 lib export LDFLAGS=-L/usr/lib64/python2.4/site-packages/numpy/lib然后找到了,在编译 phonopy: python setup.py install -home,=有.一些警告,可能是没有安装 numpy-dev 的缘故,在网络上搜numpy-dev 包,居然没有。只有numpy-1.2.1-2.el5.src.rpm。郁闷,我的numpy 已经关联不能删除了,那还是用 src 包产生一个 num

3、py-devel 先。编译 src 时说少了 atlas-devel-3.8.3-1.el5.x86_64.rpm,还好有的下。装了atlas-devel-3.8.3-1.el5.x86_64.rpm 后,再: rpm -i numpy-1.2.1-2.el5.src.rpm 然后到/usr/src/redhat/SPECSrpmbuild bb numpy.spec 以为可以得到numpy-devel,到/usr/src/redhat/RPMS/x86_64 却没有。哎!可是到官网仔细看看却是不需要numpy-devel, 看来下来的介绍这点上有误,其余的都是正确的。 分类:Vasp 标签:

4、 - Phonopy 计算声子谱October 7, 2009Tags: Phonopy, Python1. Phonopy 简介Phonopy 是一个由 python 实现的的晶体声子分析程序。它是目前提供了 VASP 的 Wien2k 的接口用来计算原子受力。它的主要功能有:计算声子色散谱;计算声子态密度,包括分立态密度;声子热力学性质,包括自由能,热容量,焓;Phonopy 通过力常数的方法计算声子谱。力常数由计算原子在超晶胞中被移动后的受力得到(Parlinsk-Li-Kawasoe 方法)。同样类型的程序还有 phon, fropho, phonon. 其中 phonon 是商业软件

5、,卖的很贵,fropho 和phonopy 的代码其实都是来自于 phon, fropho 是为了代替 phon 而开发的,目的是为了使用 phon 更方便,phon 和 fropho 主要都是由 fortran 开发的,而现在 fropho 已经停止开发,由 python 开发的 phonopy 代替了 fropho, phonopy 在使用上更为方便,在计算量上更为减少。因为 phon, fropho 和 phonon 在移动原子位置时都是一次只移动一个原子的一个方向,而 phonopy 则可以一次移动一个原子的多个方向,所以和其它程序相比, phonopy 最多可以减少 2/3 的计算量

6、。2. Phonopy 的安装phonopy 主要由 python 开发,其中的找晶体空间群功能是由 C 语言(spglib)实现。在安装 phonopy时需要安装以下它所依赖的软件包:Python 的开发包numpy , numpy-dev matplotlibpython-lxml python-yaml如果是使用的 Ubuntu/Debian 系统只需:sudo aptitude install python-dev python-numpy python-matplotlib python-tk python-lxml python-yaml如果是 OpenSUSE 则可以去 http

7、:/software.opensuse.org/search 搜索下载安装相关软件包。去 下载 phonopy 的最新软件包.解压后进入 软件包的 c 目录,supython setup.py install编译安装所需要的 python 模块。将 PATH/phonopy-0.6.1 $PATH 里:比如: export PATH=/opt/phonopy-0.6.1:$PATH3. Phonopy 的简单使用下面我以 BC5 为例说明如何和 VASP 做接口计算声子谱:a, 建立超胞准备 POSCAR 文件单胞和原胞都可以准备 INPHON 文件ATOM_NAME = B C NDIM =

8、 2 2 1 LSUPER = .TRUE.简单说明:第一行为原子符号名 B C ,注意要和 POSCAR 中的顺序相同。第二行为要建的超胞的维数。第三行是指要建立移动原子的 POSCAR.然后输入命令:phonopy.py就会输出 DISP, POSCAR-* (001, 002, 003, )在本例出会输出 12 个 POSCAR-*, 依次为 POSCAR-001,POSCAR-012b, 计算力常数将这些 POSCAR-* 做 SCF, 将输出文件 vasprun.xml 保存下来。我的计算脚本为:#!/bin/shfor a in 01 02 03 04 05 06 07 08 09

9、 10 11 12docp POSCAR-0$a POSCAR/opt/intel/impi/3.1/bin64/mpiexec -n 8 /share/apps/vasp/bin/vaspmpi_mkl10_O1 out.vasp 2err.vasp &waitcp vasprun.xml vasprun.xml-0$a done我的 INCAR 为:SYSTEM = BC5PREC = Accurate ENCUT = 520 EDIFF = 1e-5 NSW = 0ISMEAR = 0SIGMA = 0.05 LCHARG = FALSE LWAVE = FALSE这样计算结束后会得到

10、vasprun.xml-001, , vasprun.xml-012 然后,执行命令:phonopy.py -f vasprun.xml-*就会得到文件 FORCES c, 得到声子谱有了文件 FORCES 后就可以计算声子谱了,这时将ATOM_NAME = B C NDIM = 2 2 1ND = 7NPOINTS = 51QI = 0.0 0.0 0.5 0.0 0.5 0.5 0.0 0.5 0.0 0.0INPHON 改为以下内容:0.0 0.0 0.5 0.5 0.0 0.50.0 0.00.5 0.0 0.5QF = 0.0 0.5 0.5 0.0 0.5 0.0 0.0 0.0

11、0.0 0.50.5 0.0 0.5 0.0 0.0 0.50.0 0.50.5 0.5 0.5简单说明:ND 是指有几条路径;NPOINTS 是指在每两个高对称性点间插入多少个点,包括边界;QI 和 QF 给出路径的起始和结束点。其中我用的 Q 点顺序为:0.0 0.0 0.5 Z0.00.50.5T0.00.50.0Y0.00.00.0G0.50.50.0S0.50.00.0X0.50.00.5U0.50.50.5R执行 命令phonopy.py -p即可画出声子谱, 如果执行 phonopy.py -p -s 即可将声子谱曲线保存为 PDF 文件。其中 声子谱的数据是以 yaml 格式保

12、存在 band.yaml 里的。如果你想用 Origin, Qtiplot, Xmgrace 等工具画图的话,可以用我写的 python 脚本,readband.py (http:/www.zhuli.name/file/readband.py) 将 band.yaml 转换一下,输出文件有两个 band.dat, qpoint.dat.其中 band.dat 是声子谱数据, qpoint.dat 是高对称性点的数据。以上只是 phonopy 的其本用法,如果要计算声子态度度和热力学性质的话可以参考 上的文档,还是比较简单的。我的计算结果:0Filed under:First Princple, Physics, linux by admin

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 教育/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号