quanshengwu / wannier_tools

WannierTools: An open-source software package for novel topological materials. Full documentation:
http://www.wanniertools.org
GNU General Public License v3.0
255 stars 142 forks source link

Any questions about WannierTools can be posted here #1

Closed quanshengwu closed 7 years ago

lilei12 commented 8 years ago

Mr Wu, I‘m using wann_tools to calculate the Wannier center. The _hr.dat file is calculated from qunatum_espresso and wannier90. When I calculate the Wannier center, in principle, at time reversal invariant point such as ky = 0 or 0.5, the Wannier center should be degeneracy. But my results not were degeneracy. What causes this result?

quanshengwu commented 8 years ago

@lilei12
I met the same problem before. I think it is because the quality of wannier functions is not good. You can check the Wannier Spread of each Wannier functions in wannier90.wout. If the spread of the up orbital and down orbital has the same position and the same spread, then the WCCs should be degenerate at the TRIM point. Otherwise, they don't.

For the tips to construct the WFs.

  1. Do DFT calculation with full k points, not the irreducible BZ.
  2. Choose the appropriate entanglement window and frozen window
  3. Choose more project orbitals if possible.
lilei12 commented 8 years ago

Thank you for your answer. Maybe the quality of wannier functions is not good. I will adjust some parameters to improve the quality of wannier function.

sfragkos commented 7 years ago

Does anyone know with what criteria i choose the Energy Windows' dimensions in Wannier90 input? Because i cant find the right, either i get " More states in the frozen window than target WFs" or "Less ... ".

quanshengwu commented 7 years ago

I think the criteria is that the energy bands in the frozen window should less than the target WFs.

sfragkos commented 7 years ago

its an important parameter? Can i remove it and leave it by default?

quanshengwu commented 7 years ago

It's important. However, If you don't care that much about the quality of WFs, in principle, you can ignore it. Wannier90 would give you WFs anyway.

sfragkos commented 7 years ago

How can i remove the low energy bands like those at -10 eV, and concetrate at those from -4eV to 4 eV? k1 k2 The first image it's for NSLAB=1 and the second is for NSLAB=40 ... Why i see no difference (except from the color)?

quanshengwu commented 7 years ago

About the bands close to -10eV, you could use exclude_bands in the Wannier function constructions.

About the Nslab=1 and Nslab=40 results. It could happen if your system is a 2D material. There is no coupling between two slabs.

sfragkos commented 7 years ago

Thank you very much for your answer. Yes my material is 2D. So, in order to see Surface States in 2D materials i have to increase the number of layers in VASP and then use Wannier Tools? A few last questions, i saw that you set MAGMOM = 3600 * 0.0 in Bi2Se3 INCAR. What does that mean? Should my INCAR contain LNONCOLLINEAR=.TRUE.? or Wannier90 will do the SOC? because i see in your INCAR that you don't use it

quanshengwu commented 7 years ago

No really, in 2D material, there is only edge states. It means you have to study the side surface. You don't have to construct slab system in VASP calculation.

MAGMOM = 3600*0 means that the initial magnetic momentum is zero. If you set LSORBIT=T, then LNONCOLLINEAR is automatically set to be Ture.

sfragkos commented 7 years ago

so it's like setting MAGMOM = 0 0 0 and SAXIS also zero? I used to set them ON ( MAGMOM = 0 0 1 0 0 1 0 0 1 and SAXIS = 0 0 1 for example ) in SOC calculations with VASP. It's not needed for Wannier calculations? how did 3600 came out?

quanshengwu commented 7 years ago

SAXIS is set by default. MAGMOM=3*0 is the same as MAGMOM= 0 0 0

most of settings in Wannier calculation are the same as SCF calculation. The MAGMOM setting should be the same as well

sfragkos commented 7 years ago

Hey people, Can someone tell me the right SURFACE card to make a ribbon, with these lattice vectors? Because i dont understand very well how it works ribbonek

quanshengwu commented 7 years ago

Please look at this http://www.wanniertools.com/input.html#surface

If you want to study the edge states of a 2D topological insulator, please study the side surface. You don't have to study the ribbon system.

sfragkos commented 7 years ago

For the material that im studying , the bandstructure (with soc) that VASP calculated for 1 layer it's not the same with the 1 slab that Wannier Tools constructed. Their Bulk bandstructures btw are the same. Do you know why?

simonnier commented 7 years ago

Dear developers, I pull the latest version just now and run Bi2Se3 example. I found plotting GapCube.gnu has some bug. It will warn me

gnuplot> set palette defined (     0.4377 "black",     0.1821 "orange",     3.2045  "white" )
                                                                                            ^
         "GapPlane.gnu", line 7: Gray scale not sorted in gradient.

Please check that

simonnier commented 7 years ago

@quanshengwu Dear Developers, What does "_l" and "_r" mean in "surfdos_l.gnu" and "surfdos_r.gnu"? The documentation doesn't say. Thank you so much.

quanshengwu commented 7 years ago

Dear balabi0github,

Thanks for your reporting of the bug. It is now fixed.

"_l", and "_r" represent two dual surfaces.

quanshengwu commented 7 years ago

@sfragkos,

That's possible. Because the tight binding model don't have charge redistribution effect, while DFT does.

If there are some dangling bonds on the surface, I strongly recommend to verify the surface state calculations with DFT.

simonnier commented 7 years ago

@quanshengwu Thank you so much for reply. Yet another question. What is the principle layer mean in your program? According to paper "Highly convergent schemes for the calculation of bulk and surface Green functions", principal layer is a collection of atomic(orbital) layers as a unit that makes hamiltonian block tridiagonal. Base on this definition, I think NP=1 should already accurate and has no difference with higher NP. Am I right? Could you please take Bi2Se3 as an example to illustrate what NP=1 is in Bi2Se3? Thank you so much.

sfragkos commented 7 years ago

Hello people, VASP gives me different Fermi Levels for KGM, HAL, GA, 1 layer etc.... What should i set at Wannier Tools

quanshengwu commented 7 years ago

@sfragkos You should use the value from SCF calculations with dense k-mesh.

quanshengwu commented 7 years ago

@balabi0github If the concept is not clear in WannierTools paper, you could find more information in Sancho, M P Lopez's paper (1985) Journal of Physics F: Metal Physics 15, 851.

NP depend on the localization of the WFs, If WFs are very localized, then NP would be 1. I suggest you increase it to 2 or 3 or 4 to check the change of the surface state spectrum.

sfragkos commented 7 years ago

Is there any way in SlabBand plotting, to give different colors to bands that have different orbitals?

quanshengwu commented 7 years ago

@sfragkos WannierTools only write out the projection onto surface. You could modify the source code ek_slab.f90 directly. Goto surface_weight part, it is not very difficult.

dps77 commented 7 years ago

Could You, please, help with a question, what are units on the color scale for surface dos and Fermi arc calculations?

quanshengwu commented 7 years ago

@dps77 That is the arbitrary unit. The one you plot with is the logarithm of spectrum function.

tmy-cathy commented 6 years ago

Hi, I was using the wannier90 to get the wannier function, but i found the spread of the wannier function is very large. I attempted to change the frozen energy window and change the projection orbitals, but the smallest spread among all of my efforts is still very big. would you give me some advice. I focused on a 2D planar Hexagonal structure and I want to plot its edge state with wannier function. If the spread is too large, the edge state will be effect.


Final State WF centre and spread 1 ( -0.000005, 0.000165, 0.044444 ) 102.79089075 WF centre and spread 2 ( -0.000001, -0.037154, 0.133331 ) 129.88627221 WF centre and spread 3 ( 0.000005, 0.000078, -0.044444 ) 105.88690708 WF centre and spread 4 ( 0.000082, 2.047255, 0.400017 ) 110.61764667 WF centre and spread 5 ( -0.000002, 2.791387, -1.644419 ) 126.95907918 WF centre and spread 6 ( -0.000004, 2.259869, -3.866637 ) 92.65658276 WF centre and spread 7 ( 0.000000, 2.380024, 0.755555 ) 99.92324085 WF centre and spread 8 ( 0.000000, 2.384347, -0.844445 ) 100.21783058 WF centre and spread 9 ( -0.000000, 2.376075, -0.044444 ) 100.61975562 WF centre and spread 10 ( 2.061421, 1.523506, -0.488902 ) 110.53901892 WF centre and spread 11 ( 2.061499, 0.354357, 1.644418 ) 125.41385826 WF centre and spread 12 ( 2.061494, 1.310889, 3.866637 ) 92.65655347 WF centre and spread 13 ( 2.061500, 1.190599, -0.844444 ) 99.78101625 WF centre and spread 14 ( 2.061500, 1.186276, 0.844445 ) 100.21783066 WF centre and spread 15 ( 2.061500, 1.194556, 0.044444 ) 100.61975934 Sum of centres and spreads ( 12.368989, 20.962229, -0.044445 ) 1598.78624259

     Spreads (Ang^2)       Omega I      =    15.703777500
    ================       Omega D      =  1484.000861129
                           Omega OD     =    99.081604005
Final Spread (Ang^2)       Omega Total  =  1598.786242633

tron1989 commented 6 years ago

You'd better put the content in your wannier90.win. Maybe your num_iter = 0 in your wannier90.win, which is the projection of the initial trivial atomic orbitals and not suitable for non isolated entangled multiple bands.

tmy-cathy notifications@github.com 于2018年6月23日周六 上午10:06写道:

Hi, I was using the wannier90 to get the wannier function, but i found the spread of the wannier function is very large. I attempted to change the frozen energy window and change the projection orbitals, but the smallest spread among all of my efforts is still very big. would you give me some advice. I focused on a 2D planar Hexagonal structure and I want to plot its edge state with wannier function. If the spread is too large, the edge state will be effect.

Final State WF centre and spread 1 ( -0.000005, 0.000165, 0.044444 ) 102.79089075 WF centre and spread 2 ( -0.000001, -0.037154, 0.133331 ) 129.88627221 WF centre and spread 3 ( 0.000005, 0.000078, -0.044444 ) 105.88690708 WF centre and spread 4 ( 0.000082, 2.047255, 0.400017 ) 110.61764667 WF centre and spread 5 ( -0.000002, 2.791387, -1.644419 ) 126.95907918 WF centre and spread 6 ( -0.000004, 2.259869, -3.866637 ) 92.65658276 WF centre and spread 7 ( 0.000000, 2.380024, 0.755555 ) 99.92324085 WF centre and spread 8 ( 0.000000, 2.384347, -0.844445 ) 100.21783058 WF centre and spread 9 ( -0.000000, 2.376075, -0.044444 ) 100.61975562 WF centre and spread 10 ( 2.061421, 1.523506, -0.488902 ) 110.53901892 WF centre and spread 11 ( 2.061499, 0.354357, 1.644418 ) 125.41385826 WF centre and spread 12 ( 2.061494, 1.310889, 3.866637 ) 92.65655347 WF centre and spread 13 ( 2.061500, 1.190599, -0.844444 ) 99.78101625 WF centre and spread 14 ( 2.061500, 1.186276, 0.844445 ) 100.21783066 WF centre and spread 15 ( 2.061500, 1.194556, 0.044444 ) 100.61975934 Sum of centres and spreads ( 12.368989, 20.962229, -0.044445 ) 1598.78624259

 Spreads (Ang^2)       Omega I      =    15.703777500
================       Omega D      =  1484.000861129
                       Omega OD     =    99.081604005

Final Spread (Ang^2) Omega Total = 1598.786242633


— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/quanshengwu/wannier_tools/issues/1#issuecomment-399622703, or mute the thread https://github.com/notifications/unsubscribe-auth/ARHqhU3rYOIQxsvgsFmLsYchhh0urR1Tks5t_aK4gaJpZM4H2Jqg .

tmy-cathy commented 6 years ago

@tron1989, thanks so much for your replies. Thank you! As you say, num_iter = 0 in my wannier90.win. I set 0 not the default 200 as a voice of experience that num_iter !=0 may bring mistakes to the evolution of the wannier center. In addition, I tried to set num_iter = 200, even 500, but I find the size of spread did not reduce obviously. So I set num_iter = 0 to overview the reasonableness of the parameter settings in wannier90.win. What's more, I am not sure about the setting of the inner and the outer energy window. What should I take care when setting them.

num_wann = 22 ! set to NBANDS by VASP num_bands=48 !use_bloch_phases = T

dis_num_iter = 2000 num_iter = 0 dis_mix_ratio = 1

dis_win_max = 8 dis_froz_max = -1 dis_win_min = -6 dis_froz_min = -6 hr_plot =.true. write_xyz = .true.

search_shells = 20

tmy-cathy commented 6 years ago

@All. I have another question about the rejection orbitals. Take the silicon as an example, the rejection orbital is sp3 hybrid orbital, which is not same with the s, px, py, pz. What is the choose principle.

tron1989 commented 6 years ago

The initial sp3 for silicon is good, you also should try guiding_centers= true; and be sure the disengtaltment procedure is fully converged.

Also, as the question is about the basic skills on Wannier90, maybe the question posted there will be more usefull for you. Just an adavice.

tmy-cathy notifications@github.com 于2018年6月23日周六 下午4:33写道:

@ALL https://github.com/ALL. I have another question about the rejection orbitals. Take the silicon as an example, the rejection orbital is sp3 hybrid orbital, which is not same with the s, px, py, pz. What is the choose principle.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/quanshengwu/wannier_tools/issues/1#issuecomment-399652582, or mute the thread https://github.com/notifications/unsubscribe-auth/ARHqheprVdhRdESsl2SapiH9w63gKMASks5t_f1CgaJpZM4H2Jqg .

tmy-cathy commented 6 years ago

@All, Thank You very much for your advice and your attention. i applied the wannierTools to plot the side state of a totally planar 2D structure, like Graphene. It is not like MoS2, a given example of wannierTools, which has three atoms along z-direction.

I have two questions. 1st, i have read the user guiding carefully, but i can't still understand why there are MILLER_INDEX and the SURFACE at the same time, because MILLER_INDEX also shows the surface or the edge we what to research. I read the wt.in of MoS2 carefuly, i guess the MILLER_INDEX shows the surface we what to research, but the SURFACE shows the new vector of the surface.

2nd. there are no examples of a single layer, like graphene, is it same with MoS2?

Majeedqau commented 5 years ago

@All, I am a fresh user of wannier_tools. I am confused to undersand some points for which i need your kind help. My confusions are: (1) The value of E_FERMI that we need to set should be taken from DFT-SCF run or from something else? (2) The number of wannier occupied bands which are set under the NumOccupied tags, should be the number of bands below the Fermi level in the wannier90 band structure or something eles? (3) Suppose, if some one interested to calculate Chern number for the band located above the fermi level, then what should we do in that case? In that case whethe, we need to change the value of Fermi level or only the NumOccupied should increase? I would be highly thankful to you if you favour me in this regard. Thank You and looking forward for your nice response

oppsfang commented 3 years ago

@ALL, Thank You very much for your advice and your attention. i applied the wannierTools to plot the side state of a totally planar 2D structure, like Graphene. It is not like MoS2, a given example of wannierTools, which has three atoms along z-direction.

I have two questions. 1st, i have read the user guiding carefully, but i can't still understand why there are MILLER_INDEX and the SURFACE at the same time, because MILLER_INDEX also shows the surface or the edge we what to research. I read the wt.in of MoS2 carefuly, i guess the MILLER_INDEX shows the surface we what to research, but the SURFACE shows the new vector of the surface.

2nd. there are no examples of a single layer, like graphene, is it same with MoS2?

I think the MILLER_INDEX is equal to SURFACE item

falsafi123 commented 2 years ago

@ALL, Thank You very much for your advice and your attention. i applied the wannierTools to plot the side state of a totally planar 2D structure, like Graphene. It is not like MoS2, a given example of wannierTools, which has three atoms along z-direction.

I have two questions. 1st, i have read the user guiding carefully, but i can't still understand why there are MILLER_INDEX and the SURFACE at the same time, because MILLER_INDEX also shows the surface or the edge we what to research. I read the wt.in of MoS2 carefuly, i guess the MILLER_INDEX shows the surface we what to research, but the SURFACE shows the new vector of the surface.

2nd. there are no examples of a single layer, like graphene, is it same with MoS2?

Did you get your answer about Graphene?

Aiswaryat95 commented 10 months ago

i am trying to do the phonon surface states. but i am getting like this, can anyone help how to solve it. i am getting very blur image