# [×ªÔØ]Running thirdorder with Quantum ESPRESSO

ÒÑÓÐ 2688 ´ÎÔÄ¶Á 2019-4-1 08:46 |¸öÈË·ÖÀà:Phonons|ÏµÍ³·ÖÀà:¿ÆÑÐ±Ê¼Ç| ShengBTE, phonons, ShengBTE |ÎÄÕÂÀ´Ô´:×ªÔØ

The invocation of thirdorder_espresso.py requires two files:

1) an input file of the unit cell with converged structural parameters.

&CONTROL calculation='scf', prefix='gaas', restart_mode='from_scratch', tstress = .true., tprnfor = .true.,/&SYSTEM ibrav=0, nat=2, ntyp=2, ecutwfc=48 ecutrho=384/&ELECTRONS conv_thr=1.d-12,/ATOMIC_SPECIES Ga  69.723    Ga.pbe-dnl-kjpaw_psl.1.0.0.UPF As  74.92160  As.pbe-dn-kjpaw_psl.1.0.0.UPFATOMIC_POSITIONS crystal Ga 0.00 0.00 0.00 As 0.25 0.25 0.25K_POINTS automatic11 11 11 0 0 0CELL_PARAMETERS angstrom   0.000000000   2.857507756   2.857507756   2.857507756   0.000000000   2.857507756   2.857507756   2.857507756   0.000000000

2) a template input file for the supercell calculations. The template file is a normal QE input file with some wildcards.

&CONTROL  calculation='scf',  prefix='gaas',  tstress = .true.,  tprnfor = .true.,  outdir = './'/&SYSTEM  ibrav=0,  nat=##NATOMS##,  ntyp=2,  ecutwfc=48  ecutrho=384/&ELECTRONS  conv_thr=1.d-12,/ATOMIC_SPECIES As  74.92160  As.pbe-dn-kjpaw_psl.1.0.0.UPF Ga  69.723    Ga.pbe-dnl-kjpaw_psl.1.0.0.UPF##COORDINATES##K_POINTS gamma##CELL##

Tips:

1. thirdorder_espresso.py supports the following QE input conventions for structural parameters:

1) ibrav = 0 together with CELL_PARAMETERS (alat | bohr | angstrom)

2) ibrav != 0 together with celldm(1)-celldm(6)

2. For ATOMIC_POSITIONS, all QE units are supported (alat | bohr | angstrom | crystal). Simple algebraic expressions for the positions are supported in similar fashion to QE. Please note that ibrav = 11..14  have not been tested so far with thirdorder_espresso.py (please report if you run these cases successfully or run into problems). Cases ibrav = -5, -9, -12, -13, and 91 are not currently implemented (but those structures can be defined via ibrav = 0 instead)

3. Please note that if Gamma-point k-sampling is used for the supercells, it is computationally much more efficient to apply "K_POINTS gamma" instead of "K_POINTS automatic" with the mesh set to "1 1 1 0 0 0". SCF convergence criterion conv_thr should be set to a tight value and parameters tstress and tprnfor are required so that thirdorder can extract the forces from the output file.

Thirdorder uses no other configuration files, and requires seven mandatory command-line arguments to create the supercell inputs with the "sow" operation. The first argument must be either "sow" or "reap", and chooses the operation to be performed (displacement generation or IFC matrix reconstruction). The next three must be positive integers, and specify the dimensions of the supercell to be created. Finally, the "cutoff" parameter decides on a force cutoff distance. Interactions between atoms spaced further than this parameter are neglected. If cutoff is a positive real number, it is interpreted as a distance in nm; on the other hand, if it is a negative integer -n, the maximum distance among n-th neighbors in the supercell is automatically determined and the cutoff distance is set accordingly.

thirdorder_espresso.py unitcell.in sow na nb nc cutoff[nm/-integer] supercell_template.in
thirdorder_espresso.py GaAs.in sow 4 4 4 -3 GaAs_sc.in

The command creates a file called BASE.GaAs_sc.in with the undisplaced supercell coordinates and 144 files with names following the pattern DISP.GaAs_sc.in.NNN The DISP files should be executed with QE. This step is completely system-dependent, but some practical suggestions can be extracted from the VASP example above.

After all the jobs have finished successfully, we only need to feed all the output files in the right order to thirdorder_espresso.py, this time in reap mode (now using only six arguments, the supercell argument is not used here):

find . -name 'DISP.GaAs_sc.in*out' | sort -n | thirdorder_espresso.py GaAs.in reap 4 4 4 -3

If everything goes according to plan, a FORCE_CONSTANTS_3RD file will be created at the end of this run. Naturally, it is important to choose the same parameters for the sow and reap steps.

http://blog.sciencenet.cn/blog-3352196-1170806.html

ÉÏÒ»Æª£ºFortran
ÏÂÒ»Æª£ºLinux ³£¼û²Ù×÷

Êý¾Ý¼ÓÔØÖÐ...