Related Experiment Video
Updated: Oct 10, 2025

15N CPMG Relaxation Dispersion for the Investigation of Protein Conformational Dynamics on the µs-ms Timescale
Published on: April 19, 2021
SpinSPJ: a novel NMR scripting system to implement artificial intelligence and advanced applications
Zao Liu1,2, Zhiwei Chen3, Kan Song4
1State Key Laboratory of Magnetic Resonance and Atomic and Molecular Physics, Wuhan Center for Magnetic Resonance, Wuhan Institute of Physics and Mathematics, Innovation Academy for Precision Measurement Science and Technology, Chinese Academy of Sciences, Wuhan, 430071, People's Republic of China.
Background:
Software for nuclear magnetic resonance (NMR) spectrometers offer general functionality of instrument control and data processing; these applications are often developed with non-scripting languages. NMR users need to flexibly integrate rapidly developing NMR applications with emerging technologies. Scripting systems offer open environments for NMR users to write custom programs. However, existing scripting systems have limited capabilities for both extending the functionality of NMR software's non-script main program and using advanced native script libraries to support specialized application domains (e.g., biomacromolecules and metabolomics). Therefore, it is essential to design a novel scripting system to address both of these needs.
Result:
Here, a novel NMR scripting system named SpinSPJ is proposed. It works as a plug-in in the Java based NMR spectrometer software SpinStudioJ. In the scripting system, both Java based NMR methods and original CPython based libraries are supported. A module has been developed as a bridge to integrate the runtime environments of Java and CPython. The module works as an extension in the CPython environment and interacts with Java via the Java Native Interface. Leveraging this bridge, Java based instrument control and data processing methods of SpinStudioJ can be called with the CPython style. Compared with traditional scripting systems, SpinSPJ better supports both extending the non-script main program and implementing advanced NMR applications with a rich variety of script libraries. NMR researchers can easily call functions of instrument control and data processing as well as developing complex functionality (such as multivariate statistical analysis, deep learning, etc.) with CPython native libraries.
Conclusion:
SpinSPJ offers a user-friendly environment to implement custom functionality leveraging its powerful basic NMR and rich CPython libraries. NMR applications with emerging technologies can be easily integrated. The scripting system is free of charge and can be downloaded by visiting http://www.spinstudioj.net/spinspj .
Related Concept Videos
Applications Of NMR In Biology
NMR Spectroscopy: Spin–Spin Coupling
¹H NMR: Interpreting Distorted and Overlapping Signals
As Δν decreases and the signals move closer, the doublets appear increasingly distorted. The intensities of the inner lines increase at the cost of those of the outer lines as the signals are...
Spin–Spin Coupling: Two-Bond Coupling (Geminal Coupling)
The central atom need not be NMR-active because its electrons are affected by the electron polarization of the spin-active atoms. However, spin information is transmitted less effectively than in one-bond coupling, and 2J values are usually weaker than 1J values. The energy of...
NMR Spectrometers: Overview
Nuclear Magnetic Resonance (NMR): Overview
NMR spectroscopy generates a spectrum where the characteristic absorption frequencies of the sample are...

