Data schema for magnetic_state
#22
JosePizarro3
started this conversation in
Ideas
Replies: 1 comment 1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
@ndaelman-hu @JFRudzinski
This is part of my notes done in #12 . I moved them here for consistency.
Short theory summary
Free atom
magnetic_moment
The quantum numbers (L, S, J): depending on the relative size of the spin-orbit coupling, we need to use LS notation (small SOC) or JJ notation (large SOC). L, S are calculated from the individual electron ml and ms numbers as:
L = Σi mli
S = Σi msi
|L-S| <= J <= L+S
where i represents each electron in the
OrbitalState(n, l, ml, ms)
.To calculate L and S we need to know the
OrbitalsState.occupation
for each orbital, using Hund's rules:AtomState
is less than half-full, J=L+S ifAtomState
is more than half-full.For example, Mn+3 has a valence 3d4
AtomState
:The effective
magnetic_moment
is calculated using:In this example, however, experimentally we find μexp=4.82 μB (instead of μeff=0).
The effect of the crystalline environment in the
magnetic_moment
Due to the crystal environment,
OrbitalState
is feeling finitecrystal_field
/onsite_energy
effects which depend on the symmetry of the crystal (e.g., perovskites break the d orbital symmetry into 3-fold degenerate t2g and 2-fold degenerate eg orbitals).The Slater-Koster TB method is a good starting point to obtain onsite energies.
In the example for Mn+3, there is an interesting effect playing role: orbital quenching (important in d-orbital systems). If instead of L=2, we consider L=0, we get μeff=4.89 μB (close to the experimental value). This happens when the crystal field effect is larger than SOC, breaking Hund's rules.
Overall, we have 3 main energy scales which control the
OrbitalsState
which defines theAtomsState.magnetic_moment
:Idea for the schema
We need to:
OrbitalsState.j_quantum_number
andOrbitalsState.mj_quantum_number
. Are these necessary?AtomsState.L_total_quantum_number
,AtomsState.S_total_quantum_number
,AtomsState.J_total_quantum_number
. Here we could think whether we want to keep a string using'(2S+1)LJ'
notation.AtomsState.magnetic_moment
,AtomsState.spin_orbit_coupling
(this is, the pre-factor on the L · S).OrbitalsState.crystal_field
(orOrbitalsState.onsite_energy
). Related with Addonsite_energy
forOrbitalsState
#11OrbitalsState.occupation
to obtain the quantum numbers L, S, J via normalization?AtomsState.magnetic_moment
, we can defineModelSystem.magnetic_state
(orModelSystem.magnetic_order
): paramagnetic, ferromagnetic, antiferromagnetic (collinear or non-collinear, ferrimagnetic? altermagnetic?), spin glass.We can also define
ModelSystem.magnetization
, which should be connected (perhaps, I am not 100% sure) with all theAtomsState[i].magnetic_moment
. Finally, also addModelSystem.magnetic_state_q_vector
if possible.Note on where do we stop
I think we should not try to cover all potential cases in magnetism. For example, we can skip trying to characterize perfectly all the possible exchange interactions, and perhaps leave these for a near future.
Beta Was this translation helpful? Give feedback.
All reactions