An updated version of wannier90: A tool for obtaining maximally-localised Wannier functions

Arash A. Mostofi, Jonathan R. Yates, Giovanni Pizzi, Young Su Lee, Ivo Souza, David Vanderbilt, Nicola Marzari

Research output: Contribution to journalArticlepeer-review

838 Scopus citations


wannier90  is a program for calculating maximally-localised Wannier functions (MLWFs) from a set of Bloch energy bands that may or may not be attached to or mixed with other bands. The formalism works by minimising the total spread of the MLWFs in real space. This is done in the space of unitary matrices that describe rotations of the Bloch bands at each k-point. As a result, wannier90  is independent of the basis set used in the underlying calculation to obtain the Bloch states. Therefore, it may be interfaced straightforwardly to any electronic structure code. The locality of MLWFs can be exploited to compute band-structure, density of states and Fermi surfaces at modest computational cost. Furthermore, wannier90  is able to output MLWFs for visualisation and other post-processing purposes. Wannier functions are already used in a wide variety of applications. These include analysis of chemical bonding in real space; calculation of dielectric properties via the modern theory of polarisation; and as an accurate and minimal basis set in the construction of model Hamiltonians for large-scale systems, in linear-scaling quantum Monte Carlo calculations, and for efficient computation of material properties, such as the anomalous Hall coefficient. We present here an updated version of wannier90, wannier90  2.0, including minor bug fixes and parallel (MPI) execution for band-structure interpolation and the calculation of properties such as density of states, Berry curvature and orbital magnetisation. wannier90  is freely available under the GNU General Public License from New version program summary Program title: wannier90 Catalogue identifier: AEAK_v2_0 Program summary URL: Program obtainable from: CPC Program Library, Queen's University, Belfast, N. Ireland Licensing provisions: GNU General Public License, version 2 No. of lines in distributed program, including test data, etc.: 930 386 No. of bytes in distributed program, including test data, etc.: 47 939 902 Distribution format: tar.gz Programming language: Fortran90, perl. Computer: Any architecture with a Fortran 90 compiler. Operating system: Linux, Windows, Solaris, AIX, Tru64 Unix, OSX. Has the code been vectorised or parallelized?: Yes, parallelized using MPI. RAM: 10 Mb Classification: 7.3. External routines: • BLAS (http://www/• LAPACK (• MPI libraries (optional) for parallel execution

Original languageEnglish (US)
Pages (from-to)2309-2310
Number of pages2
JournalComputer Physics Communications
Issue number8
StatePublished - Aug 1 2014

All Science Journal Classification (ASJC) codes

  • Hardware and Architecture
  • Physics and Astronomy(all)


  • Density-functional theory
  • Electronic structure
  • Maximally-localised Wannier function


Dive into the research topics of 'An updated version of wannier90: A tool for obtaining maximally-localised Wannier functions'. Together they form a unique fingerprint.

Cite this