sisl_toolbox.siesta.atom.AtomInput

class sisl_toolbox.siesta.atom.AtomInput(atom, define=('NEW_CC', 'FREE_FORMAT_RC_INPUT', 'NO_PS_CUTOFFS'), **opts)[source]

Bases: object

Input for the atom program see [AtomLicense]

This class enables the construction of the INP file to be fed to atom.

# Example input for ATOM
#
#  Comments allowed here
#
#   ae Si ground state all-electron
#   Si   car
#       0.0
#    3    2
#    3    0      2.00      0.00
#    3    1      2.00      0.00
#
# Comments allowed here
#
#2345678901234567890123456789012345678901234567890      Ruler

References

AtomLicense

https://siesta.icmab.es/SIESTA_MATERIAL/Pseudos/atom_licence.html

Methods

ae([filename, path])

excite(*charge, **lq)

Excite contained atom to another charge

from_input(inp)

Return atom object respecting the input

from_yaml(file[, nodes])

Parse the yaml file

pg([filename, path])

plot([path, plot, l, show])

Plot everything related to this psf file

write_all_electron(f[, charges])

write_generation(f)

write_header(f)

write_test(f[, charges])

__call__(filename='INP', path=None)[source]

Open a file and return self

__init__(atom, define=('NEW_CC', 'FREE_FORMAT_RC_INPUT', 'NO_PS_CUTOFFS'), **opts)[source]
ae(filename='INP', path=None)[source]
excite(*charge, **lq)[source]

Excite contained atom to another charge

Notes

This is charge, not electrons.

classmethod from_input(inp)[source]

Return atom object respecting the input

Parameters

inp (list or str) – create AtomInput from the content of inp

classmethod from_yaml(file, nodes=())[source]

Parse the yaml file

pg(filename='INP', path=None)[source]
plot(path=None, plot=('wavefunction', 'charge', 'log', 'potential'), l='spdf', show=True)[source]

Plot everything related to this psf file

Parameters
  • path (str or pathlib.Path, optional) – from which directory should files be read

  • plot (list-like of str, optional) – which data to plot

  • l (list-like, optional) – which l-shells to plot (for those that have l-shell decompositions)

  • show (bool, optional) – call matplotlib.pyplot.show() at the end

Returns

  • fig (figure for axes)

  • axs (axes used for plotting)

write_all_electron(f, charges=(0.0,))[source]
write_generation(f)[source]
write_header(f)[source]
write_test(f, charges=(0,))[source]