Skip to main content

spectrochempy-nmr

NMR plugin for SpectroChemPy.

This package is the home for NMR-specific readers and tools that are useful in SpectroChemPy but should not live in the core package. It currently provides a validated public 1D workflow for reading data and processing raw 1D FIDs through scp.nmr.read(...) and scp.nmr.Experiment(...).

Future NMR readers or processing helpers can be added here without creating a new plugin package for each vendor format. Multi-dimensional NMR remains under active characterization and is not currently part of the public supported processing workflow.

Installation

The next release, 0.1.13, requires SpectroChemPy 1.1.0 or later (and remains restricted to SpectroChemPy versions below 2). Users who stay on SpectroChemPy 1.0.0 should keep an earlier compatible version of this plugin.

pip install spectrochempy[nmr]

For development inside the SpectroChemPy repository:

pip install -e .
pip install -e plugins/spectrochempy-nmr

Usage

import spectrochempy as scp

dataset = scp.nmr.read("path/to/1/fid")
dataset = scp.nmr.read("path/to/1/pdata/1/1r")
dataset = scp.nmr.read("path/to/experiment", expno=1, procno=1)

experiment = scp.nmr.Experiment(dataset)
spectrum = experiment.process(apodization="em", lb=2.0, size=32768)

This explicit processing example does not imply that vendor processing parameters are automatically imported and replayed from metadata. That contract remains under active characterization.

The current explicit apodization contract covers the public modes already exposed by Experiment.process(): em(lb=...), gm(lb=..., gb=...), and sp(ssb=..., pow=...).

The result of Experiment.process() also records the SpectroChemPy-owned processing trace in result.meta.nmr_processing["scp_processing"]. requested contains only the arguments explicitly provided by the user, whereas applied contains only the operations that were actually executed and the values they really consumed. This trace is attached to the result only: the source dataset is not mutated, the vendor procs profile remains purely descriptive, and phase="metadata" does not replay TopSpin PHC0/PHC1.

The NMR ppm/frequency unit context is also provided by this plugin:

from spectrochempy_nmr.units import set_nmr_context

set_nmr_context(104.3 * scp.ur.MHz)

The compatibility aliases scp.nmr.read_topspin(...) and scp.read_topspin(...) are kept for historical usage. TopSpin is a reader, so it is not exposed as dataset.read_topspin(...) or dataset.nmr.read_topspin(...).

Development

python -m pytest tests/ -v

Metadata

Release files for spectrochempy-nmr 0.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for spectrochempy-nmr 0.1.14
File Size Uploaded
spectrochempy_nmr-0.1.14.tar.gz 117.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for spectrochempy-nmr 0.1.14
File Interpreter ABI Platform
spectrochempy_nmr-0.1.14-py3-none-any.whl Python 3 none any Details

Total release size: 204.8 kB

Release files / spectrochempy_nmr-0.1.14.tar.gz

Download URL spectrochempy_nmr-0.1.14.tar.gz
Size 117.8 kB
Tags Source
SHA-256 checksum
How to use checksums
349f090dbaadebb3d827146217b94a08547c75157b858eac4480e5fd11f6e9ef
BLAKE2b-256 checksum
How to use checksums
5138c9faa6e491da342dc3262a59922e149829a6c1a8a12008c2309b11a26b0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release files / spectrochempy_nmr-0.1.14-py3-none-any.whl

Download URL spectrochempy_nmr-0.1.14-py3-none-any.whl
Size 87.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3325d2b527c63000101d6ac77c49ca55b1453ed3a25400ee714fefefeb952a60
BLAKE2b-256 checksum
How to use checksums
7ccd56b1c3e14c8eaaaf4bfa597ed9c898c94dae4b82b7195b28889d330d1e32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.15

2 release files

This release

0.1.14 This release

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.8

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page