Electron Zeeman Hamiltonian, electron magnetic dipole moment.
H = ham_ez(Sys, B) H = ham_ez(Sys, B, idx) H = ham_ez(Sys, B, idx, 'sparse') [mux, muy, muz] = ham_ez(Sys) [mux, muy, muz] = ham_ez(Sys, idx) [mux, muy, muz] = ham_ez(Sys, idx, 'sparse')
ham_ez
calculates the matrix representing the electron Zeeman Hamiltonian (in units of MHz) for the spin system given in Sys
.
Sys
is a spin system structure.
idx
is a number or array that indicates which electron spins should be included. For example, 1
indicates the first electron spin, and [2 3]
indicates the second and third electron spin. If idx
is omitted, all electron spins are included in the operators.
B
is a 3-element magnetic field vector (in mT). If given, the complete electron Zeeman Hamiltonian is returned. B
is understood to be in the molecular frame, for example [0 0 340]
indicates a field along the molecular z axis.
If B
is omitted, the function returns the three electron spin magnetic dipole moment component operators mux
, muy
and muz
, defined along the principal axes of the molecular frame. They are in units of MHz/mT. The complete electron Zeeman Hamiltonian is obtained via H = -(mux*B(1)+muy*B(2)+muz*B(3))
.
If 'sparse'
is given as third argument, results are returned in sparse format instead of full format.
For the spin system
ABC = struct('S',1/2,'g',[2.1 2.1 2],'Nucs','14N','A',[1 1 1]);
the electron Zeeman Hamiltonian for a given magnetic field along the molecular x axis is
B = [340;0;0]; H = ham_ez(ABC,B)
H = 1.0e+03 * 0 0 0 4.9967 0 0 0 0 0 0 4.9967 0 0 0 0 0 0 4.9967 4.9967 0 0 0 0 0 0 4.9967 0 0 0 0 0 0 4.9967 0 0 0
ham, ham_cf, ham_ee, ham_ezho, ham_hf, ham_nn, ham_nq, ham_nz, ham_oz, ham_so, ham_zf