LWANNIER90: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
Line 5: Line 5:
For {{TAG|LWANNIER90}}=.TRUE., VASP will run <tt>wannier_setup</tt> in library mode (see Chapter 6 of the [http://www.wannier.org/doc/user_guide.pdf WANNIER90 manual]).
For {{TAG|LWANNIER90}}=.TRUE., VASP will run <tt>wannier_setup</tt> in library mode (see Chapter 6 of the [http://www.wannier.org/doc/user_guide.pdf WANNIER90 manual]).


The VASP2WANNIER90 interface will write the following files that WANNIER90 needs as input:
*{{FILE|wannier90.win}}
:'''1'''. If this file does not exist, VASP will create it and write the following information onto it:
num_wann = {{TAG|NBANDS}}
begin unit_cell_cart
  ... ... ...
  ... ... ...
  ... ... ...
end unit_cell_cart
begin atoms_cart
    ... ... ...
    ... ... ...
    ... ... ...
    ... ... ... 
end atoms_cart
mp_grid = .. .. ..
begin kpoints
    ... ... ...
    ... ... ...
    ... ... ...
    ... ... ...
end kpoints
:Where the <tt>unit_cell_cart</tt>, <tt>atoms_cart</tt>, and <tt>kpoints</tt> blocks, and <tt>mp_grid</tt> array, will be set in accordance with the setup of the VASP calculation (''i.e.'', basically the information from the {{FILE|POSCAR}} and {{FILE|KPOINTS}} files). For the meaning of the tags and blocks please refer to the [http://www.wannier.org/doc/user_guide.pdf WANNIER90 manual].
:'''2'''. If the {{FILE|wannier90.win}} file already exists, VASP will only add the the aforementioned information insofar it is not already present. This means that VASP will check, for instance, whether or not the {{FILE|wannier90.win}} file contains a <tt>kpoints</tt>-block, and add one if not. If it finds a <tt>kpoints</tt>-block, however, it will not check whether this block tallies with the present set of '''k'''-points used in the VASP calculation!
:'''3'''. The user may specify any tag and/or block in the {{FILE|wannier90.win}} file that is understood by <tt>wannier_setup</tt> and/or <tt>wannier_run</tt> prior to running VASP and executing the VASP2WANNIER90 interface. The most common example of this is probably the <tt>projections</tt>-block that specifies the initial guess for the maximally localized Wannier functions (see Chapter 3 of the [http://www.wannier.org/doc/user_guide.pdf WANNIER90 manual]).
*{{FILE|wannier90.mmn}}
*{{FILE|wannier90.eig}}
*{{FILE|wannier90.amn}}: if <tt>projections</tt> have been specified in {{FILE|wannier90.win}}.
*{{FILE|wannier90.unk}}: if {{TAG|LWRITE_UNK}}=.TRUE. is set in the {{FILE|INCAR}} file.
----
----
'''Mind''': VASP needs to be compiled with the following additional precompiler flag:
'''Mind''': VASP needs to be compiled with the following additional precompiler flag:
Line 27: Line 62:


== Related Tags and Sections ==
== Related Tags and Sections ==
{{TAG|LWRITE_UNK}},
{{TAG|LWANNIER90_RUN}},
{{TAG|LWANNIER90_RUN}},
[[Installing VASP|Compiling VASP]]
[[Installing VASP|Compiling VASP]]

Revision as of 11:35, 5 April 2011

LWANNIER90 = .TRUE. | .FALSE.
Default: LWANNIER90 = .FALSE. 

Description: LWANNIER90=.TRUE. switches on the interface between VASP and WANNIER90.


For LWANNIER90=.TRUE., VASP will run wannier_setup in library mode (see Chapter 6 of the WANNIER90 manual).

The VASP2WANNIER90 interface will write the following files that WANNIER90 needs as input:

1. If this file does not exist, VASP will create it and write the following information onto it:
num_wann = NBANDS

begin unit_cell_cart
  ... ... ...
  ... ... ...
  ... ... ...
end unit_cell_cart

begin atoms_cart
   ... ... ...
   ... ... ...
   ... ... ...
   ... ... ...  
end atoms_cart

mp_grid = .. .. ..

begin kpoints
   ... ... ...
   ... ... ...
   ... ... ...
   ... ... ...
end kpoints
Where the unit_cell_cart, atoms_cart, and kpoints blocks, and mp_grid array, will be set in accordance with the setup of the VASP calculation (i.e., basically the information from the POSCAR and KPOINTS files). For the meaning of the tags and blocks please refer to the WANNIER90 manual.
2. If the wannier90.win file already exists, VASP will only add the the aforementioned information insofar it is not already present. This means that VASP will check, for instance, whether or not the wannier90.win file contains a kpoints-block, and add one if not. If it finds a kpoints-block, however, it will not check whether this block tallies with the present set of k-points used in the VASP calculation!
3. The user may specify any tag and/or block in the wannier90.win file that is understood by wannier_setup and/or wannier_run prior to running VASP and executing the VASP2WANNIER90 interface. The most common example of this is probably the projections-block that specifies the initial guess for the maximally localized Wannier functions (see Chapter 3 of the WANNIER90 manual).

Mind: VASP needs to be compiled with the following additional precompiler flag:

-DVASP2WANNIER90

and the variable LIB in the makefile must contain an entry that points to libwannier.a.

For instance:

LIB     = -L../vasp.5.lib -ldmy  \
     ../vasp.5.lib/linpack_double.o $(SCA) $(LAPACK) $(BLAS)

might be changed to

LIB     = -L../vasp.5.lib -ldmy  \
     ../vasp.5.lib/linpack_double.o ../wannier90-1.2/libwannier.a $(SCA) $(LAPACK) $(BLAS)

depending on where you have installed WANNIER90, obviously.


Related Tags and Sections

LWRITE_UNK, LWANNIER90_RUN, Compiling VASP


Contents