[QE-users] pw2wannier90 Calculation of diamond (spin up vs down)

Anil Bilgin bilgin at uchicago.edu
Mon Mar 9 23:57:05 CET 2020


Hello all,

I am trying to calculate the Wannier functions (WF) associated with the
valence bands of diamond. For future applications, I have to make this
calculation using spin up and down channels separately and use only the
gamma point.

Diamond is a very simple system with high symmetry, so I simulate only the
unit cell (slightly different than the examples that come with Wannier90
package). With 8 atoms in the unit cell, 32 valence electrons, and 16
distinct C-C bonds, I expect 16 WF for both the spin up and down channels.
These WF should be located on these C-C atoms. 1 spin up and 1 spin down at
each of them. My results also confirm this expectation except for a problem
I cannot seem to get rid of.

Even though everything looks fine at first glance, when plotted, everything
with respect to spin up channel behaves as expected. But when I plot spin
down WF, they're neither located where they're supposed to be nor do they
look like what they're supposed to look like. I would appreciate your
thoughts on this matter.

Thank you,
Anil Bilgin

PhD candidate
Pritzker School of Molecular Engineering
University of Chicago

*Details below this line*

I'm using QE version 6.1+intelmpi-5.1+intel-16.0
Here's what some input files look like. I can provide more information
about outputs as well if necessary.

*First an scf run:*

&CONTROL
calculation = 'scf'
prefix='di'
pseudo_dir='/project2/ahigh/bilgin/Rydberg_project/pseudo_potentials'
outdir='./'
verbosity = 'high'
wf_collect = .TRUE.
tstress=.TRUE.
tprnfor=.TRUE.
forc_conv_thr = 1.0D-5
/
&SYSTEM
ibrav = 0
ecutwfc = 90
tot_charge = 0
nspin = 2
tot_magnetization = 0
nbnd = 16
nat = 8
ntyp = 1
/
&ELECTRONS
conv_thr = 1D-08
diagonalization='cg'
mixing_mode = 'plain'
mixing_beta = 0.7
/
K_POINTS gamma
CELL_PARAMETERS angstrom
3.568006  0.000000  0.000000
0.000000  3.568006  0.000000
0.000000  0.000000  3.568006
ATOMIC_SPECIES
C  12.01099968  C_ONCV_PBE-1.0.upf
ATOMIC_POSITIONS crystal
C 0.00000000 0.00000000 0.00000000
C 0.25000000 0.25000000 0.25000000
C 0.50000000 0.50000000 0.00000000
C 0.75000000 0.75000000 0.25000000
C 0.50000000 0.00000000 0.50000000
C 0.75000000 0.25000000 0.75000000
C 0.00000000 0.50000000 0.50000000
C 0.25000000 0.75000000 0.75000000


*Secondly, an nscf run with an almost identical input:*

&CONTROL
calculation = 'nscf'
prefix='di'
pseudo_dir='/project2/ahigh/bilgin/Rydberg_project/pseudo_potentials'
outdir='./'
verbosity = 'high'
wf_collect = .TRUE.
tstress=.TRUE.
tprnfor=.TRUE.
forc_conv_thr = 1.0D-5
/
&SYSTEM
ibrav = 0
ecutwfc = 90
tot_charge = 0
nspin = 2
tot_magnetization = 0
nbnd = 24
nat = 8
ntyp = 1
/
&ELECTRONS
conv_thr = 1D-08
/
K_POINTS gamma
CELL_PARAMETERS angstrom
3.568006  0.000000  0.000000
0.000000  3.568006  0.000000
0.000000  0.000000  3.568006
ATOMIC_SPECIES
C  12.01099968  C_ONCV_PBE-1.0.upf
ATOMIC_POSITIONS crystal
C 0.00000000 0.00000000 0.00000000
C 0.25000000 0.25000000 0.25000000
C 0.50000000 0.50000000 0.00000000
C 0.75000000 0.75000000 0.25000000
C 0.50000000 0.00000000 0.50000000
C 0.75000000 0.25000000 0.75000000
C 0.00000000 0.50000000 0.50000000
C 0.25000000 0.75000000 0.75000000

*Third step is the normal*
 wannier90.x -pp pristine-unit-up
 wannier90.x -pp pristine-unit-dn

*Then fourth step*
pw2wannier90.x < pristine-unit-up.pw2wan > pw2wan-up.out
pw2wannier90.x < pristine-unit-dn.pw2wan > pw2wan-dn.out

with the two .pw2wan files for spin up and down as follows:

&inputpp
   outdir         = './'
   prefix         = 'di'
   seedname       = 'pristine-unit-dn'
   spin_component = 'down'
   write_mmn      = .true.
   write_amn      = .true.
   write_unk      = .true.
/

&inputpp
   outdir         = './'
   prefix         = 'di'
   seedname       = 'pristine-unit-up'
   spin_component = 'up'
   write_mmn      = .true.
   write_amn      = .true.
   write_unk      = .true.
/

And finally the .win input files are identical (between spin up and down)

num_bands         =   24
num_wann          =   16
num_iter      =   140
iprint = 3
translate_home_cell = .true.
write_xyz = .true.
wannier_plot = .true.
wannier_plot_supercell = 1

begin projections
random
end projections

mp_grid   : 1 1 1
gamma_only : true

begin kpoints
0.0 0.0 0.0
end kpoints

begin atoms_frac
C 0.00000000 0.00000000 0.0000000
C   0.25000000  0.25000000  0.2500000
C   0.50000000  0.50000000  0.0000000
C   0.75000000  0.75000000  0.2500000
C   0.50000000  0.00000000  0.5000000
C   0.75000000  0.25000000  0.7500000
C   0.00000000  0.50000000  0.5000000
C   0.25000000  0.75000000  0.7500000
end atoms_frac

begin unit_cell_cart
bohr
6.7425540  0.0000000  0.0000000
0.0000000  6.7425540  0.0000000
0.0000000  0.0000000  6.7425540
end unit_cell_cart

*And finally I do*
wannier90.x pristine-unit-up
wannier90.x pristine-unit-dn
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20200309/7be79fb1/attachment.html>


More information about the users mailing list