tbplas.SOC

class tbplas.SOC

Class for evaluating spin-orbital coupling terms.

_orbital_labels

labels of atomic orbitals

Type:

Set[str]

_spin_labels

directions of spins

Type:

Set[str]

_orbital_basis

collection of atomic orbitals s, px, py, pz. etc

Type:

Dict[str, AtomicOrbital]

__init__() None

Methods

__init__()

eval([label_i, spin_i, label_j, spin_j])

Evaluate the matrix element <i,s_i|l*s|j,s_j>.

print_soc_table([spin_i, spin_j])

Print SOC terms between orbital basis functions, for generating the coefficients in 'SOCTable' class.

__init__() None
eval(label_i: str = 's', spin_i: str = 'up', label_j: str = 's', spin_j: str = 'down') complex

Evaluate the matrix element <i,s_i|l*s|j,s_j>.

Parameters:
  • label_i – orbital label of bra

  • spin_i – spin direction of bra

  • label_j – orbital label of ket

  • spin_j – spin direction of ket

Returns:

matrix element in h_bar**2

Raises:

ValueError – if orbital labels or spin directions are illegal

print_soc_table(spin_i: str = 'up', spin_j: str = 'up') None

Print SOC terms between orbital basis functions, for generating the coefficients in ‘SOCTable’ class.

Parameters:
  • spin_i – spin direction of bra

  • spin_j – spin direction kf ket

Returns:

None

Raises:

ValueError – if spin directions are illegal

__weakref__

list of weak references to the object (if defined)