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.
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 | |
|---|---|---|---|
| cmrseq-0.27.1.tar.gz | 169.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cmrseq-0.27.1-py3-none-any.whl | Python 3 | none | any | Details |
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
|