zoukankan      html  css  js  c++  java
  • VASP+DFPT+Phonopy 计算声子过程

    以Ammonia为例,基本翻译自http://atztogo.github.io/phonopy/vasp.html#how-to-run。

    1. 结构优化. 输入文件如下:

    INCAR
    !System settings
       SYSTEM = Ammonia
       PREC   =  accurate    low, normal, accurate
       ISTART =      0     job   : 0-new  1-cont  2-samecut
       ICHARG =      2     charge: 0-INIWAV 1-CHGCAR 2-atom 10-nonself
       ISPIN  =      1     spin polarized? 1:no 2:yes
       INIWAV =      1     0-jellium 1-rand
    
    !Electronic Relaxation
       ENCUT  =   200.0 eV
       NELM   =   1000     max e SC
       NELMIN =      2     min e SC
       NELMDL =     -5     non-SC +:every -:first
       EDIFF  = 1.0E-6     stopping-criterion for ELM
       LREAL  =   Auto     real-space projection
       ALGO   =   fast     normal:38(D) fast:38-48(RMM) all:58 damped:53
    
       !IMIX = 4
       !AMIX = 0.1
       !BMIX = 0.0001
       !WC = 1000
       !INIMIX = 1
       !MIXPRE = 1
       !MAXMIX = -45
    
    !Ionic relaxation
       EDIFFG = -0.0005    stopping-criterion for IOM +:energy -:force
       NSW    =     500    number of steps for IOM
       !NBLOCK =      1     inner block ionic cfg-XDATCAR, scale T
       !KBLOCK =   1000     outer block PCF-PCDAT,DOS-DOSCAR
       IBRION =      2     ionic relax: 0-MD 1-static 2-CG 3-dampedMD
       ISIF   =      2
       POTIM  =   1.0     time-step for ionic-motion
       !TEBEG  =  600.0
       !TEEND  =  600.0     temperature during run
       SMASS  =     -1     -3:micro -2:const -1:scaled >=0:Nose mass
    
    !DOS related values:
       !EMIN   =  10.00
       !EMAX   = -10.00     energy-range for DOS
       !NEDOS = 300
       ISMEAR =      0     1,2:metal -5,0:sem/ins
       SIGMA  =   0.05     broadening in eV
       !RWIGS  = -1.0 -1.0 -1.0
       !NBANDS = 10       actual number of bands in calculation
    
    !Write flags
       !NWRITE =      2     long runs use 0 or 1
       LWAVE  = .FALSE.     write WAVECAR
       LCHARG = .FALSE.     write CHGCAR
       LVTOT  = .FALSE.    write LOCPOT, local potential
       LELF   = .FALSE.    write electronic localiz. function (ELF)
       !LORBIT = 11
       !LAECHG = .TRUE.
       !LADDGRID = .TRUE.
    
    !Parallel flags
       NPAR   =      8     # of nodes
       LPLANE =  .FALSE.
       LSCALU = .FALSE.
       LSCALAPACK = .FALSE.
    
    
    
    POSCAR
    Ammonia_rlx
    1.0
        5.1305  0.0  0.0
        0.0 5.1305 0.0
        0.0 0.0 5.1305
        N H
    4 12
    Cart
           1.0789441   1.0789441   1.0789441
           1.4863058   4.0515558   3.6441941
           3.6441941   1.4863058   4.0515558
           4.0515558   3.6441941   1.4863058
           1.9095721   1.3477823   0.5710246
           1.9942253   3.2209279   3.9130323
           3.1362746   0.6556779   3.7827176
           4.5594753   4.4748221   1.2174676
           1.3477823   0.5710246   1.9095721
           1.2174676   4.5594753   4.4748221
           3.2209279   3.9130323   1.9942253
           0.5710246   1.9095721   1.3477823
           0.6556779   3.7827176   3.1362746
           4.4748221   1.2174676   4.5594753
           3.9130323   1.9942253   3.2209279
           3.7827176   3.1362746   0.6556779
    
    KPOINTS
    Automatic mesh
    0
    MP
     5  5  5
     0  0  0
    
    --------------------------------------------------------------------------------

    由于声子对结构优化比较敏感,这儿的 PREC=accurate.

    2. 构建优化过的单胞

    1 cp CONTCAR POSCAR
    Ammonia_rlx                             
       1.00000000000000     
         5.1304999999999996    0.0000000000000000    0.0000000000000000
         0.0000000000000000    5.1304999999999996    0.0000000000000000
         0.0000000000000000    0.0000000000000000    5.1304999999999996
       N    H 
         4    12
    Direct
      0.2173355638189437  0.2173355638189437  0.2173355638189437
      0.2826644166897822  0.7826644166897819  0.7173355638189437
      0.7173355638189437  0.2826644166897822  0.7826644166897819
      0.7826644166897819  0.7173355638189437  0.2826644166897822
      0.3844041525928144  0.2739307062557181  0.1256929444364981
      0.3743070360722207  0.6155958474071853  0.7739307062557181
      0.6256929444364983  0.1155958474071856  0.7260692742530075
      0.8743070360722203  0.8844041525928147  0.2260692742530077
      0.2739307062557181  0.1256929444364981  0.3844041525928144
      0.2260692742530077  0.8743070360722203  0.8844041525928147
      0.6155958474071853  0.7739307062557181  0.3743070360722207
      0.1256929444364981  0.3844041525928144  0.2739307062557181
      0.1155958474071856  0.7260692742530075  0.6256929444364983
      0.8844041525928147  0.2260692742530077  0.8743070360722203
      0.7739307062557181  0.3743070360722207  0.6155958474071853
      0.7260692742530075  0.6256929444364983  0.1155958474071856
     
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00
      0.00000000E+00  0.00000000E+00  0.00000000E+00

    3. 构建超胞(但是不需要计算),并且重命名SPOSCAR为POSCAR

    1 python /home/zjyx/softwares/phonopy-1.10.10/bin/phonopy --vasp -c POSCAR-unitcell -d --dim="4 4 4"

    4. 用VASP做DFPT计算.

    INCAR文件:

    !System settings
       SYSTEM = Ammonia
       PREC   =  normal    low, normal, accurate
       ISTART =      0     job   : 0-new  1-cont  2-samecut
       ICHARG =      2     charge: 0-INIWAV 1-CHGCAR 2-atom 10-nonself
       ISPIN  =      1     spin polarized? 1:no 2:yes
       INIWAV =      1     0-jellium 1-rand
    
    !Electronic Relaxation
       ENCUT  =   200.0 eV
       NELM   =   1000     max e SC
       NELMIN =      2     min e SC
       NELMDL =     -5     non-SC +:every -:first
       EDIFF  = 1.0E-6     stopping-criterion for ELM
       LREAL  =   Auto     real-space projection
       ALGO   =   fast     normal:38(D) fast:38-48(RMM) all:58 damped:53
    
       !IMIX = 4
       !AMIX = 0.1
       !BMIX = 0.0001
       !WC = 1000
       !INIMIX = 1
       !MIXPRE = 1
       !MAXMIX = -45
    
    !Ionic relaxation
       EDIFFG = -0.0005    stopping-criterion for IOM +:energy -:force
       NSW    =       1    number of steps for IOM
       !NBLOCK =      1     inner block ionic cfg-XDATCAR, scale T
       !KBLOCK =   1000     outer block PCF-PCDAT,DOS-DOSCAR
       IBRION =      8     ionic relax: 0-MD 1-static 2-CG 3-dampedMD
       ISIF   =      2
       POTIM  =   1.0     time-step for ionic-motion
       !TEBEG  =  600.0
       !TEEND  =  600.0     temperature during run
       SMASS  =     -1     -3:micro -2:const -1:scaled >=0:Nose mass
    
    !DOS related values:
       !EMIN   =  10.00
       !EMAX   = -10.00     energy-range for DOS
       !NEDOS = 300
       ISMEAR =      0     1,2:metal -5,0:sem/ins
       SIGMA  =   0.05     broadening in eV
       !RWIGS  = -1.0 -1.0 -1.0
       !NBANDS = 10       actual number of bands in calculation
    
    !Write flags
       !NWRITE =      2     long runs use 0 or 1
       LWAVE  = .FALSE.     write WAVECAR
       LCHARG = .FALSE.     write CHGCAR
       LVTOT  = .FALSE.    write LOCPOT, local potential
       LELF   = .FALSE.    write electronic localiz. function (ELF)
       !LORBIT = 11
       !LAECHG = .TRUE.
       !LADDGRID = .TRUE.
    
    !Parallel flags
       !NPAR   =      8     # of nodes
       LPLANE =  .FALSE.
       LSCALU = .FALSE.
       LSCALAPACK = .FALSE.

    注意的参数是IBRION=8 和 NSW=1.

    5. 计算Force Constant

    1 phonopy --fc vasprun.xml

    6. 计算Band structure

    1 phonopy --dim="4 4 4" -c POSCAR-unitcell band.conf -p -s

    其中band.conf 文件如下:

    DIM = 4 4 4
    PRIMITIVE_AXIS = 1.0 0.0 0.0  0.0 1.0 0.0  0.0 0.0 1.0
    BAND = 0.0 0.0 0.0  0.0 0.5 0.0  0.5 0.5 0.0  0.5 0.5 0.5
    BAND_LABELS = Gamma X M R
    FORCE_CONSTANTS = READ
  • 相关阅读:
    WebApi开启CORS支持跨域POST
    VueJs生产环境部署
    VueJs开发笔记—IDE选择和优化、框架特性、数据调用、路由选项及使用
    微信分享JSSDK-invalid signature签名错误的解决方案
    关于后台系统自动生成的一点思考
    编写高质量代码改善C#程序的157个建议[为类型输出格式化字符串、实现浅拷贝和深拷贝、用dynamic来优化反射]
    编写高质量代码改善C#程序的157个建议[10-12]
    编写高质量代码改善C#程序的157个建议[4-9]
    编写高质量代码改善C#程序的157个建议[正确操作字符串、使用默认转型方法、却别对待强制转换与as和is]
    Oracle初级索引学习总结
  • 原文地址:https://www.cnblogs.com/zjyx/p/6592579.html
Copyright © 2011-2022 走看看