Define your MRI sequences in pure python!
The cmrseq frame-work is build to define MRI sequences consisting of radio-frequency pulses, gradient waveforms and sampling events. All definitions follow the concept hierarchically assemble experiments where the basic building blocks (Arbitrary Gradients, Trapezoidals, RF-pulses and ADC-events) are forming the core functionality and are all instances of SequenceBaseBlock-instances. On instantiation all base-blocks are validated against the System specifications. Composition of base-blocks is done in a Sequence object. The Sequence object implements convenient definitions for addition and composition of multiple Sequence objects as well as to perform a variety on common operations on semantically grouped base-blocks.
Several semantically connected groups of building blocks (e.g. a slice selective excitation) are allready functionally defined in the parametric_definitions module. For a complete list of available definitions checkout the API-reference.
The original motivation for cmrseq was to create a foundation to define sequences for simulation experiments. Therefore Sequences can be easily gridded onto a regular (or even unregular grids with a maximum step width) grids. Furthermore, commonly useful functionalities as plotting, evaluation of k-space-trajectories, calculation of moments, etc.
To close the gap to real-world measurements, cmrseq includes an IO module that allows loading Phillips (GVE) sequence definitions as well as reading and writing Pulseq (>= 1.4) files, which then can be used to export the sequence to multiple vendor platforms. For more information on this file format please refer to the official PulSeq web-page.
Installation
The registry contains the versioned package, which can be installed using:
pip install cmrseq
There are only few package dependencies, namely: - numpy - matplotlib to display the waveforms - pint to assign physical units and assert correctness of calculations - tqdm progressbar visualizations - scipy selected functionalities
Documentation & Getting Started
The API documentation for released versions can be found here.
Metadata
Release files for cmrseq 0.27.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cmrseq-0.27.1.tar.gz | 169.3 kB | Without provenance | Details for cmrseq-0.27.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cmrseq-0.27.1-py3-none-any.whl | Python 3 | none | any | Details for cmrseq-0.27.1-py3-none-any.whl |
Total release size: 329.1 kB
Release files / cmrseq-0.27.1.tar.gz
| Download URL | cmrseq-0.27.1.tar.gz |
|---|---|
| Size | 169.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
83b21c4a74e8b484efc0f9c226c5e16470f5f580afd63d7c04e535efd1a5e8f8
|
|
BLAKE2b-256 checksum How to use checksums |
1196f23dbf6df663cb90eab5bb69adbdf9e7d64ad7dea70a7796be7d125f6ce7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.14
|
Release files / cmrseq-0.27.1-py3-none-any.whl
| Download URL | cmrseq-0.27.1-py3-none-any.whl |
|---|---|
| Size | 159.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
94c72197f12076f45204945101071a9342fe9c1099d054a0285aefb942754b57
|
|
BLAKE2b-256 checksum How to use checksums |
a38be35ddad8a37e2a2b53ec76a6d0dc05c0c25df72c36fc7eb69f22f799912a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.14
|
Security for cmrseq 0.27.1
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.