• Quantum Espresso + Phonopy 计算声子过程


    以Ammonia (N4H12) 为例。

    第一步: 松弛结构/ Geometry Optimization

    Input:

     &control
        calculation = 'relax',
        nstep = 300,
        etot_conv_thr = 1.0d-4,
        forc_conv_thr = 2.0d-3,
        restart_mode = 'from_scratch',
        prefix = 'ammonia',
        outdir = 'Waves',
        pseudo_dir = '/home/z8j/svn_personal/qe/pp'
     /
     &system
        ibrav = 0,
        ntyp = 2,
        nat = 16,
        occupations = 'fixed',
        ecutwfc = 80
     /
     &electrons
        mixing_beta = 0.7,
        conv_thr = 1.d-8,
        electron_maxstep = 1000,
        startingwfc = 'atomic+random'
     /
     &ions
        ion_positions = "default"
     /
    
    ATOMIC_SPECIES
     H  1.000  H.pbe-rrkjus.UPF
     N  14.000 N.pbe-rrkjus.UPF
    
    CELL_PARAMETERS angstrom
     5.1305 0.0000 0.0000
     0.0000 5.1305 0.0000
     0.0000 0.0000 5.1305
    
    K_POINTS automatic
      4 4 4 1 1 1
    
    ATOMIC_POSITIONS angstrom
    N       1.0789441   1.0789441   1.0789441
    N       1.4863058   4.0515558   3.6441941
    N       3.6441941   1.4863058   4.0515558
    N       4.0515558   3.6441941   1.4863058
    H       1.9095721   1.3477823   0.5710246
    H       1.9942253   3.2209279   3.9130323
    H       3.1362746   0.6556779   3.7827176
    H       4.5594753   4.4748221   1.2174676
    H       1.3477823   0.5710246   1.9095721
    H       1.2174676   4.5594753   4.4748221
    H       3.2209279   3.9130323   1.9942253
    H       0.5710246   1.9095721   1.3477823
    H       0.6556779   3.7827176   3.1362746
    H       4.4748221   1.2174676   4.5594753
    H       3.9130323   1.9942253   3.2209279
    H       3.7827176   3.1362746   0.6556779

    然后Run pw.x:

    PBS file:

     1 #!/bin/bash
     2 
     3 #PBS -A sns
     4 #PBS -q long
     5 #PBS -m ea
     6 #PBS -M 123123@foxmail.com
     7 #PBS -j oe
     8 #PBS -l qos=condo
     9 #PBS -W group_list=cades-virtues
    10 #PBS -l walltime=50:30:00
    11 #PBS -l nodes=4:ppn=32
    12 #PBS -N ammonia-rlx-qe@/lustre/or-hydra/cades-virtues/z8j/run/rmg_test_ORNL/Ammonia/qe
    13 
    14 module load /software/tools/modules/env/cades-virtues
    15 module load /software/tools/modules/compilers/intel/2016.1
    16 module load /software/tools/modules/utils/intel/mkl/2016.1
    17 module load /software/tools/modules/mpi/openmpi/intel/1.10.2
    18 module load /software/user_tools/current/modules/cades-virtues/env/intel
    19 module load /software/user_tools/current/modules/cades-virtues/espresso/5.4.0
    20 module list
    21 
    22 export OMP_NUM_THREADS=1
    23 
    24 cd /lustre/or-hydra/cades-virtues/z8j/run/rmg_test_ORNL/Ammonia/qe
    25 
    26 date
    27 
    28 mpirun -np 128 --bind-to none --map-by ppr:32:node:pe=1 /software/user_tools/current/cades-virtues/apps/quantum-espresso/intel/espresso/5.4.0/pw.x < qe.in > qe.00.out
    29 
    30 date

    第二步: 写好用来构建超胞用的单胞/Prepare unit cell file for supercell building

    这一步比较简单,直接从第一步的output file里读取出现成的原子位置即可,然后修改下必要的参数,如名字 Kpoint mesh。有一点需要注意,phonopy只支持crystal 的原子位置类型,所以需要自己转换一下。

     &control
        calculation = 'scf',
        nstep = 300,
        etot_conv_thr = 1.0d-4,
        forc_conv_thr = 2.0d-3,
        restart_mode = 'from_scratch',
        prefix = 'ammonia',
        outdir = 'Waves',
        pseudo_dir = '/home/z8j/svn_personal/qe/pp'
     /
     &system
        ibrav = 0
        ntyp = 2,
        nat = 16,
        occupations = 'fixed',
        ecutwfc = 80
     /
     &electrons
        mixing_beta = 0.7,
        conv_thr = 1.d-8,
        electron_maxstep = 1000,
        startingwfc = 'atomic+random'
     /
    
    ATOMIC_SPECIES
     H  1.000  H.pbe-rrkjus.UPF
     N  14.000 N.pbe-rrkjus.UPF
    
    CELL_PARAMETERS angstrom
     5.1305 0.0000 0.0000
     0.0000 5.1305 0.0000
     0.0000 0.0000 5.1305
    
    K_POINTS automatic
      4 4 4 1 1 1
    
    ATOMIC_POSITIONS (crystal)
    N       0.208255064    0.208255064    0.208255064
    N       0.291744916    0.791744916    0.708255064
    N       0.708255064    0.291744916    0.791744916
    N       0.791744916    0.708255064    0.291744916
    H       0.373650671    0.263677961    0.110622992
    H       0.389376988    0.626349329    0.763677961
    H       0.610622992    0.126349329    0.736322020
    H       0.889376988    0.873650671    0.236322020
    H       0.263677961    0.110622992    0.373650671
    H       0.236322020    0.889376988    0.873650671
    H       0.626349329    0.763677961    0.389376988
    H       0.110622992    0.373650671    0.263677961
    H       0.126349329    0.736322020    0.610622992
    H       0.873650671    0.236322020    0.889376988
    H       0.763677961    0.389376988    0.626349329
    H       0.736322020    0.610622992    0.126349329

    这一步不用运行,只是为下一步做准备。

    第三步: 用Phonopy构建超胞/ Build supercells with displaced atoms by Phonopy

    将上一步的input 拷出来并命名为qe.in,然后运行Phonoy(如果想省略掉-c选项的话,重命名为unitcell.in):

    python /home/zjyx/softwares/phonopy-1.10.10/bin/phonopy --pwscf -d --dim="4 4 4" -c qe.in

    这样当前目录下会出现若干个supercell-???.in文件。这些文件都是带有微扰的超胞,需要在下一步中用来做电子自洽计算。另外这些文件都只含有结构信息,缺少设置信息,需要把下面的信息添加为每个supercel.???.in的开头部分:

     &control
        calculation = 'scf',
        nstep = 300,
        etot_conv_thr = 1.0d-4,
        forc_conv_thr = 2.0d-3,
        tprnfor = .true.
        tstress = .true.
        restart_mode = 'from_scratch',
        prefix = 'ammonia',
        outdir = 'Waves',
        pseudo_dir = '/u/sciteam/zhang7/svn_personal/qe/pp'
     /
     &system
        ibrav = 0
        ntyp = 2,
        nat = 1024,
        occupations = 'fixed',
        ecutwfc = 80
     /
     &electrons
        diagonalization = 'david',
        mixing_beta = 0.7,
        conv_thr = 1.d-8,
        electron_maxstep = 1000,
        startingwfc = 'atomic+random'
     /
    
    K_POINTS automatic
      1 1 1 0 0 0

    与前面的输入文件相比,这儿多了这两个选项:tprnfor = .true. 和 tstress = .true.。这样的话才会在电子自洽计算完成后输出每个原子的受力情况,用以构建后来的Force constant matrix.

    第四步: 超胞的电子自洽计算/Electron SCF calculation of supercells

    依次运行pw.x < supercell-???.in即可。

    第五步: 用Phonopy计算

  • 相关阅读:
    秋意浓浓回成都2月杂记
    验证表单的js代码段
    C#算法小程序(1)
    C#数据结构之单向链表
    Excel VBA编程的常用代码
    我的漫漫系分路
    2007年下半年系统分析师上午试卷及参考答案
    「2014年間休日カレンダー」のご案内
    Eclipse的几点使用技巧
    沧海一粟小组(第一次作业)
  • 原文地址:https://www.cnblogs.com/zjyx/p/6528393.html
Copyright © 2020-2023  润新知