VASP表面计算步骤小结
原文链接:http://blog.sciencenet.cn/blog-478347-374981.html
一、概述
vasp用“slab” 模型来模拟表面体系结构。
vasp计算表面的大概步骤是:
材料体性质的计算;表面模型的构造;表面结构的优化;表面性质的计算。
二、分步介绍
1、材料体性质计算:
本步是为了确定表面计算时所需的一些重要参数:ENCUT、SIGMA、晶格参数。
在计算前,要明确:何种PP;ENCUT;KPOINTS ;SIGMA;PREC;EX-CO,这其实是准备proper input files。
a. 何种PP
选择的PP能使计算得到的单个原子能量值在1meV~10meV之间。
所求得的单原子能量(对称性破缺时)可用来提高结合能的精度。
b. ENCUT
选择的ENCUT应使得总能变化在0.001eV左右为宜。
注意:试探值最小为POTCAR中的ENMAX(多个时,取最大的),递增间隔50;
另外,在进行变体积的结构优化时,最好保证ENCUT=1.3ENMAX,以得到合理精度。
c. PREC
控制计算精度的最重要参数,决定了(未指定时)ENCUT、FFT网格、ROPT取值。
一般计算取NORMAL;当要提高Stress tensor计算精度时,HIGH 或ACCURATE,并手动设置ENCUT。
d. EDIFF & EDIFFG
EDIFF 判断电子结构部分自恰迭代时自恰与否,一般取默认值=1E-4;
EDIFFG 控制离子部分驰豫
e. ISTART & ICHARGE
ISTART = 1, ICHARG = 11:能带结构、电子态密度计算时;
ISTART =0, ICHARG = 2:其余计算
ISTART = 1,ICHARG = 1(其他所有不改变):断点后续算设置
f. GGA & VOSKOWN
GGA=91: Perdew -Wang 91;
GGA=PE: Perdew-Burke-Ernzerhof
VOSKOWN=1( GGA=91时);VOSKOWN=默认(其余情况)
g. ISIF
控制结构参数之优化。在对原胞进行变形状或者体积的优化时,ENCUT要取大(比如1.3ENMAX或PREC=HIGH),以消除Pulay Stress导致的误差。
h. ISMEAR & SIGMA
进行任何静态计算时,且K点数目大于4,ISMEAR=-5;
当原胞太大,导致K点数目小于4时,ISMEAR = 0,并且要设置一个SIGMA;
对绝缘体和半导体,不论是静态计算还是结构优化,ISMEAR = -5;
对金属体系,SMEAR=1和 2,并且设置一个SIGMA;
能带结构计算,用默认值:ISMEAR=1,SIGMA=0.2;
一般来说,对于任何体系,任何计算,采用ISMEAR=0,并选择合适的SIGMA都会得到合理结果。
选择的SIGMA应使得entropy T*S EENTRO 绝对值最小。K 点数目变化后,SIGMA需再优化。
i. RWIGS
一般取POTCAR中以A为单问的RWIGS值。
j. K points
选择的K点应使得总能变化在0.001eV左右即可。
k. 一些重要的参数在默认下的值NSW =0,IBRION=-1,ISIF=2:静态计算。
<二>
a. 体材料结合能修正。
在OUTCAR中energy without entropy之后的那个能量值,就是修正值
b. 结构参数优化。 简单情况(没有内部自由度如晶胞形状、原子位置):静态计算,得出E~V关系,然后用Birch-Murnaghan状态方程拟合。
复杂情况:
总思路是先“建立好房子”,再“放好桌子”。
先算一步结构优化(取ISIF=5,只改变“房子”形貌,房间大小不变,家具不予考虑),接着算一步静态自恰计算,从而得到某结构参数下的能量,如此循环得到E~V关系。用状态方程拟合得到平衡体积。
在该体积下,重复1(取ISIF=2,房子造好后,考虑的是如何放家具。此处一般是使得每个家具受力达到某中小即可认为达到稳定结构)、2两步,便得到了所有的晶格参数值,如离子坐标。
c. VASP得到的总能即是结合能,不过还要减去前面得到的修正值。
d. 自恰的电荷密度
优化得到晶格参数后,再进行静态的自恰计算,就得到了自恰的电荷密度。
此时的POSCAR为从优化晶格参数时可CONTCAR得到。
KPOINTS 不变
典型的INCAR设置是:
ENCUT = 250
ISTART = 0; ICHARG = 2
ISMEAR = -5
PREC = Accurate
计算完后,注意保存相关结果。
最后,进行面电荷密度分析。
e. 能带结构计算
这是在自恰计算完成后的非自恰计算:
准备好产生K 点的syml文件;
用gk.x产生KPOINTS;
将前面静态自恰得到的chg.tgz解压缩;
设置INCAR,注意NBANDS
进行非自恰静态计算。得到EIGENVAL文件。
修改syml,然后用pbnd.x把EIGENVAL转换成bnd.dat 和 highk.dat 。再用origin画图。
f. 电子态密度
这也是在自恰完成后的非自恰静态计算:
准备好K点,增加网络;
准备好INCAR,注意RWIGS取值;
利用自恰得到的电荷密度,进行非自恰的静态计算;
得到DOSCAR;
利用split_dos对DOSCAR进行分割。
2、slab模型的构造
构建slab模型的要素:体材料的晶格参数;表面特征(米勒指数、二维周期性);真空层以及原子层厚度。
其中二维周期性的选择,对于bared surface,应当取不同的值,以考察是不是有重构现象;而对于有缺陷的,则依据要考察的缺陷浓度选择。
厚度的选取,是依据不同厚度对总能的影响来决定的。
3、表面体系的结构优化
在这个优化之前,还要对K-mesh进行优化。
表面体系的优化,主要是对原子位置进行优化,而对超原胞不再优化。一般采用的是Selective Dynamic。
这是在POSCAR中设置的。
怎样确定该驰豫哪些原子?
一般是应该将表面的几层放开,固定中间的几层,可以只是放开表面的两层,观察层间距变化,如果固定的层之间还有较大的移位,说明弛豫的层数太少,需要增大弛豫的层数。
这样继续作下去。直到 层间距变化不大 。
再层间距变化不大的前提下,尽量减少层数,以节约时间。
即便是再固定的层内的原子在固定方向上的受很大的力,但是受限于 F 的限制,被强制的规定在某一层上。
4、表面体系性质的计算
在优化后的结构基础之上就可以计算相关性质了。步骤与体材料性质计算一样。
重要提示:
不论是体材料还是表面计算,在结构优化完后,应当继续进行一下静态计算以得到自恰的电荷密度,再进行后面的性质计算。结构优化完后所得的电荷密度文件不可用。
VASP表面计算步骤小结的更多相关文章
- SAP MRP的计算步骤
SAP MRP的计算步骤,物料需求计划(简称为MRP)与主生产计划一样属于ERP计划管理体系,它主要解决企业生产中的物料需求与供给之间的关系,即无论是对独立需求的物料,还是相关需求的物料, ...
- 决策树C4.5算法——计算步骤示例
使用决策树算法手动计算GOLF数据集 步骤: 1.通过信息增益率筛选分支. (1)共有4个自变量,分别计算每一个自变量的信息增益率. 首先计算outlook的信息增益.outlook的信息增益Gain ...
- Hadoop-1.2.1 安装步骤小结(ubuntu)
1.安装ubuntu系统 如果不使用云服务器,可以使用虚拟机WmWare安装,具体安装步骤这里就不讲了,ubuntu系统下载地址:http://www.ubuntu.com/download/desk ...
- cloudera manager安装步骤小结
1.准备三台虚拟机,系统是centos 7,IP分别是: 192.168.254.110 master 192.168.254.111 slave1 192.168.254.112 slave2 2. ...
- 简单QR分解之Gram-Schmit正交化&&Householder变换&&Givens Rotation变换&&计算步骤
- vue项目创建步骤小结
第一步创建项目目录demo cd demo npm init 生成package.json 初始化项目工具使用 命令行工具 (CLI) 快速初始化 # 全局安装 vue-cli $ npm inst ...
- IP首部校验和计算
根据RFC1071文档的计算方法,编写代码实现IP首部校验和的计算 计算步骤: 1.首先将IP首部中校验和字段置0 2.将IP首部每16bit进行相加,如果有进位产生,则将进位加到最低位. 3.将计算 ...
- JMeter学习-020-JMeter 监听器之【聚合报告】错误率、吞吐量、传输速率实例计算
上文 对聚合报告的结果字段进行了概要的讲述释义,同时对吞吐量.传输速率.分位数等进行了详细的阐述,此文针对上文中描述的吞吐量及传输速率的计算进行详细的实例计算演示. 多不闲述,直入主题! 实际操作步骤 ...
- JS帮你计算属相
背景:一个人出生在2014年的正月初一,他的生肖到底是属蛇还是属马呢?这就要确定那一天才是一年的开始.是春节还是立春?每年的春节是正月初一,但是生肖必须是从立春日开始计算.春节是1912年孙中 ...
随机推荐
- vue + mixin混入对象使用
vue提供的混入对象mixin,类似于一个公共的组件,其他任何组件都可以使用它.我更经常的是把它当成一个公共方法来使用 在项目中有些多次使用的data数据,method方法,或者自定义的vue指令都可 ...
- AngularJs 初级入门 学习笔记
刚学angular, 做一些笔记方便自己翻看. ng-app: 填写模块的名称 ng-init: 初始化数据(一般通过控制器初始化) ng-model: 填写数据模型 ng-bind: 绑定数据模型, ...
- 从FBV到CBV二(认证器)
span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }.CodeMirror ...
- 【异常】org.apache.hadoop.hdfs.server.common.InconsistentFSStateException
1 异常信息 - ::, INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Maximum size of an xattr: -- ...
- Inception网络模型
最近在研究inception模型,将v1到v4版本的论文都研读了一下,这里做一下总结. 这里推荐一下这个GitHub,博主将常见的论文都做了翻译,大家可以参考中文来加深理解. 1.Inception ...
- PyCharm上unittest 测试用例两种执行方式
每次讲到unittest测试框架的时候,经常有同学在群里反映,为啥我的运行不是按照我往suite里添加的用例顺序执行的,为什么别人的能跑出来报告,我的就不行... 当然,首先确认代码是OK的,如果代码 ...
- java8学习之自定义收集器深度剖析与并行流陷阱
自定义收集器深度剖析: 在上次[http://www.cnblogs.com/webor2006/p/8342427.html]中咱们自定义了一个收集器,这对如何使用收集器Collector是极有帮助 ...
- 【CF451E】Devu and Flowers
题目大意:求多重集合的组合数, \(N \le 1e14,M \le 20\). 题解: 考虑容斥原理,具体做法是枚举所有情况,即:枚举子集,第 i 位为 1 表示满足第 i 个条件,正负号采用 si ...
- vue设置全局query参数
router.beforeEach((to, from, next) => { // 设置全局店铺ID shopid const shopid = from.query.shopid // 如果 ...
- Eclipse 导入逆向工程
相关配置 生成 生产前 生成后