eigSileSiesta

class sisl.io.siesta.eigSileSiesta(filename, mode='r', comment=None, *args, **kwargs)[source]

Eigenvalues as calculated in the SCF loop, easy plots using sdata

The .EIG file from Siesta contains the eigenvalues for k-points used during the SCF. Using the command-line utility sdata one may plot the eigenvalue spectrum to visualize the spread of eigenvalues.

sdata siesta.EIG --plot
# or to save to png file
sdata siesta.EIG --plot eig_spread.png

One may also plot the DOS using the eigenvalues and the k-point weights:

sdata siesta.EIG --dos
# or to save to png file
sdata siesta.EIG --dos dos.png

This will default to plot the DOS using these parameters: dE = 5 meV, kT = 300 K (25 meV), Gaussian distribution and in the full energy-range of the eigenvalue spectrum. By default the k-point weights will be read in the *.KP file, however if the file does not exist one may use the option --kp-file FILE to read in the weights from FILE.

To limit the shown energy region, simply use:

sdata siesta.EIG -E -10:10 --dos

to reduce to the -10 eV to 10 eV energy range.

One may optionally choose the temperature smearing and the used distribution function:

sdata siesta.EIG -E -10:10 --dos 0.01 0.1 lorentzian

which will calculate the DOS in steps of 10 meV, the temperature smearing is 0.1 eV and the used distribution is a Lorentzian.

Attributes

base_file

File of the current Sile

file

File of the current Sile

Methods

__init__(self, filename[, mode, comment])

Initialize self.

dir_file(self[, filename])

File of the current Sile

exist(self)

Query whether the file exists

read(self, \*args, \*\*kwargs)

Generic read method which should be overloaded in child-classes

read_data(self)

Read eigenvalues, as calculated and written by Siesta

write(self, \*args, \*\*kwargs)

Generic write method which should be overloaded in child-classes

property base_file

File of the current Sile

dir_file(self, filename=None)

File of the current Sile

exist(self)

Query whether the file exists

property file

File of the current Sile

read(self, *args, **kwargs)

Generic read method which should be overloaded in child-classes

Parameters
kwargs :

keyword arguments will try and search for the attribute read_<> and call it with the remaining **kwargs as arguments.

read_data(self)[source]

Read eigenvalues, as calculated and written by Siesta

Returns
numpy.ndarrayall eigenvalues, shifted to \(E_F = 0\), shape (ns, nk, no)

where ns number of spin-components, nk number of k-points and no number of orbitals.

write(self, *args, **kwargs)

Generic write method which should be overloaded in child-classes

Parameters
**kwargs :

keyword arguments will try and search for the attribute write_ and call it with the remaining **kwargs as arguments.