SlaterKosterOnsiteParameters

class SlaterKosterOnsiteParameters(element, angular_momenta, occupations=None, filling_method=None, ionization_potential=None, onsite_hartree_shift=None, onsite_spin_split=None, onsite_spin_orbit_split=None, number_of_valence_electrons=None, vacuum_level=None)

Class for representing the parameters that determine the onsite parameters of a Slater-Koster basis.

Parameters:
  • element (PeriodicTableElement) – The element associated with the basis set.
  • angular_momenta (list of int) – The angular momentum of each subshell as a list of positive integers with one entry for each subshell.
  • occupations (list of float) – The initial occupation of each subshell as a list of positive floats with one entry for each subshell. Either this, or number_of_valence_electrons must be given.
  • filling_method (SphericalSymmetric | Anisotropic) – The method used for setting up the initial occupation.
    Default: SphericalSymmetric
  • ionization_potential (PhysicalQuantity of type energy) – The ionization potential with one entry for each subshell.
    Default: Must be given.
  • onsite_hartree_shift (PhysicalQuantity of type energy) – The on-site Hartree shift with one entry for each subshell.
    Default: Must be given.
  • onsite_spin_split (PhysicalQuantity of type energy) – The on-site spin-split values of each orbital (subshell) pair. This should be a square matrix of size n where n is the number of subshells.
    Default: No splitting
  • onsite_spin_orbit_split (PhysicalQuantity of type energy) – The on-site spin-orbit split with one entry for each subshell.
    Default: No splitting
  • number_of_valence_electrons (int) – The number of valence electrons used to determine the neutral state. Must be non-negative. Either this, or occupations must be given.
  • vacuum_level (PhysicalQuantity of type energy) – The energy shift of the vacuum level.
    Default: 0.0 * Hartree
angularMomenta()
Returns:The angular momentum of each subshell.
Return type:list of int
element()
Returns:The element of the basis set.
Return type:PeriodicTableElement
fillingMethod()
Returns:The method used for setting up the initial occupation.
Return type:SphericalSymmetric | Anisotropic
ionizationPotential()
Returns:The ionization potential of each subshell in the basis set.
Return type:PhysicalQuantity of type energy
numberOfValenceElectrons()
Returns:The sum of the occupations.
Return type:float
occupations()
Returns:The occupations associated with the orbitals.
Return type:list of float
onsiteHartreeShift()
Returns:The on-site Hartree shift of each subshell in the basis set.
Return type:PhysicalQuantity of type energy
onsiteSpinOrbitSplit()
Returns:The on-site spin-orbit split of each subshell in the basis set.
Return type:PhysicalQuantity of type energy
onsiteSpinSplit()
Returns:The on-site spin-split values of each subshell in the basis set.
Return type:PhysicalQuantity of type energy
vacuumLevel()
Returns:The energy shift of the vacuum level.
Return type:PhysicalQuantity of type energy

Usage Examples

Define the onsite parameters for an sps* tight-binding model of silicon.

si_onsite = SlaterKosterOnsiteParameters(
    element = Silicon,
    angular_momenta=[0,1,0],
    occupations=[2,2,0],
    ionization_potential=[-4.545, 1.715, 6.6850]*eV,
    onsite_hartree_shift=0.0*eV)

Notes

The SlaterKosterOnsiteParameters is used to define the onsite parameters in a SlaterKosterTable.