Study the MDT single-tube resolution in data and in MC and its impact on the muon momentum resolution.

Qualification Project summary


A typical drift time measurement.

This study investigates the impact of calibration uncertainties on the MDT performance. It focuses on high-pT muons as the impact on them is expected to be largest.

It employs tools specifically developed for this task, the MdtCalibT0ShiftSvc and the TMaxShiftSvc, which are part of the MdtCalibShiftMapTools package .


Charge traveling through the gas volume of a MDT has a characteristic drift time spectrum. The drift time can be converted to a drift distance $r(t)$. The drift time measurement has an offset from the detector clock that is measured as $t_{0}$. The $r(t)$ relation is parametrised as a function of the maximum drift time $t_{\mathrm{max}}$. Both $t_{0}$ and $r(t)$ can be extracted from a parametric fit to the drift time spectrum. As fit parameters they carry uncertainties that to this day are not taken into account.

The impact of $t_{0}$ and $r(t)$ variations within their uncertainties is the main interest of this project. Simulated high pT muon samples are reconstructed using shifts of the $t_{0}$ and $r(t)$ values. The shifts are calculated for every tube, are normally distributed with central values of typical $t_{0}$ and $r(t)$ uncertainties, and are fixed values (i.e. they don't change from event to event, or run to run, or day to day, etc.).

$t_{0}$ transformation

Applying the $t_{0}$ uncertainty is straightforward and implemented as $t \to t + \delta t$. The $\delta t$ is a random number, drawn for every tube from a normal distribution with a central value of 0 and different $\sigma$ values. The values are summarised in Table 1 and shown on the right.

Central Value [ns] Sigma [ns] Comment
0.0 0.0 Used to perform null test
0.0 0.2 Bla 1
0.0 0.5 Bla 2
0.0 1.0 Bla 3

t0 shifts.png
t0 shift values.

Modifying $r(t)$

The $r(t)$ relation was modified in two ways. In a first study, the input value $t$ is shifted by a per-tube random but fixed integer which is drawn from a uniform distribution. In a second study the calculated $r$ value is shifted. Both approaches yield negligible specotrometer resolution deteriorations. Both approaches are described in more detail in the following paragraphs.

The linear $t$ shift is done in the same way as the $t_{0}$ shift. The only difference is that in this case the shift scales with $t_{\text{max}}$. Since for all MC samples $t_{\text{max}}$ is the same (618.1616 ns) this doesn't make a difference. But the feature is still implemented in the tool, in case this changes in the future. In the end, one gets $r(t) \to r(t + t_{\text{shift}}) \equiv r(t + \delta t_{\text{max}} / t_{\text{max}} \cdot t)$. The parameter $\delta t_{\text{max}}$ is the uncertainty on the $t_{\text{max}}$ measurement and reasonable values are in the order of a few nanoseconds. In this study, 0, 1, 2, and 3 ns were tested.

The $r(t)$ relation has a few solutions that are per definition correct. For example, the $t_{0}$ will always be mapped onto 0, $t_\mathrm{max}$ will always be mapped on the maximimal drift length of 14.6 mm. A track traversing the chambers with zero angle will also have zero error on the drifth length at $(t_{0} + t_\mathrm{max})/2$. This case is studied as a reference case to estimate the uncertainty introduced by modifying the $r(t)$ relation. [Oliver has to explain to me again why this is true and how the behaviour looks like for non-zero angles. An overlayed picture with "asyemmtric" sin functions with different 0 intercepts might be useful.]

In this simplest case, the uncertainties are point symmetric w.r.t. $(t_{0} + t_\mathrm{max})/2$ and modelled by a sinus with different amplitudes. The amplitudes are chosen such that the RMS values are 30, 50, and 80 $\mathrm{\mu m}$.

rt mod.png
Sketch of r(t) modifications.

Monte Carlo samples

The study was done on high pT muon samples. An overview can be found on MuonPerformanceSimulationSamples (as of writing this TWiki article, the most recent revision is r35). We start from ESD files. During the development of the tools the sample group.det-muon.mnagel.SingleMuon1000GeV_task9509539.pileup.HITStoRDO.20161015.v03_EXT0 was used, the final results use the samples user.zhidong.SingleMuon_{1,2,3}TeV_task*.nopileup.HITStoRDO.r9707.20170907.v01_EXT0.


The linear shifts were tested in parallel and hence the results are presented together in the plots. Changes in the $r(t)$ releation were investigated separately and are only presented in tables. The effect however is negligible compare to the $t_{0}$ shifts.

1 TeV sample

res 1TeV.png

2 TeV sample

res 2TeV.png

3 TeV sample

res 3TeV.png

sinus-like $r(t)$ shifts

To be added ...

$\sin^{2}$-like $r(t)$ shifts

To be added ...

Impact on reconstruction efficiency

To be added ...

Evaluation of Results

Shifts of $t_{0}$ generally have an effect of a couple of percent, while variations of $\delta t_{\text{max}}$ have an effect of less than 1 %. This means that the $t_{0}$ effect is dominant and it might be reasonable to neglect the $\delta t_{\text{max}}$ effect.

The sinus-like $r(t)$ shifts are completely negligible. Most likely, the effect cancels over the different tube layers.

A $\sin^{2}$-like $r(t)$ shift is a measurable but still quite small effect; again below 1 %.

Code summary

The MdtCalibShiftMapTools package is hosted on CERN's github. The following lines explain how to set up the package within a r21 athena release, e.g. on lxplus. (Once the package is part of athena this should no longer be necessary.)

1. Prepare working directory

# here we use athena 21.0.37
mkdir 21.0.37
cd 21.0.37
mkdir build source run
cd source
asetup 21.0.37,Athena,here

2. Add MdtCalibShiftMapTools in correct subfolder

# in source subdir
mkdir -p MuonSpectrometer/MuonCalib/MdtCalib/
cd MuonSpectrometer/MuonCalib/MdtCalib/
git clone https://:@gitlab.cern.ch:8443/ahoenle/MdtCalibShiftMapTools.git

3. Add modified MdtCalibSvc

I added a few changed to the MdtCalibSvc that are not yet part of the core athena release. The modified MdtCalibSvc is also on CERN's gitlab. There are currently two branches.

  • master: Has additional debug and testing statements that won't be part of the final version.
  • ShiftMapToolsChanges_from=21.0.37: Everything that is needed to run the shift maps. Use this branch if you "just want to run the thing"!

# in source subdir
cd MuonSpectrometer/MuonCalib/MdtCalib/
git clone https://:@gitlab.cern.ch:8443/ahoenle/MdtCalibSvc.git
cd MdtCalibSvc
git checkout ShiftMapToolsChanges_from=21.0.37

4. Build

# in build subdir
cmake ../source
source x86_64-slc6-gcc62-opt/setup.sh

5. Run a test job

I used Reco_tf.py to run my code. Local tests were done with a single file from some 1 TeV muon-pT sample. A list of samples can be found in MuonPerformanceSimulationSamples. The test_preInclude.py is attached to this TWiki article. It is used to set a few properties of the shift tools. Currently, I don't know how to look for files in paths relative to the package, that's why you'll find e.g. the line

ServiceMgr.MdtCalibrationT0ShiftSvc.MapFile = '/ptmp/mpp/hyperion/dev/quali/21.0.37/source/MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibShiftMapTools/share/shift_t0_0ns.dat'
After checking out the MdtCalibShiftMapTools you also have the .dat files in your share directory, but the absolute path is likely to be different. Until this is changed to a relative path, please update it accordingly.

Now you can start the job.

# in run subdir
mkdir test_local
cd test_local
# This FILEIN is just an example. You can use anything
PREINCLUDE=/path/to/test_preInclude.py  # ** don't forget to give the correct path here! **
Reco_tf.py \
 --steering doRAWtoALL --maxEvents 10 --skipEvents 0 \
 --autoConfiguration 'everything' \
 --preInclude 'all:$PREINCLUDE' \
 --postInclude 'default:RecJobTransforms/UseFrontier.py' \
 --inputRDOFile $FILEIN \
 --outputESDFile $FILEOUT.ESD.root --outputAODFile $FILEOUT.AOD.pool.root

Major updates:
-- AndreasHoenle1 - 2018-01-04

%RESPONSIBLE% AndreasHoenle1
%REVIEW% Never reviewed

Latex rendering error!! dvi file was not created.
Topic attachments
I Attachment History Action Size Date Who Comment
Texttxt test_preInclude.py.txt r1 manage 1.7 K 2018-01-03 - 10:29 AndreasHoenle1 Job Option File for running a local Reco_tf test job.
Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r6 - 2018-01-05 - AndreasHoenle1
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback