Spinach is an open-source magnetic resonance simulation package initially released in 2011[1] and continuously updated since.[2] The package is written in Matlab and makes use of the built-in parallel computing and GPU interfaces of Matlab.[3]
The name of the package whimsically refers to the physical concept of spin and to Popeye the Sailor who, in the eponymous comic books, becomes stronger after consuming spinach.[4]
Overview
Spinach implements magnetic resonance spectroscopy and imaging simulations by solving the equation of motion for the density matrix in the time domain:[1]
where the Liouvillian superoperator is a sum of the Hamiltonian commutation superoperator , relaxation superoperator , kinetics superoperator , and potentially other terms that govern spatial dynamics and coupling to other degrees of freedom:[2]
As of 2023, Spinach is cited in over 300 academic publications.[1] According to the documentation[2] and academic papers citing its features, the most recent version 2.8 of the package performs:
Spinach contains an implementation the gradient ascent pulse engineering (GRAPE) algorithm[16] for quantum optimal control. The documentation[2] and the book describing the optimal control module of the package[17] list the following features:
Dissipative background evolution generators and control operators are supported, as well as ensemble control over distributions in common instrument calibration parameters, such as control channel power and offset.[2]
References
^ abcHogben, H.J.; Krzystyniak, M.; Charnock, G.T.P.; Hore, P.J.; Kuprov, I. (2011). "Spinach – a software library for simulation of spin dynamics in large spin systems". Journal of Magnetic Resonance. 208 (2): 179–194. doi:10.1016/j.jmr.2010.11.008. ISSN1090-7807.
^Gutmann, T.; Groszewicz, P.B.; Buntkowsky, G. (2019). "Solid-state NMR of nanocrystals". Annual Reports on NMR Spectroscopy. pp. 1–82. doi:10.1016/bs.arnmr.2018.12.001. ISSN0066-4103.
^Dumez, J.-N. (2021). "Frequency-swept pulses for ultrafast spatially encoded NMR". Journal of Magnetic Resonance. 323: 106817. doi:10.1016/j.jmr.2020.106817. ISSN1090-7807.
^Redrouthu, V.S.; Mathies, G. (2022). "Efficient pulsed dynamic nuclear polarization with the X-inverse-X sequence". Journal of the American Chemical Society. 144 (4): 1513–1516. doi:10.1021/jacs.1c09900. ISSN0002-7863.
^Khaneja, N.; Reiss, T.; Kehlet, C.; Schulte-Herbrüggen, T.; Glaser, S.J. (2005). "Optimal control of coupled spin dynamics: design of NMR pulse sequences by gradient ascent algorithms". Journal of Magnetic Resonance. 172 (2): 296–305. doi:10.1016/j.jmr.2004.11.004. ISSN1090-7807.