brukerapi 0.1.9__py3-none-any.whl → 0.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,244 @@
1
+ Metadata-Version: 2.4
2
+ Name: brukerapi
3
+ Version: 0.2.0
4
+ Summary: Bruker API
5
+ Author-email: Tomas Psorn <tomaspsorn@isibrno.cz>, Jiri Vitous <vitous@isibrno.cz>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/isi-nmr/brukerapi-python
8
+ Project-URL: Download, https://github.com/isi-nmr/brukerapi-python/releases/latest
9
+ Requires-Python: >=3.8
10
+ Description-Content-Type: text/x-rst
11
+ License-File: LICENSE
12
+ Requires-Dist: numpy<2; python_version < "3.9"
13
+ Requires-Dist: numpy>=1.26.0; python_version >= "3.9"
14
+ Requires-Dist: pyyaml
15
+ Provides-Extra: dev
16
+ Requires-Dist: pytest; extra == "dev"
17
+ Requires-Dist: zenodo_get; extra == "dev"
18
+ Requires-Dist: ruff; extra == "dev"
19
+ Requires-Dist: pytest-cov; extra == "dev"
20
+ Dynamic: license-file
21
+
22
+ brukerapi-python
23
+ ======================
24
+
25
+ .. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.3831320.svg
26
+ :target: https://doi.org/10.5281/zenodo.3831320
27
+
28
+ .. image:: https://github.com/isi-nmr/brukerapi-python/workflows/CI/badge.svg
29
+ :target: https://doi.org/10.5281/zenodo.3831320
30
+
31
+ .. image:: https://readthedocs.org/projects/bruker-api/badge/?version=latest
32
+ :target: https://bruker-api.readthedocs.io/en/latest/?badge=latest
33
+ :alt: Documentation Status
34
+
35
+
36
+ A Python package providing I/O interface for Bruker data sets.
37
+
38
+ tl;dr
39
+ ========
40
+
41
+ Install using pip:
42
+
43
+ .. code-block:: shell
44
+
45
+ pip install brukerapi
46
+
47
+ Load any **data set**:
48
+
49
+ .. code-block:: python
50
+
51
+ from brukerapi.dataset import Dataset
52
+ dataset = Dataset('{path}/2dseq') # create data set, works for fid, 2dseq, rawdata.x, ser
53
+ dataset.data # access data array
54
+ dataset.VisuCoreSize # get a value of a single parameter
55
+
56
+ Load an entire **study**:
57
+
58
+ .. code-block:: python
59
+
60
+ from brukerapi.folders import Study
61
+ study = Study('{path_to_study_folder}')
62
+ dataset = study.get_dataset(exp_id='1', proc_id='1')
63
+
64
+ # get_dataset returns an empty dataset
65
+ # in order to load data into the data set, you can either use the context manager:
66
+
67
+ with dataset as d:
68
+ d.data # access data array
69
+ d.VisuCoreSize # get a value of a parameter
70
+
71
+ # or the load function
72
+ dataset.load()
73
+ dataset.data # access data array
74
+ dataset.VisuCoreSize # get a value of a single parameter
75
+
76
+ Load a parametric file:
77
+
78
+ .. code-block:: python
79
+
80
+ from brukerapi.jcampdx import JCAMPDX
81
+
82
+ parameters = JCAMPDX('path_to_scan/method')
83
+
84
+ TR = data.params["PVM_RepetitionTime"].value # This way
85
+ TR = data.get_value("PVM_RepetitionTime") # Or this way
86
+
87
+
88
+
89
+
90
+
91
+ Features
92
+ ========
93
+
94
+ * **I/O** interface for **fid** data sets
95
+ * **I/O** interface for **2dseq** data sets
96
+ * **I/O** interface for **ser** data sets
97
+ * **I/O** interface for **rawdata** data sets
98
+ * **Random access** for **fid** and **2dseq** data sets
99
+ * **Split** operation implemented over **2dseq** data sets
100
+ * **Filter** operation implemented over Bruker **folders** (allowing you to work with a subset of your study only)
101
+
102
+ Examples
103
+ ========
104
+
105
+ * How to `read <examples/read_fid.ipynb>`_ a Bruker fid, 2dseq, rawdata, or ser file
106
+ * How to `split slice packages <examples/split_sp_demo.ipynb>`_ of a 2dseq data set
107
+ * How to `split FG_ECHO <examples/split_fg_echo_demo.ipynb>`_ of a 2dseq data set
108
+ * How to `split FG_ISA <examples/examples/split_fg_isa_demo.ipynb>`_ of a 2dseq data set
109
+
110
+ Documentation
111
+ ==============
112
+
113
+ Online `documentation <https://bruker-api.readthedocs.io/en/latest/>`_ of the API is available at Read The Docs.
114
+
115
+
116
+ Install
117
+ =======
118
+ Using pip:
119
+
120
+ .. code-block:: shell
121
+
122
+ pip install brukerapi
123
+
124
+ From source:
125
+
126
+ .. code-block:: shell
127
+
128
+ git clone https://github.com/isi-nmr/brukerapi-python.git
129
+ cd brukerapi-python
130
+ python setup.py build
131
+ python setup.py install
132
+
133
+ Testing
134
+ ========
135
+ To ensure reliability, every commit to this repository is tested against the following, publicly available
136
+ data sets:
137
+
138
+ * `BrukerAPI test data set (Bruker ParaVision v5.1) <https://doi.org/10.5281/zenodo.3899268>`_
139
+ * `BrukerAPI test data set (Bruker ParaVision v6.0.1) <https://doi.org/10.5281/zenodo.3894651>`_
140
+ * `bruker2nifti_qa data set <https://gitlab.com/naveau/bruker2nifti_qa>`_
141
+
142
+ Compatibility
143
+ =============
144
+
145
+ The API was tested using various data sets obtained by **ParaVision 5.1**, **6.0.1** and **360**. It it is compatible
146
+ with the following data set types from individual ParaVision versions.
147
+
148
+ ParaVision v5.1
149
+ """""""""""""""
150
+ Compatible data set types:
151
+
152
+ * **fid**
153
+ * **2dseq**
154
+ * **rawdata.job0**
155
+ * **rawdata.Navigator**
156
+
157
+ Compatible pulse sequences for **fid** data sets:
158
+
159
+ * FLASH.ppg
160
+ * MGE.ppg
161
+ * MSME.ppg
162
+ * RARE.ppg
163
+ * FAIR_RARE.ppg
164
+ * RAREVTR.ppg
165
+ * RAREst.ppg
166
+ * MDEFT.ppg
167
+ * FISP.ppg
168
+ * FLOWMAP.ppg
169
+ * DtiStandard.ppg
170
+ * EPI.ppg
171
+ * FAIR_EPI.ppg
172
+ * DtiEpi.ppg
173
+ * T1_EPI.ppg
174
+ * T2_EPI.ppg
175
+ * T2S_EPI.ppg
176
+ * SPIRAL.ppg
177
+ * DtiSpiral.ppg
178
+ * UTE.ppg
179
+ * UTE3D.ppg
180
+ * ZTE.ppg
181
+ * CSI.ppg
182
+ * FieldMap.ppg
183
+ * NSPECT.ppg
184
+ * PRESS.ppg
185
+ * STEAM.ppg
186
+ * igFLASH.ppg
187
+
188
+ ParaVision v6.0.1 and v7.0.0
189
+ """""""""""""""""""""""""""""""
190
+ Compatible data set types:
191
+
192
+ * **fid**
193
+ * **2dseq**
194
+ * **rawdata.job0**
195
+ * **rawdata.Navigator**
196
+
197
+ Compatible pulse sequences for **fid** data sets:
198
+
199
+ * FLASH.ppg,
200
+ * FLASHAngio.ppg
201
+ * IgFLASH.ppg
202
+ * MGE.ppg
203
+ * MSME.ppg
204
+ * RARE.ppg
205
+ * FAIR_RARE.ppg
206
+ * RAREVTR.ppg
207
+ * RAREst.ppg
208
+ * MDEFT.ppg
209
+ * FISP.ppg
210
+ * FLOWMAP.ppg
211
+ * DtiStandard.ppg
212
+ * EPI.ppg
213
+ * FAIR_EPI.ppg
214
+ * CASL_EPI.ppg
215
+ * DtiEpi.ppg
216
+ * T1_EPI.ppg
217
+ * T2_EPI.ppg
218
+ * T2S_EPI.ppg
219
+ * SPIRAL.ppg
220
+ * DtiSpiral.ppg
221
+ * UTE.ppg
222
+ * UTE3D.ppg
223
+ * ZTE.ppg
224
+ * CSI.ppg
225
+ * FieldMap.ppg
226
+ * SINGLEPULSE.ppg
227
+ * NSPECT.ppg
228
+ * EPSI.ppg
229
+ * PRESS.ppg
230
+ * STEAM.ppg
231
+ * ISIS.ppg
232
+ * CPMG.ppg
233
+ * RfProfile.ppg
234
+
235
+
236
+ ParaVision 360 v1.1 v3.0-v3.7
237
+ """""""""""""""""""""""""""""""""
238
+ Reading rawdata is supported only in a basic form, no reshaping into k-space is supported at the moment.
239
+ Compatible data set types:
240
+
241
+ * **2dseq**
242
+ * **rawdata.job0**
243
+ * **rawdata.Navigator**
244
+
@@ -0,0 +1,25 @@
1
+ brukerapi/__init__.py,sha256=lT95qTFTZoyKk5vKYR3lPIdoLY6y4r8eOJcbk_wTy0g,83
2
+ brukerapi/cli.py,sha256=Vkl8ZL2_8WGh1gv9AGY54Y0TP7MNX7Sf9RwQOKrcGnY,4158
3
+ brukerapi/data.py,sha256=qvILBKRbQf2DEZRpnySuOa8dRkXBEhizDJkFvRxZPKg,201
4
+ brukerapi/dataset.py,sha256=obd_zc9KZOhYe7DQbGSLXGaBwuGoi4NWXNocS3kSJf8,25251
5
+ brukerapi/exceptions.py,sha256=qsXzJLZn1mdypN8TltX4fUPgCxCDWWFaVpEPlBkDRE4,8501
6
+ brukerapi/folders.py,sha256=pJ7HOfp4aEl01pDRYJdiRaLljzbpbQbxkhgntBpFltg,17798
7
+ brukerapi/jcampdx.py,sha256=SqT9AE_qxezlKnM2hfHTIFZXusO-UgezNJeVqKwayAY,25392
8
+ brukerapi/mergers.py,sha256=Kt3gzE64fzgexi6DGIxSDjA6Bsrpv3E_Kvw2K5AA4Es,3944
9
+ brukerapi/schemas.py,sha256=R_W1BkeLT56Jsu9MmSKszOPhBcsIPPXy3B45j-PrDaU,24623
10
+ brukerapi/splitters.py,sha256=Z276unmCOL6YIbRrUP1QKU49QiTq3_7U7GbnZQt_Qug,15793
11
+ brukerapi/utils.py,sha256=Auuj_RyBKxjG7jNKOKngeJyp95bFvAPk_4aYnR_Wbms,1447
12
+ brukerapi/config/properties_2dseq_core.json,sha256=3JlQyDWhRiczFhLTXR0NS1OIxWwRljDBRvwlBtUnsfg,3919
13
+ brukerapi/config/properties_2dseq_custom.json,sha256=Kxic-Asg2am-vFtFHaHN_lxZdA8VEBUXlVeSPLbWLBw,9282
14
+ brukerapi/config/properties_fid_core.json,sha256=cxFIbb37lzl4oKTTg6226hv9ul3ClBMAUJcYxoTszow,17236
15
+ brukerapi/config/properties_fid_custom.json,sha256=QIN3fryEbuV236D9GIOPmNkBYiKNXMByjTS4uubCmUM,1347
16
+ brukerapi/config/properties_rawdata_core.json,sha256=wF2uDSUtM_fOep-grs6Jy46giGHTEwIkkFHykLFcrMI,3028
17
+ brukerapi/config/properties_rawdata_custom.json,sha256=hNA4yuvxYua57PHDINGic3bDWft1VpIu1D0JSeXn6V4,833
18
+ brukerapi/config/properties_traj_core.json,sha256=zx2gnPkVj9fUAL1iwixrtoRV7BlJpVTSYA4I-7s9Mzc,1956
19
+ brukerapi/config/properties_traj_custom.json,sha256=-KWibjBW62-wbe6z28z9iK50kAIAyYxwtZZru37J1N4,4
20
+ brukerapi-0.2.0.dist-info/licenses/LICENSE,sha256=qrKdH1kPjQsHQZxAS6dOSoPKyhrI0nKtNFVhG-fjDJw,1064
21
+ brukerapi-0.2.0.dist-info/METADATA,sha256=Pnpr54WUISHauMVmpPLXTDMIazdaexueMmHl7ezjZcE,5853
22
+ brukerapi-0.2.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
23
+ brukerapi-0.2.0.dist-info/entry_points.txt,sha256=GkMTo84oMksVEhkrItYbnegKXFu0jyQHfOAvAn8z-Wo,46
24
+ brukerapi-0.2.0.dist-info/top_level.txt,sha256=32V6nLorM2P3LQY_gPPKEgDbeTF0N-HCAyUeEUsf2GU,10
25
+ brukerapi-0.2.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.38.4)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,13 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: brukerapi
3
- Version: 0.1.9
4
- Summary: Bruker API
5
- Home-page: https://github.com/isi-nmr/brukerapi-python
6
- Download-URL: https://github.com/isi-nmr/brukerapi-python/releases/latest
7
- Author: Tomas Psorn
8
- Author-email: tomaspsorn@isibrno.cz
9
- License: MIT
10
- License-File: LICENSE
11
- Requires-Dist: numpy
12
- Requires-Dist: pyyaml
13
-
@@ -1,25 +0,0 @@
1
- brukerapi/__init__.py,sha256=lT95qTFTZoyKk5vKYR3lPIdoLY6y4r8eOJcbk_wTy0g,83
2
- brukerapi/cli.py,sha256=2ABei7RcKh1yjXwjt1mjohhf_bs42KpcJ9VDgrs8xW0,4171
3
- brukerapi/data.py,sha256=qdG404FHfWqk2g59E1qmtGpEghTKWcavt_kzvbo2WN8,203
4
- brukerapi/dataset.py,sha256=azPsK0Z_BzCPre4Wc3d_QQK50JiihLD_koY3T419U_w,25048
5
- brukerapi/exceptions.py,sha256=XHX6vtjPCqNMConAbT0IDjdiTIhHZe8kqjL12eBJ0Fg,9234
6
- brukerapi/folders.py,sha256=4JvAXbekqI0BTU3EBlSuObGio9wnKiuIm8Ggiprdjuw,17605
7
- brukerapi/jcampdx.py,sha256=WVTXJU4STAMz5aQXkmVp9ToU9PRLo2J9i9IDVpBKxYQ,25191
8
- brukerapi/mergers.py,sha256=IyNMesrhkdmexQgpO7vetaCJ-TSgN6zIatkLOv3mRMo,4067
9
- brukerapi/schemas.py,sha256=5-D67KjSchtWy65CJlfcXb4NdJB02UoVIYrEfulCyVc,24962
10
- brukerapi/splitters.py,sha256=idDwerSDs9MKrXpuTDEOsAiMxrBKL8_pd1rPX5b-g-E,15412
11
- brukerapi/utils.py,sha256=kDKq1FV_E4mnROHALPEfv9aTfNy_QfIeZE6wB6IAn_E,1604
12
- brukerapi/config/properties_2dseq_core.json,sha256=3JlQyDWhRiczFhLTXR0NS1OIxWwRljDBRvwlBtUnsfg,3919
13
- brukerapi/config/properties_2dseq_custom.json,sha256=Kxic-Asg2am-vFtFHaHN_lxZdA8VEBUXlVeSPLbWLBw,9282
14
- brukerapi/config/properties_fid_core.json,sha256=DYOKtJwqDhtKoJK1DPTuxofsiWwol2yXtnLfJp7TBzg,16076
15
- brukerapi/config/properties_fid_custom.json,sha256=QIN3fryEbuV236D9GIOPmNkBYiKNXMByjTS4uubCmUM,1347
16
- brukerapi/config/properties_rawdata_core.json,sha256=yksvjh5o4-t1e2VVzDSy_WuF5QzllovcwefxlIRJ188,2528
17
- brukerapi/config/properties_rawdata_custom.json,sha256=RBNvo1WzZ4oRRq0W9-hknpT7T8If536DEMBg9hyq_4o,2
18
- brukerapi/config/properties_traj_core.json,sha256=zx2gnPkVj9fUAL1iwixrtoRV7BlJpVTSYA4I-7s9Mzc,1956
19
- brukerapi/config/properties_traj_custom.json,sha256=-KWibjBW62-wbe6z28z9iK50kAIAyYxwtZZru37J1N4,4
20
- brukerapi-0.1.9.dist-info/LICENSE,sha256=qrKdH1kPjQsHQZxAS6dOSoPKyhrI0nKtNFVhG-fjDJw,1064
21
- brukerapi-0.1.9.dist-info/METADATA,sha256=yszIVM8jtQF-dUwXGXPkTHhJJzuut_OAM1k3PypSG1k,337
22
- brukerapi-0.1.9.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
23
- brukerapi-0.1.9.dist-info/entry_points.txt,sha256=GkMTo84oMksVEhkrItYbnegKXFu0jyQHfOAvAn8z-Wo,46
24
- brukerapi-0.1.9.dist-info/top_level.txt,sha256=32V6nLorM2P3LQY_gPPKEgDbeTF0N-HCAyUeEUsf2GU,10
25
- brukerapi-0.1.9.dist-info/RECORD,,