MCA Simulator Reference

MCA Simulator

Introduction

eMorpho Simulator

SiPM-1000, PMT-1000

SiPM-3000, PMT-3000

MCA Data Server

MCA Simulator

Software stack

The MCA simulator is a piece of compiled C-Code. The MCA Data Server connects to it as it would connect to an actual MCA.

When the MCA Data Server it imports mca_device.py. On import it executes libusb0.make_libusb0(). That function reads the rad_config/mds/mds_config.json file. By default the simulate key is set to None: "simulate": "None". If this is changed to one of "eMorpho", "PMT-1000", "SiPM-1000", "PMT-3000", "SiPM-3000", or "SiPM-Counter", the MDS will load the respective precompiled code (eg emorpho_simusb.dll or emorpho_simusb.so). The *_simusb code will simulate the requested device and be accessible through ctypes and libusb0.1 just as any real hardware would be.

Simulator and hardware cannot be mixed. If the "simulate" entry in the configuration file is one of the implemented MCA's the MDS will not recognize any actual hardware plugged into the computer.