buildstatus pypi conda codecov donate

Welcome to sisl documentation!

sisl is a tool to manipulate an increasing amount of density functional theory code input and/or output. It is also a tight-binding code which implements extremely fast and scalable tight-binding creation algorithms (>1,000,000 orbitals). sisl is developed in particular with TBtrans in mind to act as a tight-binding Hamiltonian input engine for N-electrode transport calculations.


sisl consists of several distinct features:

  • Geometries; create, extend, combine, manipulate different geometries readed from a large variety of DFT-codes and/or from generically used file formats.
  • Hamiltonian; easily create tight-binding Hamiltonians with user chosen number of orbitals per atom. Or read in Hamiltonians from DFT software such as SIESTA, Wannier90, etc. Secondly, there is intrinsic capability of orthogonal and non-orthogonal Hamiltonians.
  • Generic output files from DFT-software. A generic set of output files are implemented which provides easy examination of output files.
  • Command line utilities for processing of data files for a wide variety of file formats:
    • sdata Read and transform any sisl data file. This script is capable of handling geometries, grids, special data files such as binary files etc.
    • sgeom a geometry conversion tool which reads and writes many commonly encounted files for geometries, such as XYZ files etc. as well as DFT related input and output files.
    • sgrid a real-space grid conversion tool which reads and writes many commonly encounted files for real-space grids. Mainly targetted SIESTA_.


Follow these steps to install sisl.