Data Analysis - Hodoscope Calibration

From Xem2
Revision as of 18:51, 7 July 2022 by Cmorean (talk | contribs)
Jump to navigationJump to search

Hodoscope Construction

For a brief, yet descriptive, overview of the Hall C hodoscopes, see Carlos Yero's Doc DB document:
https://hallcweb.jlab.org/DocDB/0009/000970/002/hodo_calib_v2.pdf The general principles of the hodoscope calibration are also in Carlos's document. You should familiarize yourself with the above document before attempting to follow the hodoscope calibration procedures below.

SHMS Hodoscope Calibration Procedure

NOTE: 1-2 Million evens are required to get a good fits of the time-walk (TW) and propagation velocity parameters (Vp).
Please refer to the README.md in the CALIBRATION/shms_hodo_calib/ directory.

Troubleshooting the calibration

<Carlos's email plots>
<Calibration scripts currently in repo cannot be used for previous hodoscopes because calibration has been updated to match cuts / cable lengths for current hodoscope setup. >

Steps for Calibration

This section outlines the hodoscope calibration procedure in hallc_replay_XEM for the SHMS. A standalone CALIBRATION script has been made for the HMS and SHMS to avoid manual setting of parameters. This has been done to avoid forgetting to set or unset parameters during the calibration process. Additionally, it is nice to be able to check if the calibration from several runs ago is still applicable to the current runs.

  • Set the flag h(p)tofusinginvadc = 0 to NOT use the hodo parameters from the previous hodoscope calibration

procedure. This flag is found on hallc replay/PARAM/H(S)MS/HODO/ directory.

Replay the raw data file, typically 1-2 M events is required for a good fit to be done.
In the directory hallc replay/CALIBRATION/(s)hms hodo calib/, run the following code:

root -l timeWalkHistos.C(<run num>)

This script takes as input the ROOTfile replayed and creates another ROOTfile with histogram objects that are used to perform the time-walk correction.
To do the time-walk corrections, run the following code:

root -l timeWalkCalib.C(<run num>)

This script takes as input the ROOTfile containing the histogram objects produced by the previous script. A parameterfile containing the time-walk parameters will be produced at:

hallc replay/PARAM/(S)HMS/HODO/(p)hhodo TWcalib runNUM.param

This parameter file name has to be manually changed to exclude the run number, since hcana reads in the parameter file as (p)hhodo TWcalib.param.
Replay the raw data file, once again (1 - 2 M events), with the updated time-walk parameters.
In the hodoscopoe calibration directory, run the following code:

root -l fitHodoCalib.C

The first part of this script performs a linear fit on the time-walk corrected time vs. hodoscope track to determine the propagation velocity and the cable time difference across each paddle. The second part of this code solves a matrix equation for the λ parameters mentioned in the previous section. A parameter file containing the time-walk parameters will be produced at

hallc replay/PARAM/(S)HMS/HODO/(p)hhodo Vpcalib runNUM.param

This parameter file name has to be manually changed to exclude the run number, since hcana reads in the parameter file as (p)hhodo Vpcalib.param.
Replay the raw data one last time, and check the hodoscope beta distribution. You may have to apply a calorimeter cut (for example, (P)H.cal.etracknorm>0.7) A good calibration should have the beta centered at unity. (See Figure 9)