mimocorb


Namemimocorb JSON
Version 1.0.2rc2 PyPI version JSON
download
home_pageNone
Summarymulti-in multi-out Configurable Ring Buffer for DAQ
upload_time2024-10-07 13:32:56
maintainerNone
docs_urlNone
authorChristoph Mayer
requires_python>=3.9
licenseMIT BSD 2-Clause License Copyright (c) 2017-2021, Guenter Quast (Guenter.Quast@online.de) All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
keywords karlsruhe data lab laboratory practical course education acquisition university students physics
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # **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

```bash
../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. 


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mimocorb",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "karlsruhe, data, lab, laboratory, practical course, education, acquisition, university, students, physics",
    "author": "Christoph Mayer",
    "author_email": "G\u00fcnter Quast <Guenter.Quast@online.de>, Klaus Heitlinger <HeitILNK@t-online.de>",
    "download_url": "https://files.pythonhosted.org/packages/c0/d6/2eed2f914067ecb1abd80063ad0489251f9a45131e2c620dd3dc4fbba4ce/mimocorb-1.0.2rc2.tar.gz",
    "platform": null,
    "description": "# **mimoCoRB** - multiple-in multiple-out Configurable Ring Buffer\n\n## Summary:\n\nProvided here is a central component of each data acquisition system\nneeded to record and pre-analyse data from randomly occurring processes.\nTypical examples are wave-forms data as provided by single-photon\ncounters or typical detectors common in quantum mechanical measurements\nor in nuclear, particle physics and astro particle physics, e. g.\nphoto tubes, Geiger counters, avalanche photo-diodes or modern SiPMs.\n\nThe random nature of such processes and the need to keep read-out dead\ntimes low requires an input buffer and a buffer manager running as\na background process. Data are provided via the buffer manager \ninterface to several consumer processes to analyze, check or visualize\ndata and analysis results. Such consumers may be obligatory ones,\ni. e. data acquisition pauses if all input buffers are full and an \nobligatory consumer is still busy processing. A second type of\nrandom consumers or \"observers\" receives an event copy from the buffer\nmanager upon request, without pausing the data acquisition process.\nTypical examples of random consumers are displays of a subset of the\nwave forms or of intermediate analysis results.\n\nThis project originated from an effort to structure and generalize\ndata acquisition for several experiments in an advanced physics laboratory\ncourses at Karlsruhe Institute of Technology.\n\nAs a simple demonstration, we provide signals recorded by a detector\nfor cosmic muons with three layers. Occasionally, such muons stop\nin an absorber between the 2nd and 3rd layer, where they decay at rest\nand emit a high-energetic electron recorded as a 2nd pulse in one or\ntwo of the detection layers. \n\nTo see a simple example showing pules shapes and the extracted pulse\nheights from simulated waveforms, change to the directory `examples/`\nof this package and execute\n\n```bash\n../run_daq.py spectrum_setup.yaml\n```\nThe configuration files `examples/simul_source.yaml` and \n`examples/simul_spin_setup.yaml` contain more advanced\nexamples of muon lifetime measurements from double-pulses\nproduced by an incoming muon and the decay electron. \n\n",
    "bugtrack_url": null,
    "license": "MIT BSD 2-Clause License  Copyright (c) 2017-2021, Guenter Quast (Guenter.Quast@online.de) All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:  * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.  * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.",
    "summary": "multi-in multi-out Configurable Ring Buffer for DAQ",
    "version": "1.0.2rc2",
    "project_urls": {
        "Homepage": "http://www.etp.kit.edu/~quast/"
    },
    "split_keywords": [
        "karlsruhe",
        " data",
        " lab",
        " laboratory",
        " practical course",
        " education",
        " acquisition",
        " university",
        " students",
        " physics"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "71a39166e3df203b152d185d833c273991c42a0d4c5fcd60dcedc1649b9ee6df",
                "md5": "f21c35f78f9087e6256a3b52f7bcd0b0",
                "sha256": "f666defd71477c1273852f60fea0d50709d2d51bc1d0d0fc908102636f3b8f1d"
            },
            "downloads": -1,
            "filename": "mimocorb-1.0.2rc2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f21c35f78f9087e6256a3b52f7bcd0b0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 42111,
            "upload_time": "2024-10-07T13:32:53",
            "upload_time_iso_8601": "2024-10-07T13:32:53.805670Z",
            "url": "https://files.pythonhosted.org/packages/71/a3/9166e3df203b152d185d833c273991c42a0d4c5fcd60dcedc1649b9ee6df/mimocorb-1.0.2rc2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c0d62eed2f914067ecb1abd80063ad0489251f9a45131e2c620dd3dc4fbba4ce",
                "md5": "1c55caa817a21c00e980a8297e2b28a6",
                "sha256": "1dd2a8419db071eaa9780e89c32e6d7542e9251bcd4933aecafb61e8f387818d"
            },
            "downloads": -1,
            "filename": "mimocorb-1.0.2rc2.tar.gz",
            "has_sig": false,
            "md5_digest": "1c55caa817a21c00e980a8297e2b28a6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 40538,
            "upload_time": "2024-10-07T13:32:56",
            "upload_time_iso_8601": "2024-10-07T13:32:56.058430Z",
            "url": "https://files.pythonhosted.org/packages/c0/d6/2eed2f914067ecb1abd80063ad0489251f9a45131e2c620dd3dc4fbba4ce/mimocorb-1.0.2rc2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-07 13:32:56",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mimocorb"
}
        
Elapsed time: 0.30976s