# Appendix B: spin state indexing

The Liouville space spherical tensor basis descriptor array contained in spin_system.bas.basis uses the following notation: for each spin, identity state (or equivalently [math]\hat T_{0,0}[/math] spherical tensor operator) is denoted 0, [math]\hat T_{1,1}[/math] is denoted 1, [math]\hat T_{1,0}[/math] is denoted 2, [math]\hat T_{1, - 1}[/math] is denoted 3, and so on (Spinach supports all spin quantum numbers) – that is to say, irreducible spherical tensors are numbered by ascending ranks and within ranks by descending projection. The resulting sequence of integers is mapped by the kernel into the sequence of operators in the direct product, for example:

[0 2 0 3 1 0 2 1 0 0]

is equivalent to

[math]\hat E \otimes {\hat L_{\rm{Z}}} \otimes \hat E \otimes {\hat L_ - } \otimes {\hat L_ + } \otimes \hat E \otimes {\hat L_{\rm{Z}}} \otimes {\hat L_ + } \otimes \hat E \otimes \hat E[/math]

Many Spinach functions operate semi-analytically by taking advantage of the irreducible spherical tensor rank information contained in the basis descriptor array. Understanding how basis set information is stored is critical to understanding much of Spinach kernel – see the Spinach JMR paper for further info.