Skip to main content

multi-in multi-out Configurable Ring Buffer for DAQ

Project description

mimoCoRB - multiple-in multiple-out Configurable Ring Buffer

Summary:

Provided here is a central component of each data acquisition system needed to record and pre-analyse data from randomly occurring processes. Typical examples are wave-forms data as provided by single-photon counters or typical detectors common in quantum mechanical measurements or in nuclear, particle physics 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 and a buffer manager running as a background process. Data are provided via the buffer manager interface to several consumer processes to analyze, check or visualize data and analysis results. Such consumers may be obligatory ones, i. e. data acquisition pauses if all input buffers are full and an obligatory consumer is still busy processing. A second type of random consumers or "observers" receives an event copy from the buffer manager upon request, without pausing the data acquisition process. Typical examples of random consumers are displays of a subset of the wave forms or of intermediate analysis results.

This project originated from an effort to structure and generalize data acquisition for several experiments in an advanced physics laboratory courses at Karlsruhe Institute of Technology.

As a simple demonstration, we provide signals recorded by a detector for cosmic muons with three layers. Occasionally, such muons stop in an absorber between the 2nd and 3rd layer, where they decay at rest and emit a high-energetic electron recorded as a 2nd pulse in one or two of the detection layers.

To see a simple example showing pules shapes and the extracted pulse heights from simulated waveforms, change to the directory examples/ of this package and execute

../run_daq.py spectrum_setup.yaml

The configuration files examples/simul_source.yaml and examples/simul_spin_setup.yaml contain more advanced examples of muon lifetime measurements from double-pulses produced by an incoming muon and the decay electron.

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

mimocorb-1.0.2rc2.tar.gz (40.5 kB view details)

Uploaded Source

Built Distribution

mimocorb-1.0.2rc2-py3-none-any.whl (42.1 kB view details)

Uploaded Python 3

File details

Details for the file mimocorb-1.0.2rc2.tar.gz.

File metadata

  • Download URL: mimocorb-1.0.2rc2.tar.gz
  • Upload date:
  • Size: 40.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for mimocorb-1.0.2rc2.tar.gz
Algorithm Hash digest
SHA256 1dd2a8419db071eaa9780e89c32e6d7542e9251bcd4933aecafb61e8f387818d
MD5 1c55caa817a21c00e980a8297e2b28a6
BLAKE2b-256 c0d62eed2f914067ecb1abd80063ad0489251f9a45131e2c620dd3dc4fbba4ce

See more details on using hashes here.

File details

Details for the file mimocorb-1.0.2rc2-py3-none-any.whl.

File metadata

  • Download URL: mimocorb-1.0.2rc2-py3-none-any.whl
  • Upload date:
  • Size: 42.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for mimocorb-1.0.2rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 f666defd71477c1273852f60fea0d50709d2d51bc1d0d0fc908102636f3b8f1d
MD5 f21c35f78f9087e6256a3b52f7bcd0b0
BLAKE2b-256 71a39166e3df203b152d185d833c273991c42a0d4c5fcd60dcedc1649b9ee6df

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page