Skip to content

Commit 050de1a

Browse files
authored
Add documentation for the TrackTuner class
1 parent 8548f3f commit 050de1a

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

docs/basics-usage/HelperTasks.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Table of contents:
1313
* [Particle identification (PID)](#particle-identification-pid)
1414
* [Track Selection](#track-selection)
1515
* [Track Propagation](#track-propagation)
16+
* [TrackTuner](#track-tuner)
1617

1718
## Timestamp
1819

@@ -752,3 +753,49 @@ The overall table flow is illustrated here:
752753
<div align="center">
753754
<img src="prop.png" width="60%">
754755
</div>
756+
757+
758+
### TrackTuner
759+
The `TrackTuner` class ([Common/Tools/TrackTuner.h](https://github.com/AliceO2Group/O2Physics/blob/master/Common/Tools/TrackTuner.h)) allows to smear the reconstructed track parameters.
760+
Such tool is primarely conceived to smear the parameters of tracks reconstructed in MC simulations according to the discrepancy between data and MC of the dcaXY and dcaZ.
761+
```note
762+
This task was called `improver-task` in the Run 2 jargon
763+
```
764+
The smearing is done on the `y`, `z` parameters of each reconstructed track in MC evaluated at the associated particle production point. The smearing is based on the discrepancy between resolution, mean and pull ratio of dcaXY, dcaZ w.r.t. primary vertex measured in data and MC.
765+
The performance of such parameters is evaluated vs. global-track pt and stored into `.root` files, which can be read from CCDB at runtime.
766+
767+
An instance of the `TrackTuner` class is present as data-member in the `trackPropagation` workflow, and it can be enabled via
768+
```
769+
Configurable<bool> useTrackTuner{"useTrackTuner", false, "Apply Improver/DCA corrections to MC"};
770+
```
771+
```note
772+
The `TrackTuner` can be enabled only if the `processCovarianceMc` process function in the `trackPropagation` workflow is used
773+
```
774+
This object can be configured through the `Configurable<std::string> trackTunerParams` in the `trackPropagation` workflow. This configuration `std::string` must define the following parameters:
775+
* `bool debugInfo`: flag to switch on/off some debug outputs
776+
* `bool updateTrackCovMat`: flag to enable the update of the track covariance matrix, propagating the scaling on the dca resolution
777+
* `bool updatePulls`: flag to enable the update of the track covariance matrix updating also the pulls (if `updateTrackCovMat == true`)
778+
* `std::string pathInputFile`: path to browse to find the correction file
779+
* `std::string nameInputFile`: name of the correction file
780+
* `bool isInputFileFromCCDB`: the `pathInputFile/nameInputFile` is searched in CCDB if this flag is `true`, otherwise in the local file system (debug purposes)
781+
* `bool usePvRefitCorrections`: if this flag is `true`, the track smearing is performed using mean, resolution and pulls parametrizations vs. pt of dcaXY, dcaZ calculated w.r.t. primary collision vertex refitted w/o the current track, if this was originally a PV contributor
782+
```note
783+
In pp collisions, one should use `usePvRefitCorrections == true`
784+
This is not relevant in Pb-Pb collisions.
785+
```
786+
* `bool updateCurvature`: flag to enable the update of the track curvature, i.e. `q/pt` (see note below)
787+
* `float oneOverPtCurrent` (MC) and `float oneOverPtUpgr` (data): the ratio `oneOverPtUpgr/oneOverPtCurrent` defines the scaling factor to the `q/pt` residual to smear the track pt
788+
789+
```note
790+
The `TrackTuner` allows also to smear the `q/pt` if `updateCurvature == true`. At the moment, this is possible only via a constant factor. More realistic strategies can be implemented.
791+
```
792+
The string `trackTunerParams` must follow the format: <variable_name>=<value>|<variable_name>=<value>)" (see the default configuration [here](https://github.com/AliceO2Group/O2Physics/blob/master/Common/TableProducer/trackPropagation.cxx#L62) as reference).
793+
794+
795+
The dcaXY, dcaZ parametrization currently available are the following:
796+
* proxy for pp @ 13.6 TeV: [trackTuner_DataLHC23fPass1_McLHC23k4b_run535085.root](http://alice-ccdb.cern.ch/browse/Users/m/mfaggin/test/inputsTrackTuner/pp2023)
797+
Data: LHC23f apass1, run 535085.
798+
MC: LHC23k4b, run 535085.
799+
* proxy for Pb-Pb @ 5.36 TeV: [trackTuner_DataLHC22sPass5_McLHC22l1b2_run529397.root](http://alice-ccdb.cern.ch/browse/Users/m/mfaggin/test/inputsTrackTuner/PbPb2022)
800+
Data: LHC22s apass5, run 529397.
801+
MC: LHC22l1b2, run 529397.

0 commit comments

Comments
 (0)