弹性板计算和板带划分计算_VASP计算笔记-弹性常数计算

二阶弹性常数计算

主要采用能量--应变方法

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.  |
 +---------------------------------------------------------------+
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值