截断能测试


截断能测试

必要输入文件:

encut.sh  
POTCAR  
KPOINTS和POSCAR可以在encut.sh里设置,也可以独立给出。

encut.sh脚本参考

#!/bin/bash

#生成KPOINTS文件,KPOINTS不能与INCAR中的KSPACING参数共用,二选一
#注:KPOINTS文件每行一定要顶格写,不能前面不能空格,不然可能会报错。
cat > KPOINTS <<!
A
0
M
9  9  9
0  0  0
!

#产生计算所需POSCAR
cat > POSCAR<<!
Si8
1.0000000000
    5.4687280000        0.0000000000        0.0000000000
    0.0000000000        5.4687280000        0.0000000000
    0.0000000000        0.0000000000        5.4687280000
Si
8
Direct
    0.0000000000        0.0000000000        0.0000000000
    0.2500000000        0.7500000000        0.7500000000
    0.5000000000        0.0000000000        0.5000000000
    0.0000000000        0.5000000000        0.5000000000
    0.5000000000        0.5000000000        0.0000000000
    0.7500000000        0.2500000000        0.7500000000
    0.7500000000        0.7500000000        0.2500000000
    0.2500000000        0.2500000000        0.2500000000
!

for i in $(seq 400 50 700) #截断能从450-800,步数为50
do

#生成vasp静态计算的INCAR
cat > INCAR_static <<!
Global Parameters
  ISTART =  0            (Read existing wavefunction; if there)
  ICHARG =  2            (Non-self-consistent: GGA/LDA band structures)
  LREAL  = .FALSE.       (Projection operators: automatic)
  ENCUT  =  $i           (Cut-off energy for plane wave basis set, in eV)
  PREC   =  Accurate     (Precision level)  
  LWAVE  = .FALSE.       (Write WAVECAR or not)
  LCHARG = .FALSE.       (Write CHGCAR or not) 
  ADDGRID= .TRUE.        (Increase grid; helps GGA convergence)

Electronic Relaxation
  ISMEAR =  -5           (Gaussian smearing; metals:1)
  #SIGMA  =  0.05        (Smearing value in eV; metals:0.2)
  NELM   =  60           (Max electronic SCF steps)  
  NELMIN =  4            (Min electronic SCF steps)
  EDIFF  =  1E-06        (SCF energy convergence; in eV)
  GGA  =  PE             (PBEsol exchange-correlation)

Ionic Relaxation
  ISIF   =  2            (Stress/relaxation: 2-Ions, 3-Shape/Ions/V,4-Shape/Ions)
  EDIFFG = -0.001        (Ionic convergence; eV/AA)
  KSPACING = 0.10
!

cp INCAR_static INCAR
echo "ENCUT = $i eV" ; time mpirun -np 16 vasp_std #vasp并行运行命令,根据系统自行修改

rm INCAR_static
rm INCAR
#提取计算得到的能量
E=$(grep "TOTEN" OUTCAR | tail -1 | awk '{printf "%12.9f \n", $5 }')
echo $i $E >>encut_energy.out
done

提交脚本任务运行,成功结束后可以得到输出文件encut_enengy.out
可以使用OriginPro等画图工具画出截断能-能量关系.

Si的截断能测试:

根据能量的收敛性(收敛值大约达到$0.001eV/atom$),我们选择截断能500 $eV$。


文章作者: 天帝君豪
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 天帝君豪 !
 上一篇
KPOINTS测试 KPOINTS测试
MathJax.Hub.Config({ tex2jax: {inlineMath: [['$', '$']]}, messageStyle: "none" }); KPOINTS 或 KSPACING 测试必要输入文件:
下一篇 
声子谱计算 声子谱计算
声子谱计算主要使用phonopy软件计算声子谱。版本:phonopy-2.1.3 密度泛函微软理论/线性响应方法 (DFPT)必要的输入文件: INCAR KPOINTS POTCAR-unitcell #优化得到的初始晶胞 POTCA
  目录