Skip to main content

No project description provided

Project description

iMCAr logo

iMCAr: The interactive MCA recorder

This software provides a user-friendly application to use Multi-Channel Analyzers (MCA).

Screenshot of iMCAr with example data

Contributing

If you e.g. develop your own drivers for iMCAr or extend the application in a different way, consider contributing the code back to this repository through a Pull Request! There is no guarantee that the changes are merged since they may go into a different direction than the original aim of the software, so before implementing a large change consider opening an issue suggesting that feature so it can be discussed beforehand.

SAFETY NOTE

This software is not developed for usage in medical or other high precision environments. It does implement data recovery after application crashes, however that may not be perfect.
If you can, please run this software through a terminal so you can report stack traces of crashes on GitHub if you encounter a crash. Be careful!

Installation

For this software Python has to be installed and part of the PATH variable. The software is tested with Python 3.8.2. The Windows installer wizard asks at the beginning, if it should edit the PATH. Possibly at the end of the installation the adjustment of its length has to be accepted.

Many Linux distributions ship Python 3 as "python3" with "pip3" (opposed to "python" and "pip"). If that does not work, the commands have to be entered without the number 3.

After downloading the application, in the folder with this README.md file the following commands have to be executed:

pip3 install --upgrade setuptools
python3 setup.py install

You now can already start the software. To add your device to the software, open the documentation by either clicking the "➕" sign next to the device list.

Uninstallation

pip3 uninstall imcar

Start

After installation the program can be launched with the command

imcar

. To add a desktop shortcut, the location of the launcher can be found with where imcar (Windows) or whereis imcar (Linux/Unix). An icon is included in form of the file imcar/gui/icon.ico.

Warning: This only works if no virtual environment (e.g. via Anaconda) is used. For Anaconda3 under Windows, a solution would be to right click on the on the desktop shortcut, go to the 'Shortcut' tab and change "Start in" to C:\Users\<username>\Anaconda3\Library\bin or the equivalent path in your installation.

Troubleshooting

If the application does not launch, executing

sudo pip3 uninstall pyqt5-sip pyqt5 pyqtwebengine
sudo pip3 install pyqtwebengine

may solve the problem. The reason is that pyqt5-sip has to be installed BEFORE pyqt5. Also, both have to be installed in the same directory (sudo pip3 and pip3 must not be mixed). The installer of PyQtWebEngine installs everything in the right order, so the problem can be solved by uninstalling everything and purely executing the latest installer.

License

If not stated otherwise in the corresponding files, source code is distributed unter the GPLv3 license. This is at the moment required since this library uses the free version of PyQt5.

Dependencies

The following requirements are automatically installed if the recommended setup.py is used.

NumPy: https://www.numpy.org/
Matplotlib: https://matplotlib.org/
SciPy: https://www.scipy.org/
Uncertainties: https://pythonhosted.org/uncertainties/
PyUSB: https://pyusb.github.io/pyusb/
PyQt5: https://www.riverbankcomputing.com/software/pyqt/
PyQTGraph: http://www.pyqtgraph.org/
Markdown2: https://github.com/trentm/python-markdown2
faultguard: https://github.com/2xB/faultguard

faultguard was initially developed for this project.

Currently supported MCAs

As a design principle, this software has no dependencies to binaries from third partys such as MCA manufacturers. This allows the software to be platform independent and open source, but also makes it necessary to reverse engineer every MCA USB protocol for every supported product. If you are a vendor or want to contribute out of other reasons, please get in touch by e.g. creating an github issue with your contact address.

Name   Vendor ID   Product ID   Data Transfer Type   Notes
CAEN N957 8K MCA   0x0547   0x1002   Eventwise channel IDs  Reading first 8064 channels [1]

Notes

[1] The last channels are ignored since they can be invalid depending on internal settings.

Credits

Funding: Institute for Nuclear Physics, University of Münster, Germany

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

imcar-1.0.4.tar.gz (258.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imcar-1.0.4-py3-none-any.whl (263.8 kB view details)

Uploaded Python 3

File details

Details for the file imcar-1.0.4.tar.gz.

File metadata

  • Download URL: imcar-1.0.4.tar.gz
  • Upload date:
  • Size: 258.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for imcar-1.0.4.tar.gz
Algorithm Hash digest
SHA256 76edebfc1c26ea07f1914242d3a15591ddfee2892c2e6134fbb87083b13833af
MD5 5225dd4347c59202fa65d1e3ba407c32
BLAKE2b-256 a60c5f693a61208cbc338ca71beef1c1e37b0a6e0d71aae3a0ba5a47b80976e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcar-1.0.4.tar.gz:

Publisher: publish-python.yml on 2xB/imcar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file imcar-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: imcar-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 263.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for imcar-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 85b1dfab2e1a5e6606c150360fa12522918107d1e1d04a1c4d27cabead396cd9
MD5 df70fdbf59fa1051b261accee2feea45
BLAKE2b-256 bc66e5f9a78e9c80c7303679a50c2dd07b4bbbefa72a7972582bb20a0acab1bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for imcar-1.0.4-py3-none-any.whl:

Publisher: publish-python.yml on 2xB/imcar

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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