Band Structure Utilities¶
-
class
aimstools.bandstructures.utilities.BandSpectrum(atoms: ase.atoms.Atoms = None, kpoints: numpy.ndarray = None, kpoint_axis: numpy.ndarray = None, eigenvalues: numpy.ndarray = None, occupations: numpy.ndarray = None, label_coords: list = None, kpoint_labels: list = None, jumps: list = None, fermi_level: float = None, reference: str = None, shift: float = None, bandpath: str = None)[source]¶ Bases:
objectContainer class for eigenvalue spectrum and associated data.
Variables: - atoms (ase.atoms.Atoms) – ASE atoms object.
- kpoints (ndarray) – (nkpoints, 3) array with k-points.
- kpoint_axis (ndarray) – (nkpoints, 1) linear plotting axis.
- eigenvalues (ndarray) – (nkpoints, nbands) array with eigenvalues in eV.
- occupations (ndarray) – (nkpoints, nbands) array with occupations.
- contributions (MullikenContribution) –
MullikenContribution. - label_coords (list) – List of k-point label coordinates on the plotting axis.
- kpoint_labels (list) – List of k-point labels.
- jumps (list) – List of jumps from unconnected Brillouin zone sections on the plotting axis.
- fermi_level (float) – Fermi level in eV.
- reference (str) – Reference energy description.
- shift (float) – Value to shift energies for reference.
- bandpath (str) – Bandpath string in ASE format.
-
atoms¶
-
bandgap¶ Returns the fundamental band gap of the system.
-
bandpath¶
-
eigenvalues¶
-
fermi_level¶
-
get_direct_gap(spin)[source]¶ Returns direct band gap for given spin channel or None if metallic along this spin channel.
-
get_indirect_gap(spin)[source]¶ Returns indirect band gap for given spin channel or None if metallic along this spin channel.
-
jumps¶
-
kpoint_axis¶
-
kpoint_labels¶
-
kpoints¶
-
label_coords¶
-
occupations¶
-
reference¶
-
shift¶
-
class
aimstools.bandstructures.utilities.BandStructurePlot(main=True, **kwargs)[source]¶ Bases:
objectContext to draw band structure plot. Handles the correct shifting, labeling and axes limits.
-
class
aimstools.bandstructures.utilities.DirectBandGap(value: float = None, spin_index: int = None, k_index: int = None, k_axis_coords: float = None, kpoint: list = None, vbm: float = None, cbm: float = None)[source]¶ Bases:
objectContainer class to store information about the direct band gap.
-
class
aimstools.bandstructures.utilities.IndirectBandGap(value: float = None, spin_index: int = None, k_index1: int = None, k_index2: int = None, k_axis_coords1: float = None, k_axis_coords2: float = None, kpoint1: list = None, kpoint2: list = None, vbm: float = None, cbm: float = None)[source]¶ Bases:
objectContainer class to store information about the indirect band gap.
-
class
aimstools.bandstructures.utilities.MullikenBandStructurePlot(contributions=None, **kwargs)[source]¶ Bases:
aimstools.bandstructures.utilities.BandStructurePlotContext to draw mulliken band structures. Handles legends, color maps, etc.