The package Spin` consists of several applications which are designed for research in the area of magnetic resonance and spin physics and spin chemistry. The packages Unit` and LoopControl` can be useful to a broader audience. Most important features of the package Spin` are listed below.  

Spin Algebra

The package Spin`Algebra` is the Mathematica based application for spin and spatial tensor manipulations. The package provides several types of representations of operators of angular moments and their eigenstates, transformations between symbolic and matrix forms, different vector coupling schemes, suitable for both, analytical and numerical computations.
Main properties of the package Spin`Algebra` include:
  1. Support the quantum mechanical relations for angular momentum operations. 
  2. Two modes of spin system: arbitrary spin system and predefined spin system.
  3. Several operator representations: Cartesian, ladder,
    irreducible tensor operators, Stevens equivalent operators.
  4. Different vector coupling schemes.
  5. Work with equivalent spins.
  6. Transformations between symbolic and matrix forms.
  7. Flexible notations of spin states and operators.

Spin Dynamics

The package Spin`MR` expands the definitions of Spin`Algebra` and adds extra objects and functions, like GTensor, MagneticMoment, DensityMatrix and Hamiltonian.

Liouville Space

The dynamics of the spin system is described in the Hilbert space.
All operators in this basis are Hermitian that are self-conjugated.
If the relaxation and kinetic processes of the spin states must be analyzed then one needs to study the evolution of the system in the Liouville space. The package Spin` is able to produce relaxation and kinetic matrices, as well as superoperator matrices. There are also transformation functions between symbolic and matrix forms of the operators in both, Hamilton and Liouville, spaces.


Advanced functions for the numerical computations of Electron Paramagnetic Resonance spectra are defined in the packages Spin`CW` and Spin`ESE`.


The package Spin`Unit` grants elegant method to work with the units. It uses the definition of Mathematica standard packages Units` , SIUnits`, and PhysicalConstants` and expands their functionality to give:
  1. Acronym instead of full name: 5 o kg.
  2. Automatic transformations:
    (2 o kg)2 3 o m  ==> 12 o kg2m.
  3. Subscripted units and physical constants: 1 o NA.
  4. Evaluation protection in the body of unit:
    m = 1; (2 o m)2  ==>  4 o m2.
  5. Several preset system of units:
    UnitUpdate[1 o N, "SIFundamental"]  ==> 1 o kg m/s2.

Interactive Tools

For time consuming tasks it is important to control the progress of the computation, to be able interrupting the evaluation, to save the results of the (preliminary) computation and search for the previously computed data. The packages Spin`System`LoopControl` add several tools to expand the functionality of the Mathematica functions.

2011 - Yuri E. Kandrashkin      

Yuri Kandrashkin,
Aug 23, 2011, 2:34 AM