Full Potential (lmf) Mulliken Analysis

Table of Contents


This tutorial assumes you have cloned and built the lm repository (located here). For the purpose of demonstration, ~/lm will refer to the location of the cloned repository (source directory). In practice, this directory can be named differently.

All instances of commands assume the starting position is your build directory (this can be checked with the pwd command). In this tutorial it will be called ~/build/.

$ cd ~/build/

with ~/build/ being the directory the lm repository was built in to.

Note: the build directory should be different from the source directory.


In order to perform a Mulliken analysis using the lmf code an input file is needed for the material of which the partial DOS should be found. A tutorial detailing the steps required to generate a basic input file can be found here. While this tutorial concerns itself with Cr3Si6, the steps involved are applicable to most other materials.

For the Mulliken analysis tutorial we will use the material Iron, Fe, and thus base our tutorial around the fe 2 test case. Our input file, created previously, will be referred to as ctrl.fe and should be named as such.

We begin by running lmfa program which needs to be run before any lmf process in order to generate the free-atom densities which, in our case, is generated in to the file atm.fe with the command

$ lmfa fe

We can now proceed with our lmf commands

$ lmf fe
$ lmf --rs=0 --cls:1,1,2 --mull:mode=2 -vnk=6 -vnit=1 fe

Note that the lmf command is run twice - this is intended; the first run ensures a self-consistent solution. This will generate a variety of files needed to build our weights file for Mulliken analysis. Note, this command will generate a dos.fe file. This file is not our partial density of states but rather the full density of states file, the next command will overwrite this file.

We then run

$ lmdos --nosym --mull:mode=2 --dos:npts=1001:window=-.7,.8 -vnk=6 fe

Which makes use of the previously generated files and generates the dos.fe file which contains our Mulliken DOS. This can be plotted with your preferred plotting tool, although some manipulation of the data in the file may be required.

A plotting tool is included in the suite, fplot, which can be used to generate a postscript file. We must first prepare the dos.fe file with another program in the suite, pldos, with the command

$ echo 20 10 -0.7 .8 | pldos -fplot -lst="1:7:2,19:31:2;9,11,15;13,17" -lst2 dos.fe

Which generates a plot.dos file readable by fplot. We follow this with an fplot command

$ fplot -disp -pr10 -f plot.dos

Which should result in a viewable image of the Mulliken DOS.

See Table of Contents

Other Resources

This tutorial on ferromagnetic Fe use the optics branch of the code to make densities-of-states and a limited ability for Mulliken analysis. Doing DOS or Mulliken analysis using the optics code enables you to resolve these quantities by wave number k.

Performing a Mulliken analysis using the lmf code is exemplified in three test cases

$ ~/lm/fp/test/test.fp fe 2
$ ~/lm/fp/test/test.fp cr3si6 2
$ ~/lm/fp/test/test.fp gdn 2

Should you want a more in depth look, or a practical example, these are good places to start. You will find that the primary difference between this process and that of a standard partial DOS (see the tutorial linked in the ‘Preliminaries’ section) is the use of the --mull switch.

Note: These test cases are not pedagogical, they are useful to verify the code works and to extract data.

Edit This Page