[Wannier] Extracting the tight-binding elements from Wannier90

Alex.Durie alex.durie at open.ac.uk
Tue May 1 21:43:07 CEST 2018


Thanks Giovanni,


I have compared the bandstructure produced by Wannier90 with use_ws_distance = true, and use_ws_distance = false and seem to conclude in this case that it has little effect.


The Hamiltonian at 000 is the following 9x9 Matrix (apologies if it doesn't format well);

     1.54787   -0.0622846   -0.0622845    -0.426436   -0.0622842 -2.93994e-07            0   -0.0622843  2.93994e-07
  -0.0622846      1.54787    0.0622846   -0.0622845    -0.426436  1.46997e-07  7.34986e-08    0.0622845 -7.34986e-08
  -0.0622845    0.0622846      1.54787   -0.0622846    0.0622845  2.20496e-07            0    -0.426436  7.34986e-08
   -0.426436   -0.0622845   -0.0622846      1.54787   -0.0622845 -2.20496e-07            0   -0.0622843  1.46997e-07
  -0.0622842    -0.426436    0.0622845   -0.0622845      1.54787  2.93994e-07  7.34986e-08    0.0622844 -7.34986e-08
-2.93994e-07  1.46997e-07  2.20496e-07 -2.20496e-07  2.93994e-07      1.00461            0  2.93994e-07            0
           0  7.34986e-08            0            0  7.34986e-08            0      1.00461            0            0
  -0.0622843    0.0622845    -0.426436   -0.0622843    0.0622844  2.93994e-07            0      1.54787  1.46997e-07
 2.93994e-07 -7.34986e-08  7.34986e-08  1.46997e-07 -7.34986e-08            0            0  1.46997e-07      1.00461

if it's relevant, here is the Wannier90 output;


 Final State
  WF centre and spread    1  (  0.000985,  0.685469, -0.000344 )     1.10271947
  WF centre and spread    2  (  0.000151,  0.000345,  0.685467 )     1.10267618
  WF centre and spread    3  ( -0.685461,  0.000990,  0.000152 )     1.10266654
  WF centre and spread    4  ( -0.000992, -0.685461,  0.000345 )     1.10264952
  WF centre and spread    5  ( -0.000155, -0.000348, -0.685468 )     1.10269372
  WF centre and spread    6  (  0.000001,  0.000000,  0.000000 )     0.41116932
  WF centre and spread    7  (  0.000001,  0.000001,  0.000000 )     0.41116778
  WF centre and spread    8  (  0.685471, -0.000997, -0.000152 )     1.10270517
  WF centre and spread    9  (  0.000000,  0.000002,  0.000000 )     0.41116957
  Sum of centres and spreads (  0.000000,  0.000001,  0.000000 )     7.84961726

         Spreads (Ang^2)       Omega I      =     5.946718268
        ================       Omega D      =     0.014524748
                               Omega OD     =     1.888374247
    Final Spread (Ang^2)       Omega Total  =     7.849617263

 Translated centres
    translation centre in fractional coordinate:  0.000000  0.000000  0.000000
  WF centre     1  (  0.000985,  0.685469, -0.000344 )
  WF centre     2  (  0.000151,  0.000345,  0.685467 )
  WF centre     3  ( -0.685461,  0.000990,  0.000152 )
  WF centre     4  ( -0.000992, -0.685461,  0.000345 )
  WF centre     5  ( -0.000155, -0.000348, -0.685468 )
  WF centre     6  (  0.000001,  0.000000,  0.000000 )
  WF centre     7  (  0.000001,  0.000001,  0.000000 )
  WF centre     8  (  0.685471, -0.000997, -0.000152 )
  WF centre     9  (  0.000000,  0.000002,  0.000000 )

Forgive my naive question, but would it be expected that the Wannier functions have the same centre?

Many thanks,

Alex

________________________________
From: Giovanni Pizzi <giovanni.pizzi at epfl.ch>
Sent: 30 April 2018 11:15:44
To: Alex.Durie
Cc: wannier at lists.quantum-espresso.org
Subject: Re: [Wannier] Extracting the tight-binding elements from Wannier90

Dear Alex,

Maybe this reply answers only partially to your questions, but anyway:

- to get the same interpolation, you should also use the content of the seedname_wsvec.dat file, see se. 8.21 of the user guide http://wannier.org/doc/user_guide.pdf as well as Sec. 9 “Some notes on the interpolation”

Anyway, the difference if you discard these elements should be small (the same as running with use_ws_distance=false or true).

For the non-diagonal elements at R=000: these would be hoping between different Wannier functions (that you project initially with different symmetry). The first option that comes to my mind: are the Wannier functions all at the same center? If not, this might be one cause for a non-zero element. Also, how big are these non-zero elements?

Giovanni


--
Giovanni Pizzi
Theory and Simulation of Materials and MARVEL, EPFL
http://people.epfl.ch/giovanni.pizzi
http://nccr-marvel.ch/en/people/profile/giovanni-pizzi

On 29 Apr 2018, at 23:09, Alex.Durie <alex.durie at open.ac.uk<mailto:alex.durie at open.ac.uk>> wrote:

Dear all,

Forgive the nature of this question, as I know there has been much previous discussion. I am new to Wannier90 and wish to extract the tight-binding parameters to use within my existing C++ code. I am attempting to compare against results that I have obtained using potentials within 'The Handbook of the Bandstructure of Elemental Solids' by D. Papaconstantopoulos.

I thought a good place to start would be bcc Fe spin up. To that end, I have started with input files from example08 with the following additions;


write_hr = true
use_ws_distance = true
bands_plot_mode = cut
dist_cutoff = 5

as I was hoping to use up to second nearest neighbour interactions, and wanted to check the bandstructure was sufficiently accurate.

I have attempted to use the relevant data within seedname_hr.dat to reconstruct the bandstructure in my C++ code to make sure I was building the Hamiltonians correctly and seem to be running into difficulty.

I assumed these were the lines of seedname_hr.dat that were relevant;


    0    0    0    n    m   real    imag
    1    1    1    n    m   real    imag
   -1    1    1    n    m   real    imag
    1   -1    1    n    m   real    imag
    1    1   -1    n    m   real    imag
   -1   -1    1    n    m   real    imag
    1   -1   -1    n    m   real    imag
   -1    1   -1    n    m   real    imag
   -1   -1   -1    n    m   real    imag
    2    0    0    n    m   real    imag
   -2    0    0    n    m   real    imag
    0    2    0    n    m   real    imag
    0   -2    0    n    m   real    imag
    0    0    2    n    m   real    imag
    0    0   -2    n    m   real    imag

but using these values does not yield the same bandstructure as that in iron_up_band.gnu.
Is there some form of reordering required that I have not considered?
Also, at R = 0,0,0 I am getting non-zero off-diagonal elements. Is that an error in output?

Also, I would have expected dist_cutoff = 2.942225 to be suitable to calculate the bandstructure up to second nearest-neighbour, but found that I needed dist_cutoff = 5 to observe non-zero second nearest-neighbour terms in iron_up.wout, under
     "Maximum absolute value of Real-space Hamiltonian at each lattice point"
unless I am misinterpreting the information?

Thanks in advance to anyone who can put me on the right track.

Alex Durie
PhD student
The Open University
United Kingdom

_______________________________________________
Wannier mailing list
Wannier at lists.quantum-espresso.org<mailto:Wannier at lists.quantum-espresso.org>
https://lists.quantum-espresso.org/mailman/listinfo/wannier

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/wannier/attachments/20180501/b90c86ce/attachment-0001.html>


More information about the Wannier mailing list