先前王伟老师已经介绍了基于能量-应变关系计算弹性常数—VASPKIT v1.00新功能的教程,今天介绍VASPKIT 1.2版本最新功能—基于应力-应变关系计算弹性常数。
在材料的线性形变范围内(小应变的情况下),整个体系的应力与应变满足胡克定律,
上面表达式中σi和εj分别表示应力和应变,Cij是弹性常数,其中1≤i≥6和1≤j≥6。通过给结构施加不同应变,分别计算出所对应的应力大小,然后利用上面公式拟合得到一次项系数,从而便可得到Cij。下图给出了立方晶系的具体形式:
下面我们以金刚石结构为例讲解如何采用应力-应变函数关系计算弹性常数,详见VASPKIT/examples/elastic/diamond_3D。由于金刚石具有立方晶体结构,一共有3个独立弹性常数C11、C12和C44(不明白的请看原胞转化方法以及标准原胞在计算中的重要性)。
1. 准备优化好的POSCAR文件,注意通常采用具有标准基矢形式的原胞计算弹性常数(VASPKIT-603/604可以生成标准结构),至于原因请看原胞转化方法以及标准原胞在计算中的重要性。
2. 运行VASPKIT-102生成KPOINTS (注意精度要稍高一些)
3. 运行VASPKIT-101-DC生成INCAR文件,并根据实际情况修改,以下仅供参考:
Global Parameters
ISTART = 0 (Read existing wavefunction; if there)
LREAL = F (Projection operators: automatic)
PREC = High (Precision level)
LWAVE = F (Write WAVECAR or not)
LCHARG = F (Write CHGCAR or not)
ADDGRID= .TRUE. (Increase grid; helps GGA convergence)
Electronic Relaxation
ISMEAR = 0 (Gaussian smearing; metals:1)
SIGMA = 0.05 (Smearing value in eV; metals:0.2)
NELM = 40 (Ma