You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: PWGCF/Tasks/correlations.cxx
+73-9Lines changed: 73 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -36,6 +36,7 @@
36
36
37
37
#include<TDirectory.h>
38
38
#include<TFile.h>
39
+
#include<TFormula.h>
39
40
#include<TH1F.h>
40
41
#include<THn.h>
41
42
#include<TVector2.h>
@@ -87,6 +88,8 @@ struct CorrelationTask {
87
88
O2_DEFINE_CONFIGURABLE(cfgCentBinsForMC, int, 0, "0 = OFF and 1 = ON for data like multiplicity/centrality bins for MC steps");
88
89
O2_DEFINE_CONFIGURABLE(cfgTrackBitMask, uint16_t, 0, "BitMask for track selection systematics; refer to the enum TrackSelectionCuts in filtering task");
89
90
O2_DEFINE_CONFIGURABLE(cfgMultCorrelationsMask, uint16_t, 0, "Selection bitmask for the multiplicity correlations. This should match the filter selection cfgEstimatorBitMask.")
91
+
O2_DEFINE_CONFIGURABLE(cfgMultCutFormula, std::string, "", "Multiplicity correlations cut formula. A result greater than zero results in accepted event. Parameters: [cFT0C] FT0C centrality, [mFV0A] V0A multiplicity, [mGlob] global track multiplicity, [mPV] PV track multiplicity")
92
+
90
93
// Suggested values: Photon: 0.004; K0 and Lambda: 0.005
91
94
Configurable<LabeledArray<float>> cfgPairCut{"cfgPairCut", {kCfgPairCutDefaults[0], 5, {"Photon", "K0", "Lambda", "Phi", "Rho"}}, "Pair cuts on various particles"};
if (cfgMultCorrelationsMask.value & (1u << i) == 0)
239
+
LOGF(warning, "The centrality/multiplicity estimator %s is not available to be used in cfgMultCutFormula. Ensure cfgMultCorrelationsMask is correct and matches the CFMultSets in derived data.");
BinningTypeDerived configurableBinningDerived{{axisVertex, axisMultiplicity}, true}; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
887
-
// Strictly upper categorised collisions, for cfgNoMixedEvents combinations per bin, skipping those in entry -1
// BinningTypeDerived configurableBinningDerived{{axisVertex, axisMultiplicity}, true}; // true is for 'ignore overflows' (true by default). Underflows and overflows will have bin -1.
942
+
// Strictly upper categorised collisions, for cfgNoMixedEvents combinations per bin, skipping those in entry -1
888
943
auto tracksTuple = std::make_tuple(std::forward<TrackTypes>(tracks)...);
889
944
using TA = std::tuple_element<0, decltype(tracksTuple)>::type;
890
945
using TB = std::tuple_element<std::tuple_size_v<decltype(tracksTuple)> - 1, decltype(tracksTuple)>::type;
891
-
Pair<DerivedCollisions, TA, TB, BinningTypeDerived> pairs{configurableBinningDerived, cfgNoMixedEvents, -1, collisions, tracksTuple, &cache}; // -1 is the number of the bin to skip
946
+
Pair<CollType, TA, TB, BinningTypeDerived> pairs{configurableBinningDerived, cfgNoMixedEvents, -1, collisions, tracksTuple, &cache}; // -1 is the number of the bin to skip
892
947
893
948
for (auto it = pairs.begin(); it != pairs.end(); it++) {
0 commit comments