|GPL||Wannier90 development team||Github|
Wannier90 is a code for computing the maximally-localized Wannier functions (MLWFs) of a system. It requires a separate electronic structure code to compute and provide information on the Kohn-Sham energy bands. It can operate either as a standalone post-processing utility, reading this information from files, or as a library to be called internally by the electronic structure code.
Wannier90 has a number of features, including a disentanglement scheme for entangled energy bands, optimized Γ-point routines, plotting of the MLWFs, Wannier interpolation to obtain many spectral and Fermi-surface properties at high-resolution in the Brillouin zone, and others. A complete list of features is maintained here.
Wannier90 computes MLWFs following the method of Marzari and Vanderbilt1 (MV). For entangled energy bands, the method of Souza, Marzari, and Vanderbilt2 (SMV) is used. The implementation of these methods for Wannier90 is described here3, and in the user guide (Chapter 1).
The interface for using Wannier90 as a library is described in the user guide (Chapter 6).
The system dependent parameters (e.g. compiler name) are contained in a
make.sys. Sample files may be found in the
directory. Choose one that is nearest to your setup and copy it to
make.sys. You may need to edit it, for example to give the correct
library path for your machine.
On a Linux system with the Intel compiler, build Wannier90 by typing:
cp ./config/make.sys.ifort ./make.sys make
For more detailed installation instructions, see the
file in the source code.
To run the test cases, type:
A. A. Mostofi, J. R. Yates, Y.-S. Lee, I. Souza, D. Vanderbilt,
and N. Marzari,
wannier90: A Tool for Obtaining
Maximally-Localised Wannier Functions, Comput. Phys. Commun.
178, 685 (2008). DOI: