Input/Output
Available files for reading/writing
sisl
handles a large variety of input/output files from a large selection
of DFT software and other post-processing tools.
In sisl
all files are conventionally named siles
to distinguish them from files from other packages.
All files are generally accessed through the get_sile
method
which exposes all siles through their extension recognition.
The current procedure for determining the file type is based on these steps:
Extract the extension of the filename passed to
get_sile
, for instancehello.grid.nc
will both examine extensions ofgrid.nc
andnc
. This is necessary for leveled extensions.Determine whether there is some specification in the file name
hello.grid.nc{<specification>}
where<specification>
can be:contains=<name>
(or simply<name>
) the class name must contain<name>
endswith=<name>
the class name must end with<name>
startswith=<name>
the class name must start with<name>
When a specification is used, only siles that obey that specification will be searched for the extension. This may be particularly useful when there are multiple codes using the same extension. For instance output files exists in several of the code bases.
Search all indexed (through
add_sile
) siles which obey the specification (all if no specifier) and collect all that matches the longest extension found.If there is only 1 match, then return that class. If there are multiple
sisl
will try allread_*
methods and if all fail, then the sile will be removed from the eligible list.
- Basic IO methods/classes
- Generic files
- BigDFT
- DFTB+
- FHIaims
- GULP
- OpenMX
- ORCA
- ScaleUP
- Siesta
- sisl.io.siesta.aniSileSiesta
- sisl.io.siesta.fdfSileSiesta
- sisl.io.siesta.stdoutSileSiesta
- sisl.io.siesta.xvSileSiesta
- sisl.io.siesta.bandsSileSiesta
- sisl.io.siesta.eigSileSiesta
- sisl.io.siesta.pdosSileSiesta
- sisl.io.siesta.gridSileSiesta
- sisl.io.siesta.gridncSileSiesta
- sisl.io.siesta.onlysSileSiesta
- sisl.io.siesta.dmSileSiesta
- sisl.io.siesta.hsxSileSiesta
- sisl.io.siesta.wfsxSileSiesta
- sisl.io.siesta.ncSileSiesta
- sisl.io.siesta.ionxmlSileSiesta
- sisl.io.siesta.ionncSileSiesta
- sisl.io.siesta.orbindxSileSiesta
- sisl.io.siesta.faSileSiesta
- sisl.io.siesta.fcSileSiesta
- sisl.io.siesta.kpSileSiesta
- sisl.io.siesta.rkpSileSiesta
- sisl.io.siesta.structSileSiesta
- sisl.io.siesta.timesSileSiesta
- TranSiesta
- TBtrans
- PHtrans
- VASP
- Wannier90