The Questaal Suite

Table of Contents


The Questaal suite consists of a collection of electronic structure codes based on the local-density approximation (LDA) to density-functional theory (DFT) to solids, with extensions to GW and interface to a Dynamical Mean Field theory code (DMFT) written by K. Haule. Most of the programs in the Questaal suite descended the LMTO methodology developed in the 1980’s by O.K. Andersen’s group in Stuttgart.

This page outlines some of Questaal’s unique features, in particular the ability to carry out quasiparticle self-consistent calculations.

Questaal codes have been written mainly by M. van Schilfgaarde, though many people have made important contributions. Download the package here and see the installation page to install the package.

Augmented Wave Methods

Augmented Wave Methods, originally developed by Slater, partitions space into spheres enclosing around each nucleus, and an “interstitial” region. Basis functions used to solve Schrödinger’s equation consist of a family of smooth envelope functions which carry the solution in the interstitial, and are “augmented” with solutions of the Schrödinger equation (aka partial waves) inside each sphere. The reason for augmentation is to enable basis functions to vary rapidly near nuclei where they must be orthogonalized to core states.

Augmented-wave methods consist of an “atomic” part and a “band” part. The former takes as input a density and finds the partial waves on a numerical radial mesh inside each augmentation sphere and makes the relevant matrix elements needed, e.g. for the hamiltonian or some other property (e.g. optics). The “band’’ part constructs the hamiltonian and diagonalizes the secular matrix made by joining the partial waves to the envelopes.

Solutions of the Schrödinger equations are then piecewise: the envelope functions must be joined differentiably onto the partial waves. Matching conditions determine a secular matrix, so solution of the Schrödinger equation in the crystal for a given potential reduces to an eigenvalue problem.

The choice of envelope function defines the method (Linear Muffin Tin Orbitals, Linear Augmented Plane Waves, Jigsaw Puzzle Orbitals); while partial waves are obtained by integrating the Schrödinger equation numerical on a radial mesh inside the augmentation sphere.

Linear Methods in Band Theory

Nearly all modern electronic structure methods make use of the linear method pioneered by O.K. Andersen. Partial waves are approximated by expanding them in a Taylor series to first order about some “linearization energy.” This is explained in detail in Richard Martin’s book, Electronic Structure.

The linear approximation rests on the fact that a partial wave for an atom centered at the origin varies slowly with . is expanded in a Taylor series about a linearization energy

Note: in practice the vast majority of methods construct the partial waves from the spherical part of the potential, so that l is a good quantum number. Then each can be integrated independently of the others. Matrix elements of the partial waves are calculated in the full, nonspherical potential.

The linear approximation is usually quite accurate over an energy window where the valence partial wave is “active” (1 or a few Ry for typical s and p states, a few eV for d states of the transition metals). An estimate for this window is given by where potential parameter is called the “small parameter.” Linearization greatly simplifies the secular matrix : it reduces to a linear algebraic eigenvalue problem, which greatly simplifies practical solutions of the Schrödinger equation.

Some elements possess partial waves of very different energies that are both relevant to the total energy or states near the Fermi level. The classic examples of this are Ga and In: both 3d (4d) and 4d (5d) states are relevant. To obtain accurate calculations a third partial wave must be added to the pair in Eq. (1) constituting the linear method. In practice additional partial waves are incorporated by turning them into local orbitals which are confined to the augmentation sphere. This is accomplished by adding a judicious amount of and to the third partial wave, so that its value and slope vanish at the augmentation radius and not spill out into the interstitial. These modified waves are called in the Questaal suite.

Extension of the linear approximation through local orbitals ensures that the eigenvalue problem remains a linear one, albeit at the expense of an increase in the rank of the hamiltonian.

The importance of the linear method to electronic structure cannot be overstated. Slater’s X−α method to approximate the difficult Fock exchange with a simpler functional of the density, which was subsequently formalized into rigorous density-functional theory by Hohenberg and Kohn, taken in combination of the linear method, form the backbone for most of the practical modern electronic structure methods in condensed matter.

The linearization energy of a partial wave of angular momentum l is usually parameterized by codes in the Questaal package through the “continuous principal quantum number” Pl, as described on this page.

Questaal’s Basis Functions

The primary code in the density-functional package (lmf) uses atom-centered functions for envelope functions. They are a convolution of a Hankel and Gaussian function centred at the nucleus. Thus, in contrast to ordinary Hankel functions (the envelope functions of the LMTO method) which are singular at the origin, they resemble Gaussian functions for small r and are smooth everywhere. For large r they behave like ordinary Hankel functions and are better approximations to the wave function than Gaussian orbitals. The mathematical properties of these functions are described in some detail in this J. Math. Phys. paper. The envelope functions are augmented by partial waves inside augmentation spheres, as is customary for all-electron methods. The basis set is described in more detail here.

Such a basis has significant advantages: basis sets are much smaller for a given level of precision. On the other handthey are also more complex.

It is also possible to combine smoothed Hankels and plane waves : the “Planar Muffin Tin” (PMT) basis is another unique feature of this package.

Soon to be completed is a new basis of “Jigsaw Puzzle Orbitals”. JPO’s are based on smooth Hankel functions, but advantageous in two respects: The kinetic energy is by construction made continuous everywhere, significantly increasing the quality of the basis and also first they are combined to make short-ranged functions. Thus they result in a minimal, yet highly accurate basis approaching LAPW precision over an energy window of about 1 Ry around the Fermi level.

Note: some codes in the Questaal suite are based on the Atomic Spheres Approximation: they use LMTO basis sets and make shape approximations to the potential.


lmf carries out augmentation in a manner different than standard augmented wave methods. It somewhat resembles the PAW method, though in the limit of large angular momentum cutoff it has exactly the same behaviour that standard augmented-wave methods do. Thus this scheme is a true augmented wave method, with the advantage that it converges more rapidly with angular momentum cutoff than the traditional approach.

Executable codes in the Questaal suite

The Questaal family of executable programs share a common, elegant input system and has features of a programming language. This reference manual defines the syntax of categories and tokens that make up an input file. The family consists of the following:

  • blm: an input file generator, given structural information. Many of the tutorials use blm.

  • cif2init and cif2site: convert structural information contained in cif files to a form readable by Questaal. poscar2init and poscar2site: perform a similar function, reading VASP POSCAR files.

  • lmf: the standard full-potential LDA band program. It has a companion program lmfa to calculate starting wave functions for free atoms and supply parameters for the shape of envelope functions. See this page for a basic tutorial.

  • lmgw1-shot and lmgwsc: scripts that perform GW calculations (one-shot or self-consistent), or properties related to GW. The interface connecting to the GW code is lmfgwd. A basic tutorial for the GW package can be found on this web page.

  • lm: a density functional band program based on the Atomic Spheres Approximation (ASA). It requires a companion program lmstr to make structure constants for it. A basic tutorial can be found here.

  • lmgf: a density functional Green’s function code based on the ASA. Its unique contribution to the suite is that it permits the calculation of magnetic exchange interactions, and has an implementation of the coherent potential approximation to treat chemical and/or spin disorder. A tutorial can be found here.

  • lmpg: a program similar to lmgf, but it is designed for layered structures with periodic boundary conditions in two dimensions. It can calculate transport using the Landauer-Buttiker formalism, and has a non-equilibrium capability. It is documented in more detail here.

  • lmfdmft: the main interface that links to the DMFT capabilities. This page serves both as documentation and tutorial.

  • tbe: an efficient band structure program that uses empirical tight-binding hamiltonians. One unique feature of this package is that self-consistent calculations can be done (important for polar compounds), and includes Hubbard parameters. It is also highly parallelized, and versions can be built that work with GPU’s. tbe has a tutorial.

  • lmdos: generates partial densities of states. It is run as a post-processing step after execution of lmf, lm, or tbe.

  • lmfgws: a postprocessing code run after a GW calculation to analyze spectral functions.

  • lmscell: a supercell maker.

  • lmchk: a neighbor table generator and augmentation sphere overlap checker. There is an option to automatically determine sphere radii, and another option to locate interstitial sites where empty spheres or floating orbitals may be placed — important for ASA and some GW calculations.

  • rdcmd: a command reader, similar to a shell, but uses Questaal’s parser and programming language.

  • lmxbs: generates input for the graphics program xbs written by M. Methfessel, which draws pictures of crystals.

  • lmmc: a (fast) LDA-based molecules program (not documented).

There are other auxiliary programs, such as a formatter for setting up energy bands and a graphics program similar to gnuplot.

Input System

All executables use a common input system. It is a unique system that parses input in a largely format-free, tree-structured format. Input is read through a preprocessor with programming language capability: lines can be conditionally read, you can declare variables and use algebraic expressions. Thus the input file can be quite simple as it is in this introductory tutorial, or very detailed, even serving as a database for many materials. This page and this tutorial explain how an input file is structured, and how input is organized by categories and tokens.

Other Resources

  1. This book chapter describes the theory of the lmf code. It is a bit dated but the basics are unchanged. M. Methfessel, M. van Schilfgaarde, and R. A. Casali, ``A full-potential LMTO method based on smooth Hankel functions,’’ in Electronic Structure and Physical Properties of Solids: The Uses of the LMTO Method, Lecture Notes in Physics, 535, 114-147. H. Dreysse, ed. (Springer-Verlag, Berlin) 2000.

  2. The mathematics of smoothed Hankel functions that form the lmf basis set are described in this paper: E. Bott, M. Methfessel, W. Krabs, and P. C. Schmid, Nonsingular Hankel functions as a new basis for electronic structure calculations, J. Math. Phys. 39, 3393 (1998)

  3. This classic paper established the framework for linear methods in band theory: O. K. Andersen, “Linear methods in band theory,” Phys. Rev. B12, 3060 (1975)

  4. This paper lays out the framework for screening the LMTO basis into a tight-binding form: O. K. Andersen and O. Jepsen, “Explicit, First-Principles Tight-Binding Theory,” Phys. Rev. Lett. 53, 2571 (1984)

  5. This paper explains how LAPW and generalized LMTO methods can be joined: T. Kotani and M. van Schilfgaarde, A fusion of the LAPW and the LMTO methods: the augmented plane wave plus muffin-tin orbital (PMT) method, Phys. Rev. B81, 125117 (2010)

  6. This paper presented the first description of an all-electron GW implementation in a mixed basis set: T. Kotani and M. van Schilfgaarde, All-electron GW approximation with the mixed basis expansion based on the full-potential LMTO method, Sol. State Comm. 121, 461 (2002).

  7. These papers established the framework for QuasiParticle Self-Consistent GW theory: Sergey V. Faleev, Mark van Schilfgaarde, Takao Kotani, All-electron self-consistent _GW approximation: Application to Si, MnO, and NiO_, Phys. Rev. Lett. 93, 126406 (2004); M. van Schilfgaarde, Takao Kotani, S. V. Faleev, Quasiparticle self-consistent GW theory, Phys. Rev. Lett. 96, 226402 (2006)

  8. Questaal’s GW implementation is based on this paper: Takao Kotani, M. van Schilfgaarde, S. V. Faleev, Quasiparticle self-consistent GW method: a basis for the independent-particle approximation, Phys. Rev. B76, 165106 (2007)

  9. This paper shows results from LDA-based GW, and its limitations: M. van Schilfgaarde, Takao Kotani, S. V. Faleev, Adequacy of Approximations in GW Theory, Phys. Rev. B74, 245125 (2006)

  10. This book explains the ASA-Green’s function formalism, including the coherent potential approximation: I. Turek et al., Electronic strucure of disordered alloys, surfaces and interfaces (Kluwer, Boston, 1996).

Edit This Page