Skip to content

Commit 38135fd

Browse files
authored
Merge pull request #250 from mfaggin/master
Add documentation for TrackTuner class
2 parents 84cc0b3 + 3488081 commit 38135fd

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

docs/basics-usage/HelperTasks.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -752,3 +752,51 @@ The overall table flow is illustrated here:
752752
<div align="center">
753753
<img src="prop.png" width="60%">
754754
</div>
755+
756+
757+
### TrackTuner
758+
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.
759+
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.
760+
```note
761+
This task was called `improver-task` in the Run 2 jargon
762+
```
763+
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.
764+
The performance of such parameters is evaluated vs. global-track pt and stored into `.root` files, which can be read from CCDB at runtime.
765+
766+
An instance of the `TrackTuner` class is present as data-member in the `trackPropagation` workflow, and it can be enabled via
767+
```c++
768+
Configurable<bool> useTrackTuner{"useTrackTuner", false, "Apply Improver/DCA corrections to MC"};
769+
```
770+
```note
771+
The `TrackTuner` can be enabled only if the `processCovarianceMc` process function in the `trackPropagation` workflow is used
772+
```
773+
This object can be configured through the `Configurable<std::string> trackTunerParams` in the `trackPropagation` workflow. This configuration `std::string` must define the following parameters:
774+
* `bool debugInfo`: flag to switch on/off some debug outputs
775+
* `bool updateTrackCovMat`: flag to enable the update of the track covariance matrix, propagating the scaling on the dca resolution
776+
* `bool updatePulls`: flag to enable the update of the track covariance matrix updating also the pulls (if `updateTrackCovMat == true`)
777+
* `std::string pathInputFile`: path to browse to find the correction file
778+
* `std::string nameInputFile`: name of the correction file
779+
* `bool isInputFileFromCCDB`: the `pathInputFile/nameInputFile` is searched in CCDB if this flag is `true`, otherwise in the local file system (debug purposes)
780+
* `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
781+
```note
782+
In pp collisions, one should use `usePvRefitCorrections == true`
783+
This is not relevant in Pb-Pb collisions.
784+
```
785+
* `bool updateCurvature`: flag to enable the update of the track curvature, i.e. `q/pt` (see note below)
786+
* `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
787+
788+
```note
789+
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.
790+
```
791+
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).
792+
793+
794+
The dcaXY, dcaZ parametrization currently available are the following:
795+
* proxy for pp @ 13.6 TeV: [trackTuner_DataLHC23fPass1_McLHC23k4b_run535085.root](http://alice-ccdb.cern.ch/browse/Users/m/mfaggin/test/inputsTrackTuner/pp2023)
796+
Data: LHC23f apass1, run 535085.
797+
MC: LHC23k4b, run 535085.
798+
Slides [here](https://docs.google.com/presentation/d/1_bsxzgB1DdVu-mxRwhpZ-U65c4J9iL2IH8xUEP3tv4Q/edit?usp=sharing).
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.
802+
Slides [here](https://docs.google.com/presentation/d/1sIXWMckaPZJir3gNLeDnB2TorNJrjXKcGJvyTvz5V8s/edit?usp=sharing).

0 commit comments

Comments
 (0)