Magnetic space groups¶
Oriented descendants and magnetic-space-subgroup objects.
msg
¶
ConstructType
¶
MagneticSpaceSubgroup
dataclass
¶
MagneticSpaceSubgroup(xsg: list[int], fsg: list[int], msg_type: ConstructType, Q: NDArrayFloat)
orient_moments_basis
¶
Rotate each Cartesian moment-basis field into this subgroup's frame.
Each field of shape (n_sites, 3) transforms row-wise by the
orientation rotation Q (field @ Q^T), giving the
symmetry-adapted basis expressed in the magnetic space subgroup's
oriented setting.
OrientedSpinSpaceGroupEnumerator
¶
OrientedSpinSpaceGroupEnumerator(lattice: NDArrayFloat, spin_only_group: SpinOnlyGroup, spin_space_group: NontrivialSpinSpaceGroup, *, atol: float = 1e-05)
Enumerate oriented SSGs up to spatial conjugacy by their family group G.
preserve_spin_planochirality=True retains distinct spin-planochiral
enantiomorphs. False identifies enantiomorphs related by an improper
spin rotation.
bns_from_moments
¶
bns_from_moments(supercell: Cell | Supercell, moments: NDArrayFloat, *, atol: float = 1e-05, symprec: float | None = None, mag_symprec: float | None = None) -> str
BNS number of supercell carrying the Cartesian moments.
The moments are normalized to unit max |m| before the magnetic symmetry
search, so mag_symprec keeps its meaning regardless of the pattern's
scale; a pattern whose max |m| is below atol is treated as zero and
left unnormalized. symprec / mag_symprec override moyopy's search
tolerances; None keeps its defaults.