Skip to content

Commit 88cd7f5

Browse files
committed
Remove true tau info from MC tree
1 parent 3a4cc0c commit 88cd7f5

2 files changed

Lines changed: 39 additions & 18 deletions

File tree

‎PWGUD/DataModel/TauThreeProngEventTables.h‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -124,10 +124,10 @@ DECLARE_SOA_COLUMN(TrueChannel, trueChannel, int);
124124
// DECLARE_SOA_COLUMN(TruePosX, truePosX, float);
125125
// DECLARE_SOA_COLUMN(TruePosY, truePosY, float);
126126
DECLARE_SOA_COLUMN(TruePosZ, truePosZ, float);
127-
// truth tau particles // index 0: tau+ // index 1: tau -
128-
DECLARE_SOA_COLUMN(TrueTauPx, trueTauPx, float[2]);
129-
DECLARE_SOA_COLUMN(TrueTauPy, trueTauPy, float[2]);
130-
DECLARE_SOA_COLUMN(TrueTauPz, trueTauPz, float[2]);
127+
// // truth tau particles // index 0: tau+ // index 1: tau -
128+
// DECLARE_SOA_COLUMN(TrueTauPx, trueTauPx, float[2]);
129+
// DECLARE_SOA_COLUMN(TrueTauPy, trueTauPy, float[2]);
130+
// DECLARE_SOA_COLUMN(TrueTauPz, trueTauPz, float[2]);
131131
// truth tau daughter particles - 4 particles
132132
DECLARE_SOA_COLUMN(TrueDaugPx, trueDaugPx, float[4]);
133133
DECLARE_SOA_COLUMN(TrueDaugPy, trueDaugPy, float[4]);
@@ -197,15 +197,15 @@ DECLARE_SOA_TABLE(TrueTauFourTracks, "AOD", "TRUETAU",
197197
tautree::TrueChannel,
198198
// tautree::TrueHasRecoColl,
199199
tautree::TruePosZ,
200-
tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
200+
// tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
201201
tautree::TrueDaugPx, tautree::TrueDaugPy, tautree::TrueDaugPz,
202202
tautree::TrueDaugPdgCode,
203203
tautree::Problem);
204204

205205
DECLARE_SOA_TABLE(GenTauFourTracks, "AOD", "GENTAU",
206206
tautree::TrueChannel,
207207
tautree::TruePosZ,
208-
tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
208+
// tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
209209
tautree::TrueDaugPx, tautree::TrueDaugPy, tautree::TrueDaugPz,
210210
tautree::TrueDaugPdgCode,
211211
tautree::Problem,
@@ -266,15 +266,15 @@ DECLARE_SOA_TABLE(TrueTauSixTracks, "AOD", "TRUETAUSIX",
266266
tautree::TrueChannel,
267267
// tautree::TrueHasRecoColl,
268268
tautree::TruePosZ,
269-
tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
269+
// tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
270270
tautree::True6DaugPx, tautree::True6DaugPy, tautree::True6DaugPz,
271271
tautree::True6DaugPdgCode,
272272
tautree::Problem);
273273

274274
DECLARE_SOA_TABLE(GenTauSixTracks, "AOD", "GENTAUSIX",
275275
tautree::TrueChannel,
276276
tautree::TruePosZ,
277-
tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
277+
// tautree::TrueTauPx, tautree::TrueTauPy, tautree::TrueTauPz,
278278
tautree::True6DaugPx, tautree::True6DaugPy, tautree::True6DaugPz,
279279
tautree::True6DaugPdgCode,
280280
tautree::Problem,

‎PWGUD/TableProducer/tauThreeProngEventTableProducer.cxx‎

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -262,14 +262,17 @@ struct TauThreeProngEventTableProducer {
262262
registrySkim.add("skim/nTof", ";N_{TOFtrk};events", {HistType::kTH1F, {{10, -1., 9.}}});
263263
}
264264
if (doprocessMonteCarlo) {
265-
registrySkim.add("skim/efficiencyMC", ";efficeincy;events", {HistType::kTH1D, {{10, 0., 10.}}});
265+
registrySkim.add("skim/efficiencyMC", ";efficiency;events", {HistType::kTH1D, {{10, 0., 10.}}});
266266
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(1, "1: All");
267267
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(2, "2: N^{#tau}=2");
268268
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(3, "3: |y^{#tau}| <= 0.9");
269269
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(4, "4: |#eta^{ch}|<0.9");
270270
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(5, "5: 4 or 6 trk");
271-
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(6, "6: 4 trk");
272-
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(7, "7: 6 trk");
271+
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(6, "e+3#pi");
272+
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(7, "#mu+3#pi");
273+
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(8, "#pi+3#pi");
274+
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(9, "6#pi");
275+
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->GetXaxis()->SetBinLabel(10, "rec");
273276

274277
registrySkim.add("skim/problemMC", ";problem;events", {HistType::kTH1D, {{10, 0., 10.}}});
275278

@@ -280,13 +283,14 @@ struct TauThreeProngEventTableProducer {
280283
registrySkim.add("skim/tauPtMC", ";p_{T}^{#tau};events", {HistType::kTH1F, {{100, 0, 5.}}});
281284
registrySkim.add("skim/tauDeltaEtaMC", ";#Delta#eta^{#tau};events ", {HistType::kTH1F, {{100, -5., 5.}}});
282285
registrySkim.add("skim/tauDeltaPhiMC", ";#Delta#phi^{#tau}(deg.);events", {HistType::kTH1F, {{100, 131., 181}}});
286+
registrySkim.add("skim/ditauInvMassMC", ";M_{inv}^{#tau#tau}(GeV/#it{c}^{2});events", {HistType::kTH1F, {{100, 3.4, 13.4}}});
283287
registrySkim.add("skim/nChPartMC", ";N^{ch. part};events", {HistType::kTH1F, {{10, 0, 10.}}});
284288
registrySkim.add("skim/daughterPhiMC", ";#phi^{daughter};events", {HistType::kTH1F, {{100, 0, 6.4}}});
285289
registrySkim.add("skim/daughterEtaMC", ";#eta^{daughter};events", {HistType::kTH1F, {{100, -4., 4.}}});
286290
registrySkim.add("skim/daughterPtMC", ";p_{T}^{daughter};events", {HistType::kTH1F, {{100, 0, 5.0}}});
287291
}
288292
if (doprocessGenerated) {
289-
registrySkim.add("gen/efficiencyMC", ";efficeincy;events", {HistType::kTH1D, {{10, 0., 10.}}});
293+
registrySkim.add("gen/efficiencyMC", ";efficiency;events", {HistType::kTH1D, {{10, 0., 10.}}});
290294
registrySkim.get<TH1>(HIST("gen/efficiencyMC"))->GetXaxis()->SetBinLabel(1, "All");
291295
registrySkim.get<TH1>(HIST("gen/efficiencyMC"))->GetXaxis()->SetBinLabel(2, "N^{#tau}=2");
292296
registrySkim.get<TH1>(HIST("gen/efficiencyMC"))->GetXaxis()->SetBinLabel(3, "|y^{#tau}| <=0.9");
@@ -315,6 +319,7 @@ struct TauThreeProngEventTableProducer {
315319
registrySkim.add("gen/tauPtMC", ";p_{T}^{#tau};events", {HistType::kTH1F, {{100, 0, 5.}}});
316320
registrySkim.add("gen/tauDeltaEtaMC", ";#Delta#eta^{#tau};events ", {HistType::kTH1F, {{100, -5., 5.}}});
317321
registrySkim.add("gen/tauDeltaPhiMC", ";#Delta#phi^{#tau}(deg.);events", {HistType::kTH1F, {{100, 131., 181}}});
322+
registrySkim.add("gen/ditauInvMassMC", ";M_{inv}^{#tau#tau}(GeV/#it{c}^{2});events", {HistType::kTH1F, {{100, 3.4, 13.4}}});
318323
registrySkim.add("gen/nChPartMC", ";N^{ch. part};events", {HistType::kTH1F, {{10, 0, 10.}}});
319324
registrySkim.add("gen/daughterPhiMC", ";#phi^{daughter};events", {HistType::kTH1F, {{100, 0, 6.4}}});
320325
registrySkim.add("gen/daughterEtaMC", ";#eta^{daughter};events", {HistType::kTH1F, {{100, -4., 4.}}});
@@ -1212,6 +1217,13 @@ struct TauThreeProngEventTableProducer {
12121217
registrySkim.get<TH1>(HIST("skim/tauDeltaEtaMC"))->Fill(trueTauEta[0] - trueTauEta[1]);
12131218
registrySkim.get<TH1>(HIST("skim/tauDeltaPhiMC"))->Fill(calculateDeltaPhi(trueTauPhi[0], trueTauPhi[1]) * 180. / o2::constants::math::PI);
12141219

1220+
// inv mass of two taus
1221+
ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> tau1;
1222+
ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> tau2;
1223+
tau1.SetXYZT(trueTauX[0], trueTauY[0], trueTauZ[0], RecoDecay::e(trueTauX[0], trueTauY[0], trueTauZ[0], MassTauPlus));
1224+
tau2.SetXYZT(trueTauX[1], trueTauY[1], trueTauZ[1], RecoDecay::e(trueTauX[1], trueTauY[1], trueTauZ[1], MassTauPlus));
1225+
registrySkim.get<TH1>(HIST("skim/ditauInvMassMC"))->Fill((tau1 + tau2).M());
1226+
12151227
registrySkim.get<TH1>(HIST("skim/efficiencyMC"))->Fill(2., 1.); // |y_tau| <= 0.9
12161228
countMothers = 0;
12171229
int nChargedDaughtersTau[2] = {0, 0};
@@ -1641,7 +1653,7 @@ struct TauThreeProngEventTableProducer {
16411653
trueChannel,
16421654
// trueHasRecoColl,
16431655
mccoll.posZ(),
1644-
trueTauX, trueTauY, trueTauZ,
1656+
// trueTauX, trueTauY, trueTauZ,
16451657
trueDaugX, trueDaugY, trueDaugZ,
16461658
trueDaugPdgCode, problem);
16471659
} else if (nChargedDaughtersTau[0] + nChargedDaughtersTau[1] == sixTracks) { // 6
@@ -1673,7 +1685,7 @@ struct TauThreeProngEventTableProducer {
16731685
trueChannel,
16741686
// trueHasRecoColl,
16751687
mccoll.posZ(),
1676-
trueTauX, trueTauY, trueTauZ,
1688+
// trueTauX, trueTauY, trueTauZ,
16771689
trueDaugX, trueDaugY, trueDaugZ,
16781690
trueDaugPdgCode, problem);
16791691
} // end of saving the output
@@ -1795,6 +1807,13 @@ struct TauThreeProngEventTableProducer {
17951807
registrySkim.get<TH1>(HIST("gen/tauDeltaEtaMC"))->Fill(trueTauEta[0] - trueTauEta[1]);
17961808
registrySkim.get<TH1>(HIST("gen/tauDeltaPhiMC"))->Fill(calculateDeltaPhi(trueTauPhi[0], trueTauPhi[1]) * 180. / o2::constants::math::PI);
17971809

1810+
// inv mass of two taus
1811+
ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> tau1;
1812+
ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> tau2;
1813+
tau1.SetXYZT(trueTauX[0], trueTauY[0], trueTauZ[0], RecoDecay::e(trueTauX[0], trueTauY[0], trueTauZ[0], MassTauPlus));
1814+
tau2.SetXYZT(trueTauX[1], trueTauY[1], trueTauZ[1], RecoDecay::e(trueTauX[1], trueTauY[1], trueTauZ[1], MassTauPlus));
1815+
registrySkim.get<TH1>(HIST("gen/ditauInvMassMC"))->Fill((tau1 + tau2).M());
1816+
17981817
registrySkim.get<TH1>(HIST("gen/efficiencyMC"))->Fill(2., 1.); // |y_tau| <= 0.9
17991818
countMothers = 0;
18001819
int nChargedDaughtersTau[2] = {0, 0};
@@ -1965,17 +1984,19 @@ struct TauThreeProngEventTableProducer {
19651984
genTauFourTracks(
19661985
trueChannel,
19671986
mccoll.posZ(),
1968-
trueTauX, trueTauY, trueTauZ,
1987+
// trueTauX, trueTauY, trueTauZ,
19691988
trueDaugX, trueDaugY, trueDaugZ,
1970-
trueDaugPdgCode, problem,
1989+
trueDaugPdgCode,
1990+
problem,
19711991
trueHasRecoColl);
19721992
} else if (nChargedDaughtersTau[0] + nChargedDaughtersTau[1] == sixTracks) { // 6
19731993
genTauSixTracks(
19741994
trueChannel,
19751995
mccoll.posZ(),
1976-
trueTauX, trueTauY, trueTauZ,
1996+
// trueTauX, trueTauY, trueTauZ,
19771997
trueDaugX, trueDaugY, trueDaugZ,
1978-
trueDaugPdgCode, problem,
1998+
trueDaugPdgCode,
1999+
problem,
19792000
trueHasRecoColl);
19802001
} // end of writing output
19812002

0 commit comments

Comments
 (0)