二阶弹性常数计算
主要采用能量–应变方法
AELAS软件计算
必要的文件
elas_strain.sh
elas_cal.sh
POTCAR
INPOS 优化后的POSCAR。可在脚本设置或者单独给出
KPOINTS 可在脚本设置或者单独给出
incar_rlx 可在脚本设置或者单独给出
incar_stc
elas_strain.sh脚本参考如下:
#!/bin/bash
cat > INPOS <<!
Si8
1.00000000000000
5.4684663969085214 0.0000000000000000 0.0000000000000000
0.0000000000000000 5.4684663969085214 0.0000000000000000
0.0000000000000000 0.0000000000000000 5.4684663969085214
Si
8
Direct
0.0000000000000000 0.0000000000000000 0.0000000000000000
0.2500000000000000 0.7500000000000000 0.7500000000000000
0.5000000000000000 0.0000000000000000 0.5000000000000000
0.0000000000000000 0.5000000000000000 0.5000000000000000
0.5000000000000000 0.5000000000000000 0.0000000000000000
0.7500000000000000 0.2500000000000000 0.7500000000000000
0.7500000000000000 0.7500000000000000 0.2500000000000000
0.2500000000000000 0.2500000000000000 0.2500000000000000
!
AELAS -g #建立不同应变下的POSCAR_I_J。例如:POSCAR_01_001 #二维生成命令 AELAS -g2d
#产生优化和静态计算的INCAR
cat > incar_rlx <<!
ISTART=0
ICHARG=2
PREC=Accurate
GGA = PE
ADDGRID =.TRUE.
# Electronic relaxation
ENCUT=500
EDIFF=1E-8
ISMEAR=0
SIGMA=0.05
NELMIN=5
# Ionic relaxation
NSW=100
EDIFFG=-1e-3
ISIF=2
IBRION=2
POTIM=0.20
# Other Tags
#PSTRESS=
#Write flags
LWAVE=.FALSE.
LCHARG=.FALSE.
!
cat > incar_stc<<!
ISTART=0
ICHARG=2
PREC=Accurate
GGA = PE
ADDGRID =.TRUE.
# Electronic relaxation
ENCUT=500
EDIFF=1E-8
EDIFFG=-0.001
ISMEAR=-5
#SIGMA = 0.05
POTIM=0.20
# Other Tags
#PSTRESS=
# Write flags
LWAVE=.FALSE.
LCHARG=.FALSE.
!
cat > KPOINTS <<!
A
0
M
9 9 9
0 0 0
!
运行生成应变后的POSCAR及计算输入文件
elas_cal.sh脚本设置如下:
for i in 01 02 03 #根据生成的数量设置
do
for j in 001 002 003 004 005 006 007 008 009 010 011 012 013
do
#优化计算
cp POS_"$i"_$j.vasp POSCAR
cp incar_rlx INCAR
echo "relax I= $i,J = $j"; time mpirun -np 16 vasp_std
#静态计算
cp CONTCAR POSCAR
rm INCAR
cp incar_stc INCAR
echo "static I= $i,J = $j"; time mpirun -np 16 vasp_std
cp OSZICAR OSZICAR_"$i"_$j
rm INCAR
done
done
#计算弹性常数
AELAS -d #二维产生 AELAS -d2d
提交上述脚本计算,成功计算后生成ELADAT文件,形式如下:
Elastic tensor:
153.04 57.11 57.11 0.00 0.00 0.00
57.11 153.04 57.11 0.00 0.00 0.00
57.11 57.11 153.04 0.00 0.00 0.00
0.00 0.00 0.00 74.71 0.00 0.00
0.00 0.00 0.00 0.00 74.71 0.00
0.00 0.00 0.00 0.00 0.00 74.71
Compliance tensor:
0.008197 -0.002228 -0.002228 0.000000 0.000000 0.000000
-0.002228 0.008197 -0.002228 0.000000 0.000000 0.000000
-0.002228 -0.002228 0.008197 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.013384 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000 0.013384 0.000000
0.000000 0.000000 0.000000 0.000000 0.000000 0.013384
Young's, shear and bulk moduli and Poisson ratio
Voigt approximate: 154.93 64.01 89.09 0.210
Reuss approximate: 149.17 61.09 89.09 0.221
Hill approximate : 152.05 62.55 89.09 0.216
Pugh ratio (G/K): 0.7021
Cauchy pressure (Pc=C12-C44): -17.60
Elastic Anisotropy Index
Chung-Buessem Anisotropy Index (Ac=(Gv-Gr)/(Gv+Gr)): 0.0234
Universal Elastic Anisotropy Index (Au=5*Gv/Gr+Kv/Kr-6): 0.2396
Elastic Stability Conditions: Stable
vaspkit软件
建议使用惯用晶胞,不要使用原始晶胞。可以借用上面软件的AELAS -d生成的RECELL文件。
版本1.0.0及以上
必要的文件
elas_strain.sh
elas_cal.sh
POTCAR
KPOINTS 可在脚本设置或者单独给出
incar_rlx 可在脚本设置或者单独给出
incar_stc
VPKIT.in 可在脚本设置或者单独给出
elas_strain.sh脚本参考如下:
#!/bin/bash
cat > VPKIT.in <<!
1 ! 1 for prep-rocessing, 2 for post-processing
3D ! 2D for slab, 3D for bulk
13 ! number of strain
-0.018 -0.015 -0.012 -0.009 -0.006 -0.003 0.000 0.003 0.006 0.009 0.012 0.015 0.018 ! magnitude of strain
!
cat > POSCAR <<!
Si8
1.00000000000000
5.4684663969085214 0.0000000000000000 0.0000000000000000
0.0000000000000000 5.4684663969085214 0.0000000000000000
0.0000000000000000 0.0000000000000000 5.4684663969085214
Si
8
Direct
0.0000000000000000 0.0000000000000000 0.0000000000000000
0.2500000000000000 0.7500000000000000 0.7500000000000000
0.5000000000000000 0.0000000000000000 0.5000000000000000
0.0000000000000000 0.5000000000000000 0.5000000000000000
0.5000000000000000 0.5000000000000000 0.0000000000000000
0.7500000000000000 0.2500000000000000 0.7500000000000000
0.7500000000000000 0.7500000000000000 0.2500000000000000
0.2500000000000000 0.2500000000000000 0.2500000000000000
!
#产生优化和静态计算的INCAR
cat > incar_rlx <<!
ISTART=0
ICHARG=2
PREC=Accurate
GGA = PE
ADDGRID =.TRUE.
# Electronic relaxation
ENCUT=500
EDIFF=1E-8
ISMEAR=0
SIGMA=0.05
NELMIN=5
# Ionic relaxation
NSW=100
EDIFFG=-1e-3
ISIF=2
IBRION=2
POTIM=0.20
# Other Tags
#PSTRESS=
#Write flags
LWAVE=.FALSE.
LCHARG=.FALSE.
KPAR=2
!
cat > incar_stc<<!
ISTART=0
ICHARG=2
PREC=Accurate
GGA = PE
ADDGRID =.TRUE.
# Electronic relaxation
ENCUT=500
EDIFF=1E-8
EDIFFG=-0.001
ISMEAR=-5
#SIGMA = 0.05
POTIM=0.20
# Other Tags
#PSTRESS=
# Write flags
LWAVE=.FALSE.
LCHARG=.FALSE.
KPAR=2
!
cat > KPOINTS <<!
A
0
M
9 9 9
0 0 0
!
vaspkit -task 201 #建立不同应变下的POSCAR文件
提交生成应变后的文件夹
elas_cal.sh脚本设置如下:
#!/bin/bash
root_path=`pwd`
for cij in `ls -F | grep /$`
do
cd ${root_path}/$cij
for s in strain_*
do
cd ${root_path}/$cij/$s
echo `pwd`
#优化计算
cp ../../incar_rlx INCAR
time mpirun -np 16 vasp_std
rm INCAR
#静态计算
cp ../../incar_stc INCAR
time mpirun -np 16 vasp_std
done
done
cd ${root_path}
#计算弹性常数
cat > VPKIT.in <<!
2 ! 1 for prep-rocessing, 2 for post-processing
3D ! 2D for slab, 3D for bulk
13 ! number of strain
-0.018 -0.015 -0.012 -0.009 -0.006 -0.003 0.000 0.003 0.006 0.009 0.012 0.015 0.018 ! magnitude of strain
!
vaspkit -task 201 > elastics.out
成功计算后生成elastic.out文件,形式如下:
+---------------------------------------------------------------+
| VASPKIT Version: 1.00 (16 Sep. 2019) |
| A Pre- and Post-Processing Program for VASP Code |
| Running VASPKIT Under Command-Line Mode |
+---------------------------------------------------------------+
-->> (01) Reading VPKIT.in File...
+-------------------------- Warm Tips --------------------------+
See an example in vaspkit/examples/elastic/diamond_3D,
Require the fully-relaxed and standardized Convertional cell.
+---------------------------------------------------------------+
-->> (02) Reading Structural Parameters from POSCAR File...
-->> (03) Calculating the fitting coefficients of energy vs strain.
-->> Current directory: Fitting Precision
C44 Folder: 0.405E-09
C11_C12_I Folder: 0.244E-09
C11_C12_II Folder: 0.744E-08
+-------------------------- Summary ----------------------------+
Based on the Strain versus Energy method.
Crystal Class: m-3m
Space Group: Fd-3m
Crystal System: Cubic system
Including Point group classes: 23, 2/m-3, 432, -43m, 4/m-32/m
There are 3 independent elastic constants
C11 C12 C12 0 0 0
C12 C11 C12 0 0 0
C12 C12 C11 0 0 0
0 0 0 C44 0 0
0 0 0 0 C44 0
0 0 0 0 0 C44
Stiffness Tensor C_ij (in GPa):
153.056 57.116 57.116 0.000 0.000 0.000
57.116 153.056 57.116 0.000 0.000 0.000
57.116 57.116 153.056 0.000 0.000 0.000
0.000 0.000 0.000 99.411 0.000 0.000
0.000 0.000 0.000 0.000 99.411 0.000
0.000 0.000 0.000 0.000 0.000 99.411
Compliance Tensor S_ij (in GPa^{-1}):
0.008196 -0.002227 -0.002227 0.000000 0.000000 0.000000
-0.002227 0.008196 -0.002227 0.000000 0.000000 0.000000
-0.002227 -0.002227 0.008196 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.010059 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000 0.010059 0.000000
0.000000 0.000000 0.000000 0.000000 0.000000 0.010059
Elastic stability criteria as seen in PRB 90, 224104 (2014).
Criteria (i) C11 - C12 > 0 meeted.
Criteria (ii) C11 + 2C12 > 0 meeted.
Criteria (iii) C44 > 0 meeted.
This Structure is Mechanically Stable.
Average mechanical properties for polycrystalline:
+---------------------------------------------------------------+
| Scheme | Voigt | Reuss | Hill |
+---------------------------------------------------------------+
| Bulk modulus K (GPa) | 89.096 | 89.096 | 89.096 |
| Shear modulus G (GPa) | 78.835 | 69.569 | 74.202 |
| Young's modulus E (GPa) | 182.637 | 165.605 | 174.236 |
| P-wave modulus (GPa) | 194.209 | 181.855 | 188.032 |
| Poisson's ratio v | 0.158 | 0.190 | 0.174 |
| Bulk/Shear ratio | 1.130 | 1.281 | 1.201 |
+---------------------------------------------------------------+
Pugh Ratio: 0.833
Cauchy Pressure (GPa): -42.295
Universal Elastic Anisotropy: 0.666
ChungBuessem Anisotropy: 0.062
Isotropic Poissons Ratio: 0.174
Longitudinal wave velocity (in m/s): 9078.421
Transverse wave velocity (in m/s): 5702.983
Average wave velocity (in m/s): 6278.900
Debye temperature (in K): 683.685
References:
[1] Voigt W, Lehrbuch der Kristallphysik (1928)
[2] Reuss A, Z. Angew. Math. Mech. 9 4958 (1929)
[3] Hill R, Proc. Phys. Soc. A 65 34954 (1952)
[4] Debye temperature J. Phys. Chem. Solids 24, 909-917 (1963)
[5] Elastic wave velocities calculated using Navier's equation
+---------------------------------------------------------------+
+---------------------------------------------------------------+
| We Would Appreciate if You Cite in Your Research with VASPKIT.|
| Ref: V. Wang, N. Xu, J.C. LIU, G. Tang, et al, VASPKIT: A Pre-|
| and Post-Processing Program for VASP Code, arXiv:1908.08269. |
+---------------------------------------------------------------+