Chengcheng-Xiao / VASP2WAN90_v2_fix

An updated version of the VASP2WANNIER90v2 interface
87 stars 37 forks source link

Plotting MLWFs #18

Closed shahid-sattar closed 1 year ago

shahid-sattar commented 1 year ago

Hi Xiao, Hope you are good. I want to plot and visualize the spread of maximally localized wannier functions (though I can see the latter in the output file). If you don't mind sharing what workflow I should follow? For example, Step 1: SOC-SCF calculation Step 2: Reading SOC-SCF with ICHARG=11, LWANNIER90=.TRUE. and generating wannier inputs Step 3: ..??? I read that I need to set Wannier_plot=.true. but I am not sure at which step I should do this because this needs UNK files. P.S> I am using vasp5.4.4 compiled with this patch. Thanks in advance.

Chengcheng-Xiao commented 1 year ago

To visualize the MLWF generated by a non-collinear calculation, you need to:

  1. Run SCF with SOC, and generate WAVECAR.
  2. Construct a wannier90.win file with a projection block.
  3. Set the following in the INCAR and make sure that VASP reads the previously generated WAVECAR
    LWANNIER90=.T.
    LWRITE_UNK = .T.

    This will generate a bunch of UNK files with .nc as their file suffix.

  4. modify the wannier90.win file and add:
    wannier_plot = true
    wannier_plot_supercell = ...
    wannier_plot_list = ...
    wannier_plot_format = ...
    wannier_plot_mode = ...
    wannier_plot_spinor_mode = ... 
    wannier_plot_spinor_phase = ...

    then run wannier90.x.

Please refer to Wannier90's user manual for how to set these parameters (most of which the default works just fine).

shahid-sattar commented 1 year ago

Hi, Thanks a lot for detailed response. It is now done. I have been able to also get bandstructure plot with spin expectations using the procedure given in example 1 and 2. May I ask how we can compare this to DFT bandstructure plot having spin expectations? Previously, I used Pyprocar package to plot spin-projected band structure (projected on Sx, Sy, or Sz). But I don't see any option here to project on spin components. Or perhaps I miss something.

Chengcheng-Xiao commented 1 year ago

For band structure with spin expectations, please check out kpath_bands_colour tag in the user manual and example 2.

shahid-sattar commented 1 year ago

Hi, perhaps one last bit, I tried adding LWRITE_UHU=.TRUE. but it seems not writing any uHu files. Is it a two-step process? Screenshot from 2023-06-20 17-33-10

as you described here? I ran vasp as you mentioned with only LWANNIER90=.TRUE., it has written mmn amn eig files. Then I re-ran vasp using both LWANNIER90=.TRUE., LWRITE_UHU=.TRUE. but it didn't work meaning it didn't write UHU files. Can you please comment on the right approach? Thanks in advance,

Chengcheng-Xiao commented 1 year ago

You need to recompile VASP with the patch file from the experimental uhu_uiu branch applied. Since the method that I implemented in the uhu_uiu branch is the same one implemented in WannierBerri and is relatively unstable at the moment, I think it would also be beneficial to give WannierBerri a try.