sisl.io.siesta.hsxSileSiesta
- class sisl.io.siesta.hsxSileSiesta(filename, mode='r', *args, **kwargs)
Bases:
SileBinSiesta
Hamiltonian and overlap matrix file
This file does not contain all information regarding the system.
To ensure no errors are being raised one should pass a Geometry with correct number of atoms and correct number of supercells. The number of orbitals will be updated in the returned matrices geometry.
>>> hsx = hsxSileSiesta("siesta.HSX") >>> HS = hsx.read_hamiltonian() # may fail >>> HS = hsx.read_hamiltonian(geometry=<>) # should run correctly if above satisfied
Users are adviced to use the
tshsSileSiesta
instead since that correctly contains all information.Plotting
Plotting functions for the
hsxSileSiesta
class.plot.geometry
(*[, ...])Calls
read_geometry
and creates aGeometryPlot
from its output.Methods
base_directory
([relative_to])Retrieve the base directory of the file, relative to the path relative_to
dir_file
([filename, filename_base])File of the current Sile
read
(*args, **kwargs)Generic read method which should be overloaded in child-classes
read_basis
(**kwargs)Reads basis set and geometry information from the HSX file
read_fermi_level
(**kwargs)Reads the fermi level in the file
read_geometry
(**kwargs)Read the geometry from the file
read_hamiltonian
(**kwargs)Returns the electronic structure from the siesta.TSHS file
read_lattice
(**kwargs)Read the lattice from the file
read_overlap
(**kwargs)Returns the electronic structure from the siesta.TSHS file
write
(*args, **kwargs)Generic write method which should be overloaded in child-classes
Attributes
File of the current Sile
File of the current Sile
The version of the file
- base_directory(relative_to='.')
Retrieve the base directory of the file, relative to the path relative_to
- dir_file(filename=None, filename_base='')
File of the current Sile
- plot.geometry(*, data_kwargs={}, axes: Axes = ['x', 'y', 'z'], atoms: AtomsIndex = None, atoms_style: Sequence[AtomsStyleSpec] = [], atoms_scale: float = 1.0, atoms_colorscale: Colorscale | None = None, drawing_mode: Literal['scatter', 'balls', None] = None, bind_bonds_to_ats: bool = True, points_per_bond: int = 20, bonds_style: StyleSpec = {}, bonds_scale: float = 1.0, bonds_colorscale: Colorscale | None = None, show_atoms: bool = True, show_bonds: bool = True, show_cell: Literal['box', 'axes', False] = 'box', cell_style: StyleSpec = {}, nsc: tuple[int, int, int] = (1, 1, 1), atoms_ndim_scale: tuple[float, float, float] = (16, 16, 1), bonds_ndim_scale: tuple[float, float, float] = (1, 1, 10), dataaxis_1d: np.ndarray | Callable | None = None, arrows: Sequence[AtomArrowSpec] = (), backend='plotly') GeometryPlot
Calls
read_geometry
and creates aGeometryPlot
from its output.- Parameters:
axes – The axes to project the geometry to.
atoms – The atoms to plot. If None, all atoms are plotted.
atoms_style – List of style specifications for the atoms. See the showcase notebooks for examples.
atoms_scale – Scaling factor for the size of all atoms.
atoms_colorscale – Colorscale to use for the atoms in case the color attribute is an array of values. If None, the default colorscale is used for each backend.
drawing_mode – The method used to draw the atoms.
bind_bonds_to_ats – Whether to display only bonds between atoms that are being displayed.
points_per_bond – When the points are drawn using points instead of lines (e.g. in some frameworks to draw multicolor bonds), the number of points used per bond.
bonds_style – Style specification for the bonds. See the showcase notebooks for examples.
bonds_scale – Scaling factor for the width of all bonds.
bonds_colorscale – Colorscale to use for the bonds in case the color attribute is an array of values. If None, the default colorscale is used for each backend.
show_atoms – Whether to display the atoms.
show_bonds – Whether to display the bonds.
show_cell – Mode to display the cell. If False, the cell is not displayed.
cell_style – Style specification for the cell. See the showcase notebooks for examples.
nsc – Number of unit cells to display in each direction.
atoms_ndim_scale – Scaling factor for the size of the atoms for different dimensionalities (1D, 2D, 3D).
bonds_ndim_scale – Scaling factor for the width of the bonds for different dimensionalities (1D, 2D, 3D).
dataaxis_1d – Only meaningful for 1D plots. The data to plot on the Y axis.
arrows – List of arrow specifications to display. See the showcase notebooks for examples.
backend – The backend to use to generate the figure.
See also
GeometryPlot
The plot class used to generate the plot.
read_geometry
The method called to get the data.
- read(*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_fermi_level(**kwargs) float [source]
Reads the fermi level in the file
Only valid for files created by Siesta >=5.
- read_geometry(**kwargs) Geometry [source]
Read the geometry from the file
This will always work on new files Siesta >=5, but only sometimes on older versions of the HSX file format.
- read_hamiltonian(**kwargs) Hamiltonian [source]
Returns the electronic structure from the siesta.TSHS file
- read_lattice(**kwargs) Lattice [source]
Read the lattice from the file
This will always work on new files Siesta >=5, but only sometimes on older versions of the HSX file format.
- write(*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.
- property base_file
File of the current Sile
- property file
File of the current Sile
- plot
Plotting functions for the
hsxSileSiesta
class.