Skip to main content

Spins in Liouville-space for rElaxation and Exchange in PYthon

Project description

drawing

SLEEPY

Spins in Liouville space for rElaxation and Exchange in PYthon

SLEEPY is software intended for the simulation of NMR spin-systems including exchange processes and relaxation. Includes easy setup of the spin system, and allows application of arbitrary pulse sequences in both the rotating- and lab-frames.

Requires standard python packages plus numpy/scipy/matplotlib. Multiprocess is recommended, and ipywidgets are used for creating zoomable plots, e.g. Google Colab, although is not required. Note that we highly recommend using the Intel MKL libraries with numpy/scipy at least if you're using an Intel CPU. Anaconda installs these by default on Intel machines (Miniconda does not!). Note that we have not been able to run MKL with Python 12 or 13.

Benchmarked version

  • Python: 3.11.13
  • Numpy: 1.24.3
  • Scipy: 1.10.1
  • Multiprocessing: 0.70.15

Other tested versions (speed may vary):

  • Python: 3.8.8, 3.9.3, 3.11.11, 3.13.2
  • numpy: 1.20.1, 2.0.2, 2.2.3
  • scipy: 1.6.2, 1.14.1, 1.15.2
  • matplotlib: 3.3.4, 3.10.0

Testing has been performed on the various notebooks found at https://github.com/alsinmr/SLEEPY_tutoria/ using Jupyter Notebooks on MacOS and on myBinder.org, and also on Google Colab.

Installation is possible via pip. Please run

pip install sleepy-nmr

This will create the "sleepy" module (not sleepy-nmr!). Typical install time is ~5 seconds (install time will be significantly longer if numpy, scipy, and matplotlib are not already installed, since these will be installed as dependencies).

The SLEEPY tutorial provides extensive examples of applications of SLEEPY and is available online at http://sleepy-nmr.org or https://alsinmr.github.io/SLEEPY

These examples may be downloaded as Jupyter notebooks or run online via Google Colab (demo).

We also provide example scripts here, in the folder 'examples', which may be run as Python3 scripts. To run these, please navigate to the examples folder and then run either

python3 ShortExamples.py

or

python3 Figure3.py

Both scripts will run a number of examples and create a folder of the corresponding figures. The former calculation takes on the order of 1 minute for 6 examples, and the latter on the order of 10 minutes for 9 examples (these correspond to Figure 3 of the corresponding manuscript).

Copyright 2025 Albert Smith-Penzel, Kai Zumpfe

All files are copyrighted under the GNU General Public License. A copy of the license has been provided in the file LICENSE

Funding for this project provided by:

Deutsche Forschungsgemeinschaft (DFG) grant 450148812

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sleepy_nmr-0.1.6.tar.gz (640.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sleepy_nmr-0.1.6-py3-none-any.whl (562.3 kB view details)

Uploaded Python 3

File details

Details for the file sleepy_nmr-0.1.6.tar.gz.

File metadata

  • Download URL: sleepy_nmr-0.1.6.tar.gz
  • Upload date:
  • Size: 640.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for sleepy_nmr-0.1.6.tar.gz
Algorithm Hash digest
SHA256 000f83b8e61a4e76b113c7eac2b2dbcf8627ade2ea2f6977031e97dbfe9f7af4
MD5 ed648d87b9770b1df0e80a0fa6d659e3
BLAKE2b-256 80b329813412e1f974f53be24d8afc5943f60c31ba2beca822bea74d7657c5c3

See more details on using hashes here.

File details

Details for the file sleepy_nmr-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: sleepy_nmr-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 562.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for sleepy_nmr-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 15f5f9abf73ea2a029fd7972033af12816c38e1b52269904492508ec2679ab59
MD5 2bc2a551d4fdbe88893bbf86a09ff7e4
BLAKE2b-256 2d8701a7e21991ecf18c5ddbb1564b4eb77e71e76a16e0ad0d4be9a4d45990bf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page