Multiple In Multiple Out Configurable Ring Buffer manager
Project description
Introduction
What is mimoCoRB2?
mimoCoRB2 (multiple in multiple out configurable ringbuffer manager) provides a central component of each data acquisition system needed to record and preanalyse data from randomly occurring processes. Typical examples are waveform data as provided by detectors common in quantum mechanical measurements, or in nuclear, particle and astro particle physics, e. g. photo tubes, Geiger counters, avalanche photo-diodes or modern SiPMs. The random nature of such processes and the need to keep read-out dead times low requires an input buffer for fast collection of data and an efficient buffer manager delivering a constant data stream to the subsequent processing steps. While a data source feeds data into the buffer, consumer processes receive the data to filter, reduce, analyze or simply visualize the recorded data. In order to optimally use the available resources, multi-core and multi-processing techniques must be applied.
This project originated from an effort to structure and generalize data acquisition for several experiments in advanced physics laboratory courses at Karlsruhe Institute of Technology (KIT) and has been extensively tested with Ubuntu Linux.
What can it do?
Amongst the core features of mimoCoRB2 are:
- multiprocessing safe ringbuffer for NumPy structured arrays
- setup of multiple ringbuffers and workers from configuration files
- templates for common interactions between buffers (importing/exporting, filtering, processing, observing)
- pre built functions for common operations (oscilloscope, histogram, pulse height analysis)
- gui for monitoring and controlling the system
Running an example
Clone this repo and move into the directory
pip install .
mimocorb2 examples/muon/spin_setup.yaml
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mimocorb2-0.0.1.tar.gz.
File metadata
- Download URL: mimocorb2-0.0.1.tar.gz
- Upload date:
- Size: 42.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7477e8cf91fef6db13394547d249c80f0c9e09d50c50c2eada63a02f8a86f710
|
|
| MD5 |
fc4b1a870713f61b06f34788a25df325
|
|
| BLAKE2b-256 |
0e1334cc3c6b16224ee7b5df36f37c4b4e87d4bdc77a8f4c8b5c64ac00b4925b
|
File details
Details for the file mimocorb2-0.0.1-py3-none-any.whl.
File metadata
- Download URL: mimocorb2-0.0.1-py3-none-any.whl
- Upload date:
- Size: 50.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7bc7393f26596f67042300b46ffb6a247f068a8fe3f9e93315820f6d8e5908f3
|
|
| MD5 |
6de47ca6b5a9e4d23f1265715299e413
|
|
| BLAKE2b-256 |
67379fd72c79ebedcd6cfa2d8645edf2dad6357ba704b407ebdd1f268a7958ae
|