Difference between revisions of "Pauli.m"
(Normalise sequential blank lines) |
m (Spot-update function page against current Spinach source) |
||
| Line 38: | Line 38: | ||
3. It is never a good idea to normalise spin operators using matrix norms because commutation relations would break. | 3. It is never a good idea to normalise spin operators using matrix norms because commutation relations would break. | ||
| + | |||
| + | 4. The arrays are declared complex at creation to avoid expensive reallocations later on. | ||
==See also== | ==See also== | ||
Revision as of 15:54, 5 June 2026
Pauli matrices (sparse, see below for normalisation conventions) for a spin of a user-specified energy level multiplicity.
Syntax
S=pauli(mult)
Arguments
mult - an integer specifying the
multiplicity of the spin
Outputs
S.u - unit operator
S.p - raising operator
S.m - lowering operator
S.x - Sx observable operator
S.y - Sy observable operator
S.z - Sz observable operator
Notes
1. The matrices are normalized so as to obey the following commutation relations:
[S.x,S.y]=1i*S.z
[S.y,S.z]=1i*S.x
[S.z,S.x]=1i*S.y
2. Raising and lowering operators are defined as:
S.p=S.x+1i*S.y
S.m=S.x-1i*S.y
3. It is never a good idea to normalise spin operators using matrix norms because commutation relations would break.
4. The arrays are declared complex at creation to avoid expensive reallocations later on.
See also
stevens.m, irr_sph_ten.m, wigner.m, operator.m, state.m, hamiltonian.m
SU(2), SO(3), and other groups
Version 2.8, authors: Ilya Kuprov