sisl.io.siesta.hsxSileSiesta
- class sisl.io.siesta.hsxSileSiesta
Bases:
SileBinSiesta
Hamiltonian and overlap matrix file
Historically there are several HSX file versions output from Siesta.
Since Siesta 5.3, the HSX file format is containing all the information present in the TranSiesta specific TSHS file-format, plus more information. As such, the TSHS file format is deprecated and will not be used anymore. Therefore users should adapt their workflows to be done with HSX files.
Basically, one should never work with HSX files from Siesta <= 4, since they are not information complete.
Notes
At some point we will deprecate the older HSX file versions (<= 4).
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.HSX file
read_lattice
(**kwargs)Read the lattice from the file
read_overlap
(**kwargs)Returns the electronic structure from the siesta.HSX file
write
(*args, **kwargs)Generic write method which should be overloaded in child-classes
write_hamiltonian
(H, **kwargs)Writes the Hamiltonian to a siesta.HSX file
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=['x', 'y', 'z'], atoms=None, atoms_style=[], atoms_scale=1.0, atoms_colorscale=None, drawing_mode=None, bind_bonds_to_ats=True, points_per_bond=20, bonds_style={}, bonds_scale=1.0, bonds_colorscale=None, show_atoms=True, show_bonds=True, show_cell='box', cell_style={}, nsc=(1, 1, 1), atoms_ndim_scale=(16, 16, 1), bonds_ndim_scale=(1, 1, 10), dataaxis_1d=None, arrows=(), backend='plotly')
Calls
read_geometry
and creates aGeometryPlot
from its output.- Parameters:
axes (Axes) – The axes to project the geometry to.
atoms (AtomsIndex) – The atoms to plot. If None, all atoms are plotted.
atoms_style (Sequence[AtomsStyleSpec]) – List of style specifications for the atoms. See the showcase notebooks for examples.
atoms_scale (float) – Scaling factor for the size of all atoms.
atoms_colorscale (Optional[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 (Literal['scatter', 'balls', None]) – The method used to draw the atoms.
bind_bonds_to_ats (bool) – Whether to display only bonds between atoms that are being displayed.
points_per_bond (int) – 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 (StyleSpec) – Style specification for the bonds. See the showcase notebooks for examples.
bonds_scale (float) – Scaling factor for the width of all bonds.
bonds_colorscale (Optional[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 (bool) – Whether to display the atoms.
show_bonds (bool) – Whether to display the bonds.
show_cell (Literal['box', 'axes', False]) – Mode to display the cell. If False, the cell is not displayed.
cell_style (StyleSpec) – Style specification for the cell. See the showcase notebooks for examples.
nsc (tuple[int, int, int]) – Number of unit cells to display in each direction.
atoms_ndim_scale (tuple[float, float, float]) – Scaling factor for the size of the atoms for different dimensionalities (1D, 2D, 3D).
bonds_ndim_scale (tuple[float, float, float]) – Scaling factor for the width of the bonds for different dimensionalities (1D, 2D, 3D).
dataaxis_1d (Optional[Union[np.ndarray, Callable]]) – Only meaningful for 1D plots. The data to plot on the Y axis.
arrows (Sequence[AtomArrowSpec]) – List of arrow specifications to display. See the showcase notebooks for examples.
backend – The backend to use to generate the figure.
- Return type:
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_basis(**kwargs)[source]
Reads basis set and geometry information from the HSX file
- Return type:
- read_fermi_level(**kwargs)[source]
Reads the fermi level in the file
Only valid for files created by Siesta >=5.
- Return type:
- read_geometry(**kwargs)[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.
- Return type:
- read_hamiltonian(**kwargs)[source]
Returns the electronic structure from the siesta.HSX file
- Return type:
- read_lattice(**kwargs)[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.
- Return type:
- read_overlap(**kwargs)[source]
Returns the electronic structure from the siesta.HSX file
- Return type:
- 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.