Spin`Algebra

Spin`Algebra — Magnetic Resonance with Mathematica
 

Spin`Algebra` Reference Guide

Functions

SToMatrix

SToMatrix[expr]returns matrix representation  of expression expr.
SToMatrix[expr,BraBasis->bras,KetBasis->kets]returns matrix representation  for a set of bra-vectors bras and ket-vectors kets.

SToMatrix[expr] uses the full basis of vectors

• The following options can be applied

BraBasis->Automatic uses set of bra-vectors generated from a given set of ket-vectors. If none of these sets is determined uses full set of vectors BraBasis[]. Another possible value is explicitly given set of bra-vectors.

KetBasis->Automatic uses set of ket-vectors generated from a given set of bra-vectors. If none of these sets is determined uses full set of vectors KetBasis[]. Another possible value is explicitly given set of ket-vectors.

• See also: BraBasis, KetBasis, MatrixToS, CenterDot, SMatrix

Further Examples

This loads the packages Spin`

[Graphics:img/functions_1.gif]

This defines three-spin system

[Graphics:img/functions_2.gif]

Here is a matrix representation of operator S_ (a, x) in the eigenbasis of uncoupled spins:

[Graphics:img/functions_4.gif]

[Graphics:img/functions_5.gif]

Here are eigenstates of two coupled spins:

[Graphics:img/functions_6.gif]

[Graphics:img/functions_7.gif]

This gives a matrix form of operator of exchange interaction, -2S_a·S_b, in the basis of strongly coupled system {a,b}:

[Graphics:img/functions_10.gif]

[Graphics:img/functions_11.gif]

Operator of exchange interaction has form -2S_a·S_b. Previous result clearly shows the separation of energy of singlet state (3/2) and three states of the triplet (-1/2).

Operator S_ (c, x) in the basis of strongly coupled three-spin system:

[Graphics:img/functions_15.gif]

[Graphics:img/functions_16.gif]

[Graphics:img/functions_17.gif]

[Graphics:img/functions_18.gif]

[Graphics:img/functions_19.gif]

[Graphics:img/functions_20.gif]

The part of previous matrix describing the interactions between the doublet (j=1/2) state and quartet (j=3/2) states, both of which are formed from triplet state (j=1) of spins a and b:

[Graphics:img/functions_21.gif]

[Graphics:img/functions_22.gif]

See also examples for BraBasis and KetBasis

MatrixToS

MatrixToS[m] converts the matrix m to corresponding operator form

MatrixToS[m] needs the dimension of matrix m to be equal to eigenspace of the spin system

• See also: SToMatrix, CenterDot

Further Examples

This loads the packages Spin`

[Graphics:img/functions_23.gif]

This defines the spin system

[Graphics:img/functions_24.gif]

The matrix representation of expression S_ (T, Z)^2-Overscript[S, ⇀] _T^2/3 in the basis of eigenstates of multiplets with j=1/2 and j=3/2 formed from the initial spins T and D:

[Graphics:img/functions_27.gif]

[Graphics:img/functions_28.gif]

The part of full matrix describing the spin space of the quartet state

[Graphics:img/functions_29.gif]

[Graphics:img/functions_30.gif]

Let's redefine spin system:

[Graphics:img/functions_31.gif]

Previous matrix m can be reformulated now via spin operators of a quartet state:

[Graphics:img/functions_32.gif]

[Graphics:img/functions_33.gif]

This is a different presentation of well known operator form:

[Graphics:img/functions_34.gif]

[Graphics:img/functions_35.gif]

Thus the diagonal matrix elements of second order operator S_ (T, Z)^2-Overscript[S, ⇀] _T^2/3 of triplet state inherits its form in basis of eigenstates of the quartet, generated from this triplet.   

SpinForm

SpinForm[expr] shows expr in special form of operator representation
SpinForm[expr,form] presents the result in the specific form

• For default output of SpinForm the value of global variable $OperatorForm is used. The second argument controls the particular output form of the function. Its possible values are: Ladder, IrreducibleNormalized, Irreducible, Cartesian, Symmetric. For more information refer to description of OperatorForm.

• The output of SpinForm can be in non-canonic form thus to prevent the further evaluation SpinForm puts the result in HoldForm

• See also: CenterDot, $OperatorForm, OperatorForm

Further Examples

This loads the packages Spin`

[Graphics:img/functions_38.gif]

This defines the spin system

[Graphics:img/functions_39.gif]

Here is regular output of application of CenterDot:

[Graphics:img/functions_40.gif]

[Graphics:img/functions_41.gif]

It returns the operators in IrreducibleNormalized form. But if apply SpinForm to this result it will return in the Cartesian form:

[Graphics:img/functions_42.gif]

[Graphics:img/functions_43.gif]

To prevent re-evaluation of the previous expression it is put in the HoldForm:

[Graphics:img/functions_44.gif]

[Graphics:img/functions_45.gif]

This clears symbol expr:

[Graphics:img/functions_46.gif]

Here the operator S_ (1, x) in Irreducible form:

[Graphics:img/functions_48.gif]

[Graphics:img/functions_49.gif]

CenterDot

CenterDot[a,b,c] gives non-commutative scalar product of operators of angular momentum and its bra- and ket-vectors.

CenterDot[a, b] can be entered in StandardForm as a · b, a :.: b or a \[CenterDot] b.

CenterDot[args] treats all args except the functions Bra, Ket and S as commutative. The commutation rules of functions Bra, Ket and S correspond to standard definitions of theory of angular momentum.

• The input form of functions S must have one of the following forms:

1. S_ (i, x), S_ (i, X), S_ (i, SpinX) used for the operator of spin i in Cartesian representation; similar notations are used for other projections
2. S_i or Overscript[S, ⇀] _i are for vector-operator (in Cartesian spin space)
3. S_ (i, +) and S_ (i, SpinPlus) used for rising operator and S_ (i, -) and S_ (i, SpinMinus) used for lowering operator
4. S_ (i, {k, q}) and S_ (i, {{k, q}}) are equivalent to irreducible non-unit and unit operators T(k,q)
5.  S_ (i, mm ', p), where p∈{x,X,SpinX,y,Y,SpinY,z,Z,SpinZ,+,SpinPlus,-,SpinMinus} is operator of selective excitation between levels m and m'. The operator has the same matrix elements as Cartesian and ladder operators of effective spin 1/2, formed on states m and m'.

• The input form of bra- and ket-vectors must be of the following form: Bra[i,m] or Ket[i,m], or in more traditional form <i,m and i,m>. Here the first argument is spin label, and m is spin projection.

• The input form of operators S determined by the value of option OperatorForm of function SpinSystem

• See also: Bra, Ket, S,  SpinSystem, OperatorForm, SpinForm, CircleTimes

Further Examples

This loads the packages Spin`

[Graphics:img/functions_62.gif]

By default spin system isn't defined

[Graphics:img/functions_63.gif]

Nevertheless non-commutative product of operators written in the form of Cartesian or ladder operators can be found:

[Graphics:img/functions_64.gif]

[Graphics:img/functions_65.gif]

Here is example of product of two vector operators:

[Graphics:img/functions_66.gif]

[Graphics:img/functions_67.gif]

This defines the quartet spin system and sets the output to be transformed via irreducible operators

[Graphics:img/functions_68.gif]

The result of conversion of second order operator:

[Graphics:img/functions_69.gif]

[Graphics:img/functions_70.gif]

Commutator

Commutator[a,b]=Commutator[a,b,-1]=a·b-b·a.
Commutator[a,b,0]=b.
Commutator[a,b,+1]=a·b+b·a
Commutator[a,b,+n]=

Commutator[a,Commutator[a,b,n-1]] n>1
Commutator[a,Commutator[a,b,n+1]] n<-1
.

Commutator[a, b] can be entered in StandardForm as {a, b} _ -, {a :.: b}[CTRL]-[-]-. {a, b} _ + corresponds to Commutator[a, b, 1] and {a, b} _n corresponds to Commutator[a, b, n].

• See also: S, CenterDot

Further Examples

This loads the packages Spin`

[Graphics:img/functions_74.gif]

By default spin system isn't defined

[Graphics:img/functions_75.gif]

The formal solution of Liouville equation ^(- H t)ρ ^(+ H t ) can expanded as Underoverscript[∑, k = 0, arg3]1/k ![- H t, ρ] _k. Thus the finite sum of multiple commutator gives approximated solution. Here is an example of developing spin order state S_ (a, z)S_ (b, z) by application of a pulse rotating along x direction:

[Graphics:img/functions_82.gif]

[Graphics:img/functions_83.gif]

The last term can be computed directly:

[Graphics:img/functions_84.gif]

[Graphics:img/functions_85.gif]

CirclePlus

m_1(+)m_2(+)m_3(+)...represents a matrix which is outer sum of matrices.

a(+)b=(

a_〚1, 1〛 ... a_〚1, -1〛 0 ... 0
... ... ... ... ... ...
a_〚 -1, 1〛 ... a_〚 -1, -1〛 0 ... 0
0 ... 0 b_〚1, 1〛 ... b_〚1, -1〛
... ... ... ... ... ...
0 ... 0 b_〚 -1, 1〛 ... b_〚 -1, -1〛
).

CirclePlus[a,b] can be entered in StandardForm as a(+)b, a :c+: b.

• See also: CircleTimes, SToMatrix, SMatrix

Further Examples

This loads the packages Spin`

[Graphics:img/functions_97.gif]

This defines spin system:

[Graphics:img/functions_98.gif]

Here is a matrix form in the basis of strongly coupled system

[Graphics:img/functions_99.gif]

[Graphics:img/functions_100.gif]

Here is the matrix of direct sum of matrices of doublet and quartet states

[Graphics:img/functions_101.gif]

[Graphics:img/functions_102.gif]

CircleTimes

m_1(*)m_2(*)m_3(*)...represents a matrix which equals to outer product of matrices.

a(*)b=(

a_〚1, 1〛b_〚1, 1〛 ... a_〚1, 1〛b_〚1, -1〛 ... a_〚1, -1〛b_〚1, 1〛 ... a_〚1, -1〛b_〚1, -1〛
... ... ... ... ... ... ...
a_〚1, 1〛b_〚 -1, 1〛 ... a_〚1, 1〛b_〚 -1, -1〛 ... a_〚1, -1〛b_〚 -1, 1〛 ... a_〚1, -1〛b_〚 -1, -1〛
... ... ... ... ... ... ...
a_〚 -1, 1〛b_〚1, 1〛 ... a_〚 -1, 1〛b_〚1, -1〛 ... a_〚 -1, -1〛b_〚1, 1〛 ... a_〚 -1, -1〛b_〚1, -1〛
... ... ... ... ... ... ...
a_〚 -1, 1〛b_〚 -1, 1〛 ... a_〚 -1, 1〛b_〚 -1, -1〛 ... a_〚 -1, -1〛b_〚 -1, 1〛 ... a_〚 -1, -1〛b_〚 -1, -1〛
).

• CircleTimes[a, b] can be entered in StandardForm as a(*)b, a :c*: b.

• See also: CirclePlus, SToMatrix, SMatrix

Further Examples

This loads the packages Spin`

[Graphics:img/functions_122.gif]

Here is a direct product of two matrices:

[Graphics:img/functions_123.gif]

[Graphics:img/functions_124.gif]

SRotate

SRotate[a,b]computes the expression ^(- b)a ^(+ b)
SRotate[a,b,c,...]=SRotate[SRotate[a,b],c,...]

• The output form of operators determined by the value of option OperatorForm of function SpinSystem

• See also: SpinSystem, OperatorForm

Further Examples

This loads the packages Spin`

[Graphics:img/functions_127.gif]

This defines spin system:

[Graphics:img/functions_128.gif]

The 90° rotation around x-axis:

[Graphics:img/functions_129.gif]

[Graphics:img/functions_130.gif]

WignerD

WignerD[j,β] returns Wigner reduced D-matrix for spin j, rotating on angle β around y-axis. WignerD[j,β] = WignerD[j,{0,β,0}].
WignerD[j,{α,β,γ}] returns Wigner rotation D-matrix for spin j, rotating on angles {α,β,γ} around axes z, y and z.

• For spin a with the value j Wigner[j,{α,β,γ}] is equivalent to MatrixExp[-I α S_ (a, Z)] . MatrixExp[-I β S_ (a, Y)] . MatrixExp[-I γ S_ (a, Z)] (Rose ME Elementary theory of angular momentum, John Wiley & Sons, Inc., 1963, P. 52).

• References: Edmonds AR 1996, P. 53; Zare RN 1988, P. 85; Rose ME 1963, PP. 48-54

• See also: SRotate, SToMatrix, SMatrix

Further Examples

This loads the packages Spin`

[Graphics:img/functions_134.gif]

Here is a Wigner reduced matrix for spin 1/2

[Graphics:img/functions_135.gif]

[Graphics:img/functions_136.gif]

Here is rotation of matrix SMatrix[1,SpinZ]:

[Graphics:img/functions_137.gif]

[Graphics:img/functions_138.gif]

This defines spin system

[Graphics:img/functions_139.gif]

This another way to find the rotated matrix:

[Graphics:img/functions_140.gif]

[Graphics:img/functions_141.gif]



   Last modified: April 10, 2007