Project
Loading...
Searching...
No Matches
TrackTuneParams.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
13
14#ifndef ALICEO2_TRACK_TUNE_PARAMS_H
15#define ALICEO2_TRACK_TUNE_PARAMS_H
16
19#include <array>
20
21namespace o2
22{
23namespace globaltracking
24{
25
26// There are configurable params for tracks ad hoc tuning
27
28struct TrackTuneParams : public o2::conf::ConfigurableParamHelper<TrackTuneParams> {
29 enum AddCovType { // how to add covariances to tracks
30 Disable, // do not add
31 NoCorrelations, // add ignoring correlations (i.e. to diagonal elements only)
32 WithCorrelations // add adjusting non-diagonal elements to preserve correlation coefficients
33 };
36 bool sourceLevelTPC = true; // if TPC corrections are allowed, apply them TPC source output level (tracking), otherwise in the global tracking consumers BEFORE update by external detector
37 bool applyWhenReading = false; // if true, then apply at reading tracks from the file. This better NOT used as there is no way to apply lumi-dependent scaling in the reader
38 bool useTPCInnerCorr = false; // request to correct TPC inner param
39 bool useTPCOuterCorr = false; // request to correct TPC outer param
40 float tpcParInner[5] = {}; // ad hoc correction to be added to TPC param at the inner XRef
41 float tpcParOuter[5] = {}; // ad hoc correction to be added to TPC param at the outer XRef
42 float tpcCovInner[5] = {}; // ad hoc errors to be added to TPC cov.matrix at the inner XRef (not squared!)
43 float tpcCovOuter[5] = {}; // ad hoc errors to be added to TPC outer param cov.matrix at the outer XRef (not squared!)
44 float tpcCovInnerSlope[5] = {}; // slope of the error with respect to lumi, total correction = [tpcCovInner + lumi*tpcCovInnerSlope]^2
45 float tpcCovOuterSlope[5] = {}; // slope of the error with respect to lumi, total correction = [tpcCovOuter + lumi*tpcCovOuterSlope]^2
46
47 std::array<float, 5> getCovInnerTotal(float scale) const;
48 std::array<float, 5> getCovOuterTotal(float scale) const;
49
50 O2ParamDef(TrackTuneParams, "trackTuneParams");
51};
52
53} // namespace globaltracking
54} // end namespace o2
55
56#endif
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
std::array< float, 5 > getCovOuterTotal(float scale) const
std::array< float, 5 > getCovInnerTotal(float scale) const
O2ParamDef(TrackTuneParams, "trackTuneParams")