cgmatrix

Transformation matrix between uncoupled and coupled representation for a two-spin system.

Syntax
U2C = cgmatrix(S1,S2)
U2C = cgmatrix(S1,S2,Stot)
[U2C,Smtot] = ...
[U2C,Smtot,m12] = ...
Description

cgmatrix calculates the transformation matrix needed to transform state vectors and operators from the uncoupled spin representation to the coupled spin representation (and vice versa), for a spin system with two spins.

S1 and S2 are the spin quantum numbers of the two spins.

If the third input Stot is given, only coupled basis states with the given total spin are included.

U2C is the transformation matrix from the uncoupled to the coupled basis. Its elements are Clebsch-Gordan coefficients. Each row is a coupled basis state represented in the uncoupled basis, and each column is an uncoupled basis state represented in the coupled basis.

The output Smtot contains a list of the quantum numbers Stot and mStot of the coupled basis. Similarly, m12 contains a list of the quantum numbers m1 and m2 of the uncoupled basis.

The basis states in the uncoupled spin basis are Zeeman product states of the two spins, |S1,mS1,S2,mS2>, or |mS1,mS2> in abbreviated form. They are ordered in the standard descending lexicographical way as in the rest of EasySpin: top level is mS1 in decreasing order, and then mS2 in decreasing order. For example, for S1=1 and S2=1/2, the order of uncoupled states |mS1,mS2> is |1,1/2>, |1,-1/2>, |0,1/2>, |0,-1/2>, |-1,1/2>, |-1,-1/2>.

The coupled basis is in terms of the Zeeman states of the total spin with the quantum numbers Stot and mStot, |S1,S2,Stot,mStot> or |Stot,mStot> for short. The total spin Stot can assume values between S1+S2 and |S1-S2|. The basis states are ordered in descending order of Stot, and for each value of Stot, in descending order of mStot. For example, for S1=1 and S2=1/2 the possible values for the total spin Stot are 3/2 and 1/2. The ordering of |Stot, mStot> is |3/2,3/2>, |3/2,1/2>, |3/2,-1/2>, |3/2,-3/2>, |1/2,1/2>, |1/2,-1/2>.

To transform a state vector psi from the uncoupled to the coupled representation or vice versa, use

psi_c = U2C*psi_u;   % uncoupled -> coupled

C2U = U2C';
psi_u = C2U*psi_c;   % coupled -> uncoupled

To transform an operator matrix A (a spin operator, the spin Hamiltonian, or the density matrix) from the uncoupled to the coupled representation or vice versa, use

A_c = U2C*A_u*U2C';   % uncoupled -> coupled

C2U = U2C';
A_u = C2U*A_c*C2U';   % coupled -> uncoupled
Examples

Two spin-1/2 couple together to give a triplet (Stot=1, three states with mStot = +1, 0, -1) and a singlet (Stot=0, one state with mStot = 0). To calculate the representation of the triplet state |Stot,mStot> = |1,0> in the uncoupled basis, we first define it as a vector in the coupled basis:

psi_c = [0;1;0;0];             % represents |1,0> in the coupled basis

Next, we obtain the transformation matrix using cgmatrix and apply it to obtain the representation of the state in the uncoupled representations:

U2C = cgmatrix(1/2,1/2)        % transformation matrix from uncoupled to coupled basis
U2C =
    1.0000         0         0         0
         0    0.7071    0.7071         0
         0         0         0    1.0000
         0    0.7071   -0.7071         0
psi_u = U2C'*psi_c
psi_u =
         0
    0.7071
    0.7071
         0

This shows that the coupled triplet state |1,0> is a linear combination of the uncoupled states |+1/2,-1/2> and |-1/2,+1/2>.

To determine the singlet state resulting from the coupling of two triplet spins represented in the uncoupled basis, use

[singlet_u,Sm,m12] = cgmatrix(1,1,0)
singlet_u =
          0         0    0.5774         0   -0.5774         0    0.5774         0         0
Sm =
     0     0
m12 =
     1     1
     1     0
     1    -1
     0     1
     0     0
     0    -1
    -1     1
    -1     0
    -1    -1

This also returns the uncoupled basis quantum numbers. It can be seen that the singlet state is a linear combination of the three states with m1+m2=0.

Algorithm

cgmatrix calls clebschgordan to calculate the matrix elements of the transformation matrix.

See also

clebschgordan, wigner3j, wigner6j, wignerd