Skip to content

Commit f021050

Browse files
authored
[PWGCF] FemtoUniverse: Add function to fill only MCTruthTracks
1 parent 1023ee8 commit f021050

File tree

1 file changed

+11
-31
lines changed

1 file changed

+11
-31
lines changed

PWGCF/FemtoUniverse/TableProducer/femtoUniverseProducerTask.cxx

Lines changed: 11 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -323,12 +323,9 @@ struct FemtoUniverseProducerTask {
323323

324324
// D0/D0bar mesons
325325
struct : o2::framework::ConfigurableGroup {
326-
Configurable<float> trackD0CandEtaMax{"trackD0CandEtaMax", 0.8, "max. track/D0 cand. pseudorapidity"};
327-
Configurable<double> yD0CandGenMax{"yD0CandGenMax", 0.5, "max. gen. D0 cand. rapidity"};
328-
Configurable<double> yD0CandMax{"yD0CandMax", 0.8, "max. D0 cand. rapidity"};
326+
Configurable<float> confD0D0barCandEtaCut{"confD0D0barCandEtaCut", 0.8, "max. cand. pseudorapidity"};
329327
Configurable<float> trackD0pTGenMin{"trackD0pTGenMin", 0.0, "MC Truth, min. pT for tracks and D0/D0bar cand."};
330328
Configurable<float> trackD0pTGenMax{"trackD0pTGenMax", 24.0, "MC Truth, max. pT for tracks and D0/D0bar cand."};
331-
Configurable<bool> useYCutD0Cand{"useYCutD0Cand", true, "True - apply cut on y of D0 cand./false - apply cut on eta"};
332329
Configurable<bool> storeD0D0barDoubleMassHypo{"storeD0D0barDoubleMassHypo", false, "Store D0/D0bar cand. which pass selection criteria for both, D0 and D0bar"};
333330
Configurable<std::vector<int>> classMlD0D0bar{"classMlD0D0bar", {0, 1, 2}, "Indexes of ML scores to be stored. Three indexes max."};
334331
} ConfD0Selection;
@@ -1139,6 +1136,9 @@ struct FemtoUniverseProducerTask {
11391136
{
11401137
const auto occupancy = col.trackOccupancyInTimeRange();
11411138
outputCollExtra(irrate, occupancy);
1139+
if (occupancy > ConfGeneral.confTPCOccupancyMax) {
1140+
std::cout << "occupancy" << occupancy << std::endl;
1141+
}
11421142
}
11431143

11441144
template <bool isMC, typename TrackType>
@@ -1487,11 +1487,7 @@ struct FemtoUniverseProducerTask {
14871487
continue;
14881488
}
14891489

1490-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1491-
continue;
1492-
}
1493-
1494-
if (!(ConfD0Selection.useYCutD0Cand) && std::abs(hfCand.eta()) > ConfD0Selection.trackD0CandEtaMax) {
1490+
if (std::abs(hfCand.eta()) > ConfD0Selection.confD0D0barCandEtaCut) {
14951491
continue;
14961492
}
14971493

@@ -1610,11 +1606,7 @@ struct FemtoUniverseProducerTask {
16101606
continue;
16111607
}
16121608

1613-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1614-
continue;
1615-
}
1616-
1617-
if (!(ConfD0Selection.useYCutD0Cand) && std::abs(hfCand.eta()) > ConfD0Selection.trackD0CandEtaMax) {
1609+
if (std::abs(hfCand.eta()) > ConfD0Selection.confD0D0barCandEtaCut) {
16181610
continue;
16191611
}
16201612

@@ -1740,11 +1732,7 @@ struct FemtoUniverseProducerTask {
17401732
continue;
17411733
}
17421734

1743-
if (ConfD0Selection.useYCutD0Cand && std::abs(hfHelper.yD0(hfCand)) > ConfD0Selection.yD0CandMax) {
1744-
continue;
1745-
}
1746-
1747-
if (!(ConfD0Selection.useYCutD0Cand) && std::abs(hfCand.eta()) > ConfD0Selection.trackD0CandEtaMax) {
1735+
if (std::abs(hfCand.eta()) > ConfD0Selection.confD0D0barCandEtaCut) {
17481736
continue;
17491737
}
17501738

@@ -2133,7 +2121,8 @@ struct FemtoUniverseProducerTask {
21332121
std::vector<int> tmpIDtrack;
21342122

21352123
for (const auto& particle : mcParts) {
2136-
2124+
if (particle.eta() < -ConfFilterCuts.confEtaFilterCut || particle.eta() > ConfFilterCuts.confEtaFilterCut)
2125+
continue;
21372126
if (particle.pt() < ConfD0Selection.trackD0pTGenMin || particle.pt() > ConfD0Selection.trackD0pTGenMax)
21382127
continue;
21392128

@@ -2166,18 +2155,9 @@ struct FemtoUniverseProducerTask {
21662155
/// check if we have D0(bar) → π± K∓
21672156
continue;
21682157
}
2169-
21702158
if (std::abs(particle.pdgCode()) == Pdg::kD0) {
2171-
if (std::abs(particle.y()) > ConfD0Selection.yD0CandGenMax) {
2172-
continue;
2173-
} else {
2174-
origin = RecoDecay::getCharmHadronOrigin(mcParts, particle);
2175-
mcGenFlag = particle.flagMcMatchGen();
2176-
}
2177-
} else {
2178-
if (std::abs(particle.eta()) > ConfD0Selection.trackD0CandEtaMax) {
2179-
continue;
2180-
}
2159+
origin = RecoDecay::getCharmHadronOrigin(mcParts, particle);
2160+
mcGenFlag = particle.flagMcMatchGen();
21812161
}
21822162

21832163
outputParts(outputCollision.lastIndex(),

0 commit comments

Comments
 (0)