Application to be run on rawdata from the MUTOMCA apparatus, consisting of two drift-tube (DT) modules and two CMS superlayers (SL) (a.k.a. Phi).
The same environment provided by the guide is suitable.
The source code for the PreProcess is stored in Baltig.
Since the source code of the DTFitter can be downloaded only by the authorized developers, credentials for Baltig are necessary. The simplest way is using RSA keys, the public key must be uploaded into Baltig and the private key must be saved into ${HOME}/.ssh/id_rsa |
Once git client has been correctly configured the commands are:
git clone https://baltig.infn.it/muontomography/PreProcess.git cd PreProcess |
The commands to build the code are:
cmake3 <path-to-source> make |
<path-to-source> is the path to the CMakeLists.txt file in PreProcess directory, e.g.: /home/centos/PreProcess |
The executable is found in the directory run/
The Preprocess application can be used for different purposes, that can be specified as an argument when launching the program.
Display the occupancy of the four detectors and save the histograms in an output root file.
By means of an interactive function, write the noisy channels in an output text file in the following format:
[detector] [board ID] [channel ID] [SW layer ID] [SW tube/cell ID] |
where [detector] could be DET0, DET1, SL0, or SL1. This file can be given as an input noise file to the DTfitter application.
Display the histograms of the raw times read from the noisy channels written in the noise file and save the histograms in an output root file.
Calculate t0 of each event and save it in an output text file. The output file has the following format:
[event ID] [t0 info] [t0 DET 0 in ns] [t0 DET 1 in ns] |
where [t0 info] is set to ext if a mean timer is present in that event, otherwise to min if the minimum of the drift times of that event is used. This file can be given as an input t0 file to the DTfitter application. Also, the histograms related to the mean-timer formulas are shown and save in an output root file.
Show an event-per-event display of the hits in the four detector, in the local reference frame of the detectors or in a global reference frame centered with the cask.
Copy the template configuration file config-example.ini from the PreProcess/utils/ directory to the PreProcess/run/directory and rename it config.ini. Now you can modify the config.ini file in your PreProcess/run/ directory and set all the parameters needed to run the code.
Input files:
Variable | Type | Description |
---|---|---|
rawDirName | string | path of the input file directory |
rawFileNameTubes_1 | string | name of the input file for DET 0 (file 1_) |
rawFileNamePhi_3 | string | name of the input file for SL 0 (file 3_) |
rawFileNameTubes_2 | string | name of the input file for DET 1 (file 2_) |
rawFileNamePhi_4 | string | name of the input file for SL 1 (file 4_) |
maxEventNumber | int | maximum number of events to be read |
Output files:
Variable | Type | Description |
---|---|---|
outputDirName | string | path of the output file directory |
noiseFileName | string | name of the output file with noisy channels |
t0FileName | string | name of the output file with t0 |
rootFileName | string | name of the output root file with histograms |
Debugging:
Variable | Type | Description |
---|---|---|
debug | bool | set to 1 to dump debug messages |
Monitor: these variables are only relevant when running the Monitor:
Variable | Type | Description |
---|---|---|
global | bool | Display hits in the gloabl (1) or local (0) reference frame |
start | uint | First event number to be displayed |
det0Rot | float | DET 0 rotation angle wrt an arbitrary reference [deg] |
det1Rot | float | DET 1 rotation angle wrt an arbitrary reference [deg] |
det0Dist | float | distance of DET 0 from Castor center [cm] |
det1Dist | float | distance of DET 1 from Castor center [cm] |
det0Z | float | z coordinate of DET 0 center [cm] |
det1Z | float | z coordinate of DET 1 center [cm] |
cd run ./runPreProcess <analysis> |
<analysis> may be: occupancy, writeNoiseFile, noise, t0, monitor. |