SpinDynamics.org

Home      Spinach
Print this pageAdd to Favorite

Spinach library

Spinach is a fast (polynomially scaling) open-source Liouville space spin dynamics simulation library.
 
Downloads:
Version 1.1.1054 (latest stable version, changelog)
Version 1.1.992
Version 1.0.964
Version 1.0.944

Please email Ilya Kuprov with any questions, feature requests or systems to simulate. The minimum supported version of Matlab is 2011a (64-bit version recommended with at least 4 GB of RAM).

Spinach features

  • Provides low-dimensional matrix representations for spin operators in large spin systems and enables time domain simulation of NMR and ESR experiments on systems previously considered too big for any practical calculations. All standard techniques of NMR/ESR simulations remain the same in reduced state spaces, the only difference is smaller matrices. The details of the state space restriction method used by Spinach are presented in this paper.
  • Includes a generalized symmetry module (any number of groups of equivalent spins of any quantum number).
  • Includes Krylov subspace based time propagation functions and on-the-fly dimension reduction tools that operate transparently to the user and ensure rock-bottom CPU and memory requirements in all simulation tasks.
  • Includes a generalized rotation module that outputs the full rotation basis and the associated Wigner functions, returns Liouvillians for user-specified spin system orientations, provides a Lebedev powder integrator and rotational correlation functions for isotropic, axial and rhombic rotational diffusion.
  • Includes a generalized relaxation theory module: complete Redfield superoperators for all known first- and second-rank interactions with all cross-correlations thereof), supporting all types of magnetic resonance spectroscopy: NMR, ESR, DNP, Spin Chemistry, etc. Anisotropic rotational diffusion tensors are supported in full generailty.
  • Includes an analytical derivatives module, supporting derivative superoperators and derivative propagators.
  • Includes an Optimal Control waveform design module using BFGS-GRAPE algorithm with exact gradients. Optimization of broadband pulses, selective pulses and universal rotations is implemented in both Cartesian and phase-amplitude coordinates. For phase-modulated pulses, user-specified amplitude envelopes are available. User-specified waveform basis sets are supported. Template files are included for common Optimal Control optimization tasks.
  • Supports pseudocontact shifts generated by a point paramagnetic metal centre.
  • Includes templates for Overhauser DNP calculations in liquid state and solid effect DNP calculations in solid state using Krylov-Bogolyubov averaging in a reduced state space.
  • Includes functions for multi-grid parallel soft pulses, coherence selection and decoupling.
  • Includes functions for the simulation of magnetochemical experiments (a collaboration with Hannah Hogben and Peter Hore at Oxford).
  • Includes functions for the simulation of common NMR (pulse-acquire, COSY, DQF-COSY, HSQC, CLIP-HSQC, HMQC, HETCOR) and ESR (pulse-acquire, ENDOR, ESEEM) experiments.
  • Includes functions for the simulation of partially aligned systems -- RDCs, residual CSAs and residual quadrupolar interactions are supported in full generality.
The Hilbert space module supports parallel computing environments via Matlab's Distributed Computing Server. We are in the process of adding DMRG/MPS functionality, coding up a stochastic Liouville equation module and expanding the library of standard pulse sequences and waveforms. The code is extensively commented and designed to be very readable.
 

Publications describing Spinach features

A. Karabanov, A. van der Drift, L.J. Edwards, I Kuprov, W. Köckenberger, "Quantum Mechanical Simulation of Solid Effect Dynamic Nuclear Polarization using Krylov-Bogolyubov time averaging and a Restricted State Space", Physical Chemistry Chemical Physics, 14 (2012) 2658-2668.
 
 
H.J. Hogben, P.J. Hore, I. Kuprov, "Multiple decoherence-free states in multi-spin systems", Journal of Magnetic Resonance, 211 (2011) 217-220.
 
A. Karabanov, I. Kuprov, G.T.P. Charnock, A. van der Drift, L.J. Edwards, W. Köckenberger, "On the accuracy of the state space restriction approximation for spin dynamics simulations", Journal of Chemical Physics, 135 (2011) 084106.
 
P. de Fouquieres, S.G. Schirmer, S.J. Glaser, I. Kuprov, "Second order gradient ascent pulse engineering", Journal of Magnetic Resonance, 212 (2011) 412-417.
 
M. Krzystyniak, L.J. Edwards, I. Kuprov, "Destination state screening of active spaces in spin dynamics simulations", Journal of Magnetic Resonance, 210 (2011) 228-232. 
 
H.J. Hogben, M. Krzystyniak, G.T.P. Charnock, P.J. Hore, I. Kuprov, "Spinach - a software library for simulation of spin dynamics in large spin systems", Journal of Magnetic Resonance, 208 (2011) 179-194.
 
I. Kuprov, "Diagonalization-free implementation of spin relaxation theory for large spin systems", Journal of Magnetic Resonance, 209 (2011) 31-38.
 
H.J. Hogben, P.J. Hore, I. Kuprov, Strategies for exact state space restriction in densely coupled spin systems with applications to spin chemistry, Journal of Chemical Physics, 132 (2010), 174101.
 
R. Raj, I. Kuprov, K. Pervushin, Benchmarking NMR experiments: a relational database of protein pulse sequences, Journal of Magnetic Resonance, 203 (2010), 129-137.

I. Kuprov, C.T. Rodgers, Derivatives of spin dynamics simulations, Journal of Chemical Physics, 131 (2009) 234108.

I. Kuprov, Polynomially scaling spin dynamics II: further state space compression using Krylov subspace techniques and zero track elimination, Journal of Magnetic Resonance 195 (2008) 45-51.

I. Kuprov, N. Wagner-Rundell, P.J. Hore, Polynomially scaling spin dynamics simulation algorithm based on adaptive state space restriction, Journal of Magnetic Resonance 189 (2007) 241-250.
 
I. Kuprov, N. Wagner-Rundell, P.J. Hore, Bloch-Redfield-Wangsness theory engine implementation using symbolic processing software, Journal of Magnetic Resonance 184 (2007) 196-206.
 
 
Acknowledgements
 
The authors are very grateful to Mark Butler, Jean-Nicolas Dumez, Lyndon Emsley, Jack Freed, Steffen Glaser, Jeff Harmer, Paul Hodgkinson, Alexej Jerschow, Walter Köckenberger, Malcolm Levitt, Niels Chr. Nielsen, Konstantin Pervushin, Chris Rodgers, Thomas Schulte-Herbrüggen and Zdenek Tosner for many useful discussions and feedback on the early program prototypes. The project is funded by the EPSRC (EP/F065205/1, EP/H003789/1) and supported by the Oxford e-Research Centre.