Full Potential (lmf) Partial DOS

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.


Building a partial DOS using the lmf code is exemplified in two test cases

$ ~/lm/fp/test/test.fp co 3
$ ~/lm/fp/test/test.fp gas 2

Should you want a more in depth look, or a practical example, these are good places to start. We will use these as a base and go through the steps required to generate the partial DOS.

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.

In this tutorial we will use the material Gallium Arsenide, GaAs. Our input file, created previously, will be referred to as ctrl.gas and should be named as such.

We begin by running lmfa progam 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.gas with the command

$ lmfa gas

We can now proceed with our lmf commands

$ lmf gas
$ lmf gas -vpdos=t --pdos~lcut=2,2,1,1~mode=1 --rs=1,0 -vnit=1

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 partial density of states. Note, this command will generate a dos.gas 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 gas -vpdos=t --pdos~lcut=2,2,1,1~mode=1 --dos:npts=1001:window=-1.2,.7

Which makes use of the previously generated files and generates the dos.gas file which contains our partial DOS information. This can be plotted with your preferred plotting tool, although some manipulation of the data in the file may be required.
Note: if you include rdm in the --dos switch, e.g. ‚ÄČ--dos:rdm:npts=1001:window=-1.2,.7, DOS will be written in the Questaal format for two-dimensional arrays, which is easily parsed by many graphics packages.

The graphics tool fplot will generate a postscript figure. We must first process dos.gas with another program in the suite, pldos, with the command

$ echo 15 7 -1.2 0.7 | pldos -fplot -lst="1;2;3;4;5;6" dos.gas

This generates a script file plot.dos readable by fplot, and some data files in the Questaal format for two-dimensional arrays](/docs/input/data_format/#standard-data-formats-for-2d-arrays). Next follow this with an fplot command

$ fplot -pr10 -f plot.dos

which creates a postscript file, fplot.ps.

Edit This Page