grogupy._core.parse_magnetic_entity
- grogupy._core.parse_magnetic_entity(dh: Hamiltonian, atom: None | int | list[int] = None, l: None | int | list[int] | list[list[int]] = None, orb: None | int | list[int] | list[list[int]] = None) tuple[list[int], list[list[int]], list[int], list[str]][source]
Function to get the orbital indices of a given magnetic entity.
There are four possible input types: 1. Cluster: a list of atoms 2. AtomShell: one atom and a list of shells indexed in the atom or a list of atoms and a list of lists containing the shells 3. AtomOrbital: one atom and a list of orbitals indexed in the atom or a list of atoms and a list of lists containing the orbitals 4. Orbitals: a list of orbitals indexed in the Hamiltonian
Parameters
- dh: sisl.physics.Hamiltonian
The Hamiltonian object from
sisl- atom: Union[None, int, list[int]], optional
Defining atom (or atoms) in the unit cell forming the magnetic entity, by default None
- l: Union[None, int, list[int], list[list[int]]], optional
Defining the angular momentum channel, by default None
- orb: Union[None, int, list[int], list[list[int]]], optional
Defining the orbital index in the Hamiltonian or on the atom, by default None
Returns
- atom: list[int]
List of atoms in the magnetic entity
- l: list[list[int]]
List of angular momentum channels, if unknown, all of them are None
- orbital_indices: list[int]
The orbital indices of the given magnetic entity indexed by the total Hamiltonian
- tag: list[str]
The list of tags from the atoms