Skip to content

Commit 8b548e6

Browse files
committed
Fix
1 parent 109c012 commit 8b548e6

10 files changed

Lines changed: 107 additions & 86 deletions

Tools/PIDML/pidMl.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@
1717
#ifndef TOOLS_PIDML_PIDML_H_
1818
#define TOOLS_PIDML_PIDML_H_
1919

20-
#include "Framework/AnalysisDataModel.h"
21-
#include "Common/DataModel/PIDResponse.h"
2220
#include "Common/DataModel/Centrality.h"
2321
#include "Common/DataModel/Multiplicity.h"
22+
#include "Common/DataModel/PIDResponse.h"
23+
#include "Common/DataModel/TrackSelectionTables.h"
24+
25+
#include <Framework/AnalysisDataModel.h>
2426

2527
namespace o2::aod
2628
{

Tools/PIDML/pidMlBatchEffAndPurProducer.cxx

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,24 @@
1616
/// \author Michał Olędzki <m.oledzki@cern.ch>
1717
/// \author Marek Mytkowski <marek.mytkowski@cern.ch>
1818

19-
#include <cstddef>
20-
#include <string_view>
19+
#include "Tools/PIDML/pidOnnxModel.h"
20+
#include "Tools/PIDML/pidUtils.h"
21+
//
22+
#include "Common/DataModel/PIDResponse.h"
23+
#include "Common/DataModel/TrackSelectionTables.h"
24+
25+
#include <CCDB/CcdbApi.h>
26+
#include <Framework/AnalysisDataModel.h>
27+
#include <Framework/AnalysisTask.h>
28+
#include <Framework/StaticFor.h>
29+
#include <Framework/runDataProcessing.h>
30+
2131
#include <algorithm>
32+
#include <cstddef>
33+
#include <limits>
2234
#include <string>
35+
#include <string_view>
2336
#include <vector>
24-
#include <limits>
25-
26-
#include "Framework/AnalysisDataModel.h"
27-
#include "Framework/runDataProcessing.h"
28-
#include "Framework/AnalysisTask.h"
29-
#include "Framework/StaticFor.h"
30-
#include "CCDB/CcdbApi.h"
31-
#include "Common/DataModel/TrackSelectionTables.h"
32-
#include "Common/DataModel/PIDResponse.h"
33-
#include "Tools/PIDML/pidOnnxModel.h"
34-
#include "Tools/PIDML/pidUtils.h"
3537

3638
using namespace o2;
3739
using namespace o2::framework;

Tools/PIDML/pidMlEffAndPurProducer.cxx

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,18 @@
1515
/// \author Michał Olędzki <m.oledzki@cern.ch>
1616
/// \author Marek Mytkowski <marek.mytkowski@cern.ch>
1717

18-
#include <string>
19-
20-
#include "Framework/AnalysisDataModel.h"
21-
#include "Framework/runDataProcessing.h"
22-
#include "Framework/AnalysisTask.h"
23-
#include "CCDB/CcdbApi.h"
24-
#include "Common/DataModel/TrackSelectionTables.h"
25-
#include "Common/DataModel/PIDResponse.h"
2618
#include "Tools/PIDML/pidOnnxModel.h"
2719
#include "Tools/PIDML/pidUtils.h"
20+
//
21+
#include "Common/DataModel/PIDResponse.h"
22+
#include "Common/DataModel/TrackSelectionTables.h"
23+
24+
#include <CCDB/CcdbApi.h>
25+
#include <Framework/AnalysisDataModel.h>
26+
#include <Framework/AnalysisTask.h>
27+
#include <Framework/runDataProcessing.h>
28+
29+
#include <string>
2830

2931
using namespace o2;
3032
using namespace o2::framework;
@@ -91,7 +93,7 @@ struct PidMlEffAndPurProducer {
9193
return nSigma;
9294
}
9395

94-
bool isNSigmaAccept(const BigTracks::iterator& track, nSigma_t& nSigma)
96+
bool isNSigmaAccept(const BigTracks::iterator& track, const nSigma_t& nSigma)
9597
{
9698
// FIXME: for current particles it works, but there are some particles,
9799
// which can have different sign and pdgSign

Tools/PIDML/pidMlProducer.cxx

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,21 @@
1515
/// \author Maja Kabus <mkabus@cern.ch>
1616
/// \author Marek Mytkowski <marek.mytkowski@cern.ch>
1717

18-
#include <string_view>
19-
#include <limits>
20-
#include "Framework/AnalysisTask.h"
21-
#include "Framework/StaticFor.h"
22-
#include "Framework/AnalysisDataModel.h"
23-
#include "Framework/HistogramRegistry.h"
24-
#include "Framework/runDataProcessing.h"
18+
#include "Tools/PIDML/pidMl.h"
19+
#include "Tools/PIDML/pidUtils.h"
20+
//
2521
#include "Common/DataModel/Centrality.h"
2622
#include "Common/DataModel/Multiplicity.h"
2723
#include "Common/DataModel/TrackSelectionTables.h"
28-
#include "Tools/PIDML/pidMl.h"
29-
#include "Tools/PIDML/pidUtils.h"
24+
25+
#include <Framework/AnalysisDataModel.h>
26+
#include <Framework/AnalysisTask.h>
27+
#include <Framework/HistogramRegistry.h>
28+
#include <Framework/StaticFor.h>
29+
#include <Framework/runDataProcessing.h>
30+
31+
#include <limits>
32+
#include <string_view>
3033

3134
using namespace o2;
3235
using namespace o2::framework;

Tools/PIDML/pidOnnxInterface.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,15 @@
1717
#ifndef TOOLS_PIDML_PIDONNXINTERFACE_H_
1818
#define TOOLS_PIDML_PIDONNXINTERFACE_H_
1919

20-
#include <string>
20+
#include "Tools/PIDML/pidOnnxModel.h"
21+
22+
#include <Framework/Array2D.h>
23+
2124
#include <array>
2225
#include <set>
26+
#include <string>
2327
#include <vector>
2428

25-
#include "Framework/Array2D.h"
26-
#include "Tools/PIDML/pidOnnxModel.h"
27-
2829
namespace pidml_pt_cuts
2930
{
3031
static constexpr int NPids = 6;
@@ -110,7 +111,7 @@ struct PidONNXInterface {
110111
}
111112

112113
std::vector<PidONNXModel<T>> mModels;
113-
std::size_t mNPids;
114+
std::size_t mNPids{0};
114115
o2::framework::LabeledArray<double> mPLimits;
115116
};
116117
#endif // TOOLS_PIDML_PIDONNXINTERFACE_H_

Tools/PIDML/pidOnnxModel.h

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,28 @@
1717
#ifndef TOOLS_PIDML_PIDONNXMODEL_H_
1818
#define TOOLS_PIDML_PIDONNXMODEL_H_
1919

20+
#include "Tools/PIDML/pidUtils.h"
21+
22+
#include <CCDB/CcdbApi.h>
2023
#include <Framework/ASoA.h>
21-
#include <array>
24+
25+
#include <onnxruntime_cxx_api.h>
26+
#include <rapidjson/document.h>
27+
#include <rapidjson/filereadstream.h>
28+
2229
#include <algorithm>
30+
#include <array>
2331
#include <cstdint>
24-
#include <cstring>
2532
#include <cstdio>
33+
#include <cstring>
2634
#include <limits>
35+
#include <map>
36+
#include <memory>
2737
#include <optional>
2838
#include <string>
29-
#include <map>
3039
#include <type_traits>
3140
#include <utility>
32-
#include <memory>
3341
#include <vector>
34-
#include <onnxruntime_cxx_api.h>
35-
36-
#include "rapidjson/document.h"
37-
#include "rapidjson/filereadstream.h"
38-
#include "CCDB/CcdbApi.h"
39-
#include "Tools/PIDML/pidUtils.h"
4042

4143
enum PidMLDetector {
4244
kTPCOnly = 0,
@@ -57,7 +59,7 @@ constexpr MomentumLimitsMatrix defaultModelPLimits({0.0, 0.5, 0.8});
5759
// TODO: Copied from cefpTask, shall we put it in some common utils code?
5860
namespace
5961
{
60-
bool readJsonFile(const std::string& config, rapidjson::Document& d)
62+
bool readJsonFile(std::string const& config, rapidjson::Document& d)
6163
{
6264
FILE* fp = fopen(config.data(), "rb");
6365
if (!fp) {
@@ -77,7 +79,7 @@ bool readJsonFile(const std::string& config, rapidjson::Document& d)
7779
template <typename T>
7880
struct PidONNXModel {
7981
public:
80-
PidONNXModel(std::string& localPath, std::string& ccdbPath, bool useCCDB, o2::ccdb::CcdbApi& ccdbApi, uint64_t timestamp,
82+
PidONNXModel(std::string const& localPath, std::string const& ccdbPath, bool useCCDB, o2::ccdb::CcdbApi const& ccdbApi, uint64_t timestamp,
8183
int pid, double minCertainty, const double* pLimits = &pidml_pt_cuts::defaultModelPLimits[0])
8284
: mPid(pid), mMinCertainty(minCertainty), mPLimits(pLimits, pLimits + kNDetectors)
8385
{
@@ -136,8 +138,8 @@ struct PidONNXModel {
136138
return getModelOutput(track) >= mMinCertainty;
137139
}
138140

139-
int mPid;
140-
double mMinCertainty;
141+
int mPid{0};
142+
double mMinCertainty{0};
141143

142144
private:
143145
void getModelPaths(std::string const& path, std::string& modelDir, std::string& modelFile, std::string& modelPath, int pid, std::string const& ext)
@@ -155,7 +157,7 @@ struct PidONNXModel {
155157
modelPath = modelDir + "/" + modelFile;
156158
}
157159

158-
void downloadFromCCDB(o2::ccdb::CcdbApi& ccdbApi, std::string const& ccdbFile, uint64_t timestamp, std::string const& localDir, std::string const& localFile)
160+
void downloadFromCCDB(o2::ccdb::CcdbApi const& ccdbApi, std::string const& ccdbFile, uint64_t timestamp, std::string const& localDir, std::string const& localFile)
159161
{
160162
std::map<std::string, std::string> metadata;
161163
bool retrieveSuccess = ccdbApi.retrieveBlob(ccdbFile, localDir, metadata, timestamp, false, localFile);
@@ -167,7 +169,7 @@ struct PidONNXModel {
167169
}
168170
}
169171

170-
void loadInputFiles(std::string const& localPath, std::string const& ccdbPath, bool useCCDB, o2::ccdb::CcdbApi& ccdbApi, uint64_t timestamp, int pid, std::string& modelPath)
172+
void loadInputFiles(std::string const& localPath, std::string const& ccdbPath, bool useCCDB, o2::ccdb::CcdbApi const& ccdbApi, uint64_t timestamp, int pid, std::string& modelPath)
171173
{
172174
rapidjson::Document trainColumnsDoc;
173175
rapidjson::Document scalingParamsDoc;

Tools/PIDML/qaPid.cxx

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,16 @@
1414
/// \author Łukasz Sawicki
1515
/// \since
1616

17-
#include "Framework/runDataProcessing.h"
18-
#include "Framework/AnalysisTask.h"
19-
#include "Framework/HistogramRegistry.h"
20-
#include "Framework/StaticFor.h"
21-
#include "Common/DataModel/TrackSelectionTables.h"
2217
#include "Common/DataModel/PIDResponse.h"
23-
#include <TParameter.h>
18+
#include "Common/DataModel/TrackSelectionTables.h"
19+
20+
#include <Framework/AnalysisTask.h>
21+
#include <Framework/HistogramRegistry.h>
22+
#include <Framework/StaticFor.h>
23+
#include <Framework/runDataProcessing.h>
24+
2425
#include <TPDGCode.h>
26+
#include <TParameter.h>
2527

2628
using namespace o2;
2729
using namespace o2::framework;
@@ -371,7 +373,7 @@ struct QaPid {
371373
for (int j = 0; j < kArrLen; ++j) {
372374
if (p < PSwitch[j]) {
373375
particleNSigma[j] = std::abs(tpcNSigmas[j]);
374-
} else if (p >= PSwitch[j]) {
376+
} else {
375377
particleNSigma[j] = combinedSignal(tpcNSigmas[j], tofNSigmas[j]);
376378
}
377379
}
@@ -409,7 +411,7 @@ struct QaPid {
409411
for (int j = 0; j < kArrLen; ++j) {
410412
if (p < PSwitch[j]) {
411413
particleNSigma[j] = std::abs(tpcNSigmas[j]);
412-
} else if (p >= PSwitch[j]) {
414+
} else {
413415
particleNSigma[j] = combinedSignal(tpcNSigmas[j], tofNSigmas[j]);
414416
}
415417
}

Tools/PIDML/qaPidMl.cxx

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,20 @@
1414
/// \author Łukasz Sawicki
1515
/// \since
1616

17-
#include <string>
18-
19-
#include "Framework/runDataProcessing.h"
20-
#include "Framework/AnalysisTask.h"
21-
#include "Framework/HistogramRegistry.h"
22-
#include "Framework/StaticFor.h"
23-
#include "Common/DataModel/TrackSelectionTables.h"
17+
#include "Tools/PIDML/pidOnnxModel.h"
18+
//
2419
#include "Common/DataModel/PIDResponse.h"
25-
#include <TParameter.h>
20+
#include "Common/DataModel/TrackSelectionTables.h"
21+
22+
#include <Framework/AnalysisTask.h>
23+
#include <Framework/HistogramRegistry.h>
24+
#include <Framework/StaticFor.h>
25+
#include <Framework/runDataProcessing.h>
26+
2627
#include <TPDGCode.h>
27-
#include "Tools/PIDML/pidOnnxModel.h"
28+
#include <TParameter.h>
29+
30+
#include <string>
2831

2932
using namespace o2;
3033
using namespace o2::framework;
@@ -311,7 +314,7 @@ struct QaPidMl {
311314

312315
static constexpr float kCertaintyThreshold = 0.5f;
313316

314-
int getParticlePdg(float pidCertainties[])
317+
int getParticlePdg(const float pidCertainties[])
315318
{
316319
// index of the biggest value in an array
317320
int index = 0;

Tools/PIDML/simpleApplyPidOnnxInterface.cxx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,18 @@
1414
///
1515
/// \author Maja Kabus <mkabus@cern.ch>
1616

17+
#include "Tools/PIDML/pidOnnxInterface.h"
18+
//
19+
#include "Common/DataModel/PIDResponse.h"
20+
#include "Common/DataModel/TrackSelectionTables.h"
21+
22+
#include <CCDB/CcdbApi.h>
23+
#include <Framework/AnalysisTask.h>
24+
#include <Framework/runDataProcessing.h>
25+
1726
#include <string>
1827
#include <vector>
1928

20-
#include "Framework/runDataProcessing.h"
21-
#include "Framework/AnalysisTask.h"
22-
#include "CCDB/CcdbApi.h"
23-
#include "Common/DataModel/TrackSelectionTables.h"
24-
#include "Common/DataModel/PIDResponse.h"
25-
#include "Tools/PIDML/pidOnnxInterface.h"
26-
2729
using namespace o2;
2830
using namespace o2::framework;
2931
using namespace o2::framework::expressions;

Tools/PIDML/simpleApplyPidOnnxModel.cxx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,16 @@
1414
///
1515
/// \author Maja Kabus <mkabus@cern.ch>
1616

17-
#include <string>
18-
19-
#include "Framework/runDataProcessing.h"
20-
#include "Framework/AnalysisTask.h"
21-
#include "CCDB/CcdbApi.h"
22-
#include "Common/DataModel/TrackSelectionTables.h"
23-
#include "Common/DataModel/PIDResponse.h"
2417
#include "Tools/PIDML/pidOnnxModel.h"
18+
//
19+
#include "Common/DataModel/PIDResponse.h"
20+
#include "Common/DataModel/TrackSelectionTables.h"
21+
22+
#include <CCDB/CcdbApi.h>
23+
#include <Framework/AnalysisTask.h>
24+
#include <Framework/runDataProcessing.h>
25+
26+
#include <string>
2527

2628
using namespace o2;
2729
using namespace o2::framework;

0 commit comments

Comments
 (0)