教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 幼儿教育 >

VASP+FROPHO 计算晶体材料声子谱及热性能

来源:网络收集 时间:2026-09-03
导读: VASP+FROPHO 计算晶体材料声子谱及热性能 梁超平(liangchaoping@http://www.77cn.com.cn), May. 2010 作者简介:梁超平,中南大学粉末冶金研究院07级硕士研究生,师从龚浩然教授,主要研究方向为计算材料学算法编程及材料跨尺度计算模拟。 目 录 一、 二、

VASP+FROPHO 计算晶体材料声子谱及热性能

梁超平(liangchaoping@http://www.77cn.com.cn), May. 2010

作者简介:梁超平,中南大学粉末冶金研究院07级硕士研究生,师从龚浩然教授,主要研究方向为计算材料学算法编程及材料跨尺度计算模拟。

目 录

一、

二、

编译fropho.....................................................................................................1 一个简单的算例:BCC Zr的声子谱以及声子态密度.................................2

简 介

Fropho是一个使用Fortran语言编写用于实现晶体声子分析程序。它目前提供了 VASP 、 Wien2K 的接口用来计算原子受力,通过分析原子受力得到力常数矩阵。从而根据力常数矩阵进行材料的声子谱及热性能分析。其主要功能有:

计算声子色散谱;

计算声子态密度,包括分立态密度;

声子热力学性质,包括自由能,热容量,焓。

接下来简要介绍程序的编译,通过一个简单的算例来介绍它的使用方法。

一、 编译fropho

1. 编译Fropho需要lapack数学库文件。因此首先从http://www.77cn.com.cn 下载lapack-3.2.gz;

2. 使用sftp上传至远程服务器;

3. 解压缩lapack-3.2.gz;

@node64:~> tar -zxvf lapack-3.2.gz

4. 进入lapack-3.2,将make.inc.example 拷贝成make.inc

@node64:~/lapack-3.2> cp make.inc.example make.inc

5. 修改make.inc和Makefile

将make.inc第22和26行改为ifort或者pgf90编译器,这样运算速度更快,这里的编译器要跟后面编译fropho一致。然后将Makefile第11行注释掉,打开第12行

6. 使用make lib 安装数学库,转好后在当前目录产生lapack_LINUX.a、blas_LINUX.a和tmglib_LINUX.a。

@node64:~/lapack-3.2> make lib

7. 安装fropho

从http://www.77cn.com.cn/ 下载fropho-1.3.3.tar.gz

8. 解压缩;

@node64:~/fropho> tar -zxvf fropho-1.3.3.tar.gz

9. 进入fropho-1.3.3并configure设置好相应的编译器和链接数学库,链接这两个数学库的顺序不能错,不然不能使用;

@node64:~/fropho/fropho-1.3.3> ./configure --prefix=where do you want to install fropho FC=ifort LIBS= "/your lapack-3.2 direction/lapack-3.2/liblapack.a your lapack-3.2 direction/lapack-3.2/libblas.a"

10. 然后make;

@node64:~/fropho/fropho-1.3.3>make

@node64:~/fropho/fropho-1.3.3>make install

11. 编译rubytools,进入rubyTools目录;

@node64:~/fropho/fropho-1.3.3/rubyTools> ./makeTools.sh

12. 大功告成,安装圆满完成了。

二、 一个简单的算例:BCC Zr的声子谱以及声子态密度

1. 首先准备好优化的Zr POSCAR文件,以及INPHON。

INPHON的内容为(注:由于程序编写原因INPHON的格式必须严格固定,=号两端必须有空格)

NDIM = 3 3 3 #超晶胞尺寸

LSUPER = .TRUE. #控制是否产生超晶胞

2. 使用fropho创建超晶胞,这里建的是3x3x3的超晶胞。

@node64:~/test> fropho < INPHON

使用命令后目录中有DISP, SPOSCAR和syminfo.yaml文件

3. 使用rubytools中mkDisp.rb建立位移POSCAR

@node64:~/test> ~/fropho/fropho-1.3.3/rubyTools/mkDisp.rb DISP SPOSCAR

目录中出现位移POSCAR以POSCAR001 POSCAR002 …… POSCAR0xx表序号,这里是最简单的例子所以只需要一个位移POSCAR001就够了。

4. 运行VASP,建一个001或者其他文件夹将POSCAR001拷到此文件夹并改名为POSCAR,进行计算。

INCAR设置如下:

PREC = Accurate

IBRION = -1

NSW = 0

ENCUT = 400

EDIFF = 1.0e-08

ISMEAR = 0; SIGMA = 0.01

IALGO = 38

LREAL = .FALSE.

ADDGRID = .TRUE.

KPOINTS 文件由于原子数多,不宜设置太多,不然计算非常非常慢,可根据精度要求定;

K-POINTS

Monkhorst Pack

4 4 4

0 0 0

5. 拷贝vasp.pbs脚本到当前目录,然后使用pbs脚步并行提交任务(脚本范本见集群手册);

@node64:~/test >cp /public/others/PBS/vasp.pbs .

@node64:~/test >qsub vasp.pbs

6. 计算完后将vasprun.xml拷贝到INPHON目录并改名为vasprun.xml-001 如有多个POSCAR则依POSCAR的顺序拷贝成vasprun.xml-001 vasprun.xml-002 ……;

7. 使用rubytools中mkDisp.rb建立力常数矩阵;

@node64:~/test > ~/fropho/fropho-1.3.3/rubyTools/mkForces.rb

DISP SPOSCAR vasprun.xml-00* > FORCES

8. 修改INPHON计算声子谱;

INPHON内容为

NDIM = 3 3 3 #超晶胞的维数

MASS = 91.224 #元素的质量,如果有多个则按POSCAR中顺序依次给出

ATOM_NAME = Zr #元素的名字,可不设

ND = 5 #高对称k点坐标个数

NPOINTS = 500 #两个高对称k点间去多少间隔

QI = 0.0 0.0 0.5 0.25 0.25 0.25 0.0 0.0 0.0 0.0 0.0 0.5 0.5 -0.5 0.5 #起始k点坐标

QF = 0.25 0.25 0.25 0.0 0.0 0.0 0.0 0.0 0.5 0.5 -0.5 0.5 0.0 0.0 0.0 #终了k点坐标

EIGENVECTORS = .TRUE. #控制是否计算本征函数

9. 使用fropho获得声子本征值;

@node64:~/test> fropho < INPHON

此时目录下会有相应的文件EIGENVALUES BAND EIGENVECTORS QPOINTS frophorun.yaml等文件

10. 使用rubytools中yaml2band.rb获得声子谱;--factor=15.633是选择THz为单位

@node64:~/test> ~/fropho/fropho-1.3.3/rubyTools/yaml2band.rb --factor=15.633 frophorun.yaml > band.dat

11. 将band.dat使用sftp下载至本地使用gnuplot或者origin做图,图如下:

High Performance Computing Platform of CSU

中南大学高性能计算平台用户经验交流

6

4

Phonon frequency (THz)

2

0

-2

N

P

Gam

N

H

Gam

12.修改 INPHON计算声子态密度和热性能 INPHON为 NDIM= 4 4 4 MASS= 91.224 ATOM_NAME= Zr MP= 20 20 20#使用 MP方法产生 k点,个数为 20x20x20 EIGENVECTORS= .TRUE. 13.使用 fropho获得计算态密度;@node64:~/test> fropho< INPHON 14.使用 rubytools中 yaml2dos.rb获得声子态密度;@node64:~/test> frophorun.yaml> dos.dat 15.将 dos.dat使用 sftp下载至本地使用 gnuplot或者 origin做图,图如下:~/fropho/fropho-1.3.3/rubyTools/yaml2dos.rb --factor=15.633

http://www.77cn.com.cn

Page 5 of 6

High Performance Computing Platform of CSU 中南大学高性能计算平台用户经验交流

2.0

1.5

Density of states1.0

0.5

0.0

-4-20246

Phonon frequency (THz)

16. 使用rubytools中yaml2property.rb计算热性能;

@node64:~/test> ~/fropho/fropho-1.3.3/rubyTools/yaml2property.rb --mol=1

结果如下

# zero point energy: 1.5252447216 [kJ/mo …… 此处隐藏:2751字,全部文档内容请下载后查看。喜欢就下载吧 ……

VASP+FROPHO 计算晶体材料声子谱及热性能.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1486850.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)