forked from AliceO2Group/AliceO2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathConfiguration.cxx
More file actions
71 lines (63 loc) · 2.25 KB
/
Configuration.cxx
File metadata and controls
71 lines (63 loc) · 2.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
// This software is distributed under the terms of the GNU General Public
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
//
// In applying this license CERN does not waive the privileges and immunities
// granted to it by virtue of its status as an Intergovernmental Organization
// or submit itself to any jurisdiction.
#include <format>
#include "ITStracking/Constants.h"
#include "ITStracking/Configuration.h"
namespace o2::its
{
std::string asString(TrackingMode mode)
{
switch (mode) {
case TrackingMode::Sync:
return "sync";
case TrackingMode::Async:
return "async";
case TrackingMode::Cosmics:
return "cosmics";
case TrackingMode::Unset:
return "unset";
}
return "unknown";
}
std::ostream& operator<<(std::ostream& os, TrackingMode v)
{
os << asString(v);
return os;
}
std::string TrackingParameters::asString() const
{
std::string str = std::format("NZb:{} NPhB:{} NROFIt:{} PerVtx:{} DropFail:{} ClSh:{} TtklMinPt:{:.2f} MinCl:{}",
ZBins, PhiBins, nROFsPerIterations, PerPrimaryVertexProcessing, DropTFUponFailure, ClusterSharing, TrackletMinPt, MinTrackLength);
bool first = true;
for (int il = NLayers; il >= MinTrackLength; il--) {
int slot = NLayers - il;
if (slot < (int)MinPt.size() && MinPt[slot] > 0) {
if (first) {
first = false;
str += " MinPt: ";
}
str += std::format("L{}:{:.2f} ", il, MinPt[slot]);
}
}
str += " SystErrY/Z:";
for (size_t i = 0; i < SystErrorY2.size(); i++) {
str += std::format("{:.2e}/{:.2e} ", SystErrorY2[i], SystErrorZ2[i]);
}
str += std::format(" MemLimit {:.2f} GB", double(MaxMemory) / constants::GB);
return str;
}
std::string VertexingParameters::asString() const
{
std::string str = std::format("NZb:{} NPhB:{} DRof:{} ClsCont:{} MaxTrkltCls:{} ZCut:{} PhCut:{}", ZBins, PhiBins, deltaRof, clusterContributorsCut, maxTrackletsPerCluster, zCut, phiCut);
str += std::format(" MemLimit {:.2f} GB", double(MaxMemory) / constants::GB);
return str;
}
} // namespace o2::its