Difference between revisions of "Pauli.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(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