Skip to content

Commit d27643f

Browse files
committed
workflow to study ITS residuals
1 parent 5313031 commit d27643f

File tree

8 files changed

+770
-0
lines changed

8 files changed

+770
-0
lines changed

Detectors/GlobalTrackingWorkflow/study/CMakeLists.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ o2_add_library(GlobalTrackingStudy
2525
src/TrackMCStudyConfig.cxx
2626
src/TrackMCStudyTypes.cxx
2727
src/TPCClusSelector.cxx
28+
src/CheckResid.cxx
29+
src/CheckResidConfig.cxx
2830
PUBLIC_LINK_LIBRARIES O2::GlobalTracking
2931
O2::GlobalTrackingWorkflowReaders
3032
O2::GlobalTrackingWorkflowHelpers
@@ -38,6 +40,8 @@ o2_target_root_dictionary(GlobalTrackingStudy
3840
include/GlobalTrackingStudy/TrackInfoExt.h
3941
include/GlobalTrackingStudy/TrackMCStudyConfig.h
4042
include/GlobalTrackingStudy/TrackMCStudyTypes.h
43+
include/GlobalTrackingStudy/CheckResidTypes.h
44+
include/GlobalTrackingStudy/CheckResidConfig.h
4145
LINKDEF src/GlobalTrackingStudyLinkDef.h
4246
)
4347

@@ -76,6 +80,11 @@ o2_add_executable(dump-workfow
7680
SOURCES src/track-dump-workflow.cxx
7781
PUBLIC_LINK_LIBRARIES O2::GlobalTrackingStudy)
7882

83+
o2_add_executable(resid-workfow
84+
COMPONENT_NAME check
85+
SOURCES src/check-resid-workflow.cxx
86+
PUBLIC_LINK_LIBRARIES O2::GlobalTrackingStudy)
87+
7988
if (OpenMP_CXX_FOUND)
8089
target_compile_definitions(${targetName} PRIVATE WITH_OPENMP)
8190
target_link_libraries(${targetName} PRIVATE OpenMP::OpenMP_CXX)
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
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+
12+
#ifndef O2_CHECK_RESID_H
13+
#define O2_CHECK_RESID_H
14+
15+
#include "ReconstructionDataFormats/GlobalTrackID.h"
16+
#include "Framework/Task.h"
17+
#include "Framework/DataProcessorSpec.h"
18+
// #include "TPCCalibration/CorrectionMapsLoader.h"
19+
20+
namespace o2::checkresid
21+
{
22+
/// create a processor spec
23+
o2::framework::DataProcessorSpec getCheckResidSpec(o2::dataformats::GlobalTrackID::mask_t srcTracks, o2::dataformats::GlobalTrackID::mask_t srcClus, bool useMC /*, const o2::tpc::CorrectionMapsLoaderGloOpts& sclOpts*/);
24+
25+
} // namespace o2::checkresid
26+
27+
#endif // O2_CHECK_RESID_H
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
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+
12+
#ifndef O2_CHECK_RESID_CONFIG_H
13+
#define O2_CHECK_RESID_CONFIG_H
14+
#include "CommonUtils/ConfigurableParam.h"
15+
#include "CommonUtils/ConfigurableParamHelper.h"
16+
17+
namespace o2::checkresid
18+
{
19+
struct CheckResidConfig : o2::conf::ConfigurableParamHelper<CheckResidConfig> {
20+
int minPVContributors = 10;
21+
int minTPCCl = 60;
22+
int minITSCl = 7;
23+
float minPt = 0.4f;
24+
float maxPt = 100.f;
25+
float rCompIBOB = 12.f;
26+
27+
bool pvcontribOnly = true;
28+
bool addPVAsCluster = true;
29+
bool refitPV = true;
30+
bool useStableRef = true;
31+
bool doIBOB = true;
32+
bool doResid = true;
33+
34+
O2ParamDef(CheckResidConfig, "checkresid");
35+
};
36+
} // namespace o2::checkresid
37+
38+
#endif
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
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+
12+
#ifndef O2_CHECK_RESID_TYPES_H
13+
#define O2_CHECK_RESID_TYPES_H
14+
15+
#include "ReconstructionDataFormats/Track.h"
16+
17+
namespace o2::checkresid
18+
{
19+
struct Point {
20+
float dy = 0.f;
21+
float dz = 0.f;
22+
float sig2y = 0.f;
23+
float sig2z = 0.f;
24+
float phi = 0.f;
25+
float z = 0.f;
26+
int16_t sens = -1;
27+
int8_t lr = -1; // -1 = vtx
28+
ClassDefNV(Point, 1)
29+
};
30+
31+
struct Track {
32+
o2::dataformats::GlobalTrackID gid{};
33+
o2::track::TrackPar track;
34+
o2::track::TrackParCov trIBOut;
35+
o2::track::TrackParCov trOBInw;
36+
std::vector<Point> points;
37+
ClassDefNV(Track, 1)
38+
};
39+
40+
} // namespace o2::checkresid
41+
42+
#endif

0 commit comments

Comments
 (0)