# The Questaal Suite

### Table of Contents

- Introduction
- Augmented Wave Methods
- Questaal’s Basis Functions
- Augmentation
- Executable codes in the Questaal suite
- Input System
- Other Resources

### Introduction

The Questaal suite consists of a collection of electronic structure codes for crystals, based on the local-density approximation (LDA) to density functional theory, with extensions to *GW*, particularly Quasiparticle Self-Consistent *GW* approximation. It also has an interface to several Dynamical Mean Field theory packages (DMFT), making it possible to combine QS*GW* or density functional theory with DMFT. This news highlight outlines some of Questaal’s unique features, in particular it ability to carry out quasiparticle self-consistent calculations, and combine it with DMFT and extensions. See also this psi-k highlight.

Most of the programs in the Questaal suite descended from the LMTO formalism developed in the 1980’s by O.K. Andersen’s group in Stuttgart. Questaal codes have been written mainly by M. van Schilfgaarde, though many people have made important contributions. To download the package follow this link.

This paper is the main reference for the Questaal package:

Dimitar Pashov, Swagata Acharya, Walter R. L. Lambrecht, Jerome Jackson, Kirill D. Belashchenko, Athanasios Chantis, Francois Jamet, Mark van Schilfgaarde, *Questaal: a package of electronic structure methods based on the linear muffin-tin orbital technique*, Comp. Phys. Comm. **249**, 107065 (2019). https://doi.org/10.1016/j.cpc.2019.107065

If you disseminate results generated by Questaal codes for any purpose, please refer to this paper.

### 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 solutions to the radial Schrodinger equation inside a spherically symmetric potential, subject to some boundary condition to suit a particular purpose. One boundary condition can be a “linearization energy” chosen to be near the states of interest (typically the middle of the occupied part of the energy bands). The linear approximation abounts to expanding in a Taylor series to first order about . 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 3*d* (4*d*) and 4*d* (5*d*) 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” *P _{l}*, 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, taking only the spherical part of the potential inside each augmentation sphere, and neglecting the interstitial. Because of the latter, and because the system must conserve charge, the sum-of-sphere volumes must equal the unit cell volume. This causes geometry violations, which can become severe unless sites are reasonably close packed. If this happens you will need to alleviate the problem by including additional fictitious atoms (“empty spheres”) with atomic number zero.

### Augmentation

*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. For details see Sec. 3.6 of Ref. 1.

### Executable codes in the Questaal suite

The Questaal family consists of a large number of executables, and some interfaces to DMFT not contained in Questaal itself. Most of executable programs share a common, elegant input system, which 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. For an illustration, see this tutorial.*lmchk*: performs numerous functions related to crystal structure, including making neighbor tables and bond angles, and checking augmentation sphere overlaps. 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. This can be important when codes that make the Atomic Spheres Approximation (ASA) are applied to systems that are not fairly closed packed. In the full-potential context in open systems, sometimes the basis needs to be slighly enhanced for accurate*GW*calculations. See this tutorial and this tutorial for the basics, and this one for an advanced application. In the full potential context, this page provides an additional discussion. //: This tutorial uses them in the study of a heterojunction.*lmf*: the standard full-potential LDA band program. This section describes other executables that are part of this suite. See also this page for a basic tutorial.*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; a tutorial can be found here.*lmgw*,*lmgw1-shot*and*lmgwsc*,*lmfgw*: 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.*lmfgw*is a next-generation many-body code code under development that will supersede the older ones.*lmfgws*: analyses spectral functions of interacting hamiltonians. It is run a post-processing utility after a GW or DMFT (but not CPA) calculation. It is used in this tutorial.*lmdos*: generates partial densities of states. It is run as a post-processing step after execution of*lmf*,*lm*, or*tbe*. This tutorial illustrates several contexts for which*lmdos*can be used.*lmscell*: a supercell maker. It has two main branches: making supercells and superlattices. It is documented on this page.*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.*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. A path integrals formulation to account for quantum nuclear motion has been implemented.*tbe*has a tutorial.*lmmc*: a (fast) LDA-based molecules program (not documented).

There are other auxiliary programs, such as a formatter *plbnds* for setting up energy band plots, *pldos* for setting up figures for partial density-of-states, a matrix calculator *mcx*, and a graphics utility *fplot*, 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

This is the main paper describing Questaal’s features. Dimitar Pashov, Swagata Acharya, Walter R. L. Lambrecht, Jerome Jackson, Kirill D. Belashchenko, Athanasios Chantis, Francois Jamet, Mark van Schilfgaarde,

*Questaal: a package of electronic structure methods based on the linear muffin-tin orbital technique*, Comp. Phys. Comm.**249**, 107065 (2020).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.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)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)

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)

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)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*, Sol. State Comm. 121, 461 (2002).*GW*approximation with the mixed basis expansion based on the full-potential LMTO methodThese 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)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)This paper shows results from LDA-based GW, and its limitations: M. van Schilfgaarde, Takao Kotani, S. V. Faleev,

*Adequacy of Approximations in*, Phys. Rev. B74, 245125 (2006)*GW*TheoryThis 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).