Skip to content

Commit a31fd4f

Browse files
committed
Increase ClassDef(), and add MC signal
1 parent 7f828ff commit a31fd4f

2 files changed

Lines changed: 45 additions & 16 deletions

File tree

PWGDQ/Core/MCProng.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,6 @@ class MCProng
101101
std::vector<uint64_t> fExcludeSource;
102102
std::vector<bool> fUseANDonSourceBitMap;
103103

104-
ClassDef(MCProng, 1);
104+
ClassDef(MCProng, 2);
105105
};
106106
#endif

PWGDQ/Core/MCSignalLibrary.h

Lines changed: 44 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,11 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
4545
signal = new MCSignal(name, "Primary electrons", {prong}, {-1}); // define the signal using the full constructor
4646
return signal;
4747
}
48+
if (!nameStr.compare("photon")) {
49+
MCProng prong(1, {22}, {true}, {false}, {0}, {0}, {false}); // define 1-generation prong using the full constructor
50+
signal = new MCSignal(name, "Photon", {prong}, {-1}); // define the signal using the full constructor
51+
return signal;
52+
}
4853
if (!nameStr.compare("kaonFromPhi")) {
4954
MCProng prong(2, {321, 333}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false}); // define 2-generation prong using the full constructor
5055
signal = new MCSignal(name, "Kaons from phi-mesons", {prong}, {-1}); // define the signal using the full constructor
@@ -173,22 +178,28 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
173178
signal = new MCSignal(name, "Electrons from pi0 decays", {prong}, {-1});
174179
return signal;
175180
}
181+
if (!nameStr.compare("Pi0decayTOe")) {
182+
MCProng prong(2, {111, 11}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
183+
prong.SetSignalInTime(0, true); // set direction to check for daughters (true, in time) or for mothers (false, back in time)
184+
signal = new MCSignal(name, "Pi0 decays into an electron", {prong}, {-1});
185+
return signal;
186+
}
176187
if (!nameStr.compare("Pi0")) {
177188
MCProng prong(1, {111}, {true}, {false}, {0}, {0}, {false});
178-
//prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
189+
// prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
179190
signal = new MCSignal(name, "Pi0", {prong}, {-1});
180191
return signal;
181192
}
182193
if (!nameStr.compare("LMeeLFQ")) {
183194
MCProng prong(1, {900}, {true}, {false}, {0}, {0}, {false});
184-
//prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
185-
signal = new MCSignal(name, "light flavor mesons + quarkonia", {prong}, {-1}); //pi0,eta,eta',rho,omega,phi,jpsi,psi2s
195+
// prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
196+
signal = new MCSignal(name, "light flavor mesons + quarkonia", {prong}, {-1}); // pi0,eta,eta',rho,omega,phi,jpsi,psi2s
186197
return signal;
187198
}
188199
if (!nameStr.compare("LMeeLF")) {
189200
MCProng prong(1, {901}, {true}, {false}, {0}, {0}, {false});
190-
//prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
191-
signal = new MCSignal(name, "ligh flavor mesons", {prong}, {-1}); //pi0,eta,eta',rho,omega,phi
201+
// prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
202+
signal = new MCSignal(name, "ligh flavor mesons", {prong}, {-1}); // pi0,eta,eta',rho,omega,phi
192203
return signal;
193204
}
194205
if (!nameStr.compare("electronFromDs")) {
@@ -201,6 +212,11 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
201212
signal = new MCSignal(name, "Ds mesons", {prong}, {-1});
202213
return signal;
203214
}
215+
if (!nameStr.compare("electronFromPC")) {
216+
MCProng prong(2, {11, 22}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
217+
signal = new MCSignal(name, "electron from a photon conversion", {prong}, {-1});
218+
return signal;
219+
}
204220

205221
// 2-prong signals
206222
if (!nameStr.compare("dielectron")) {
@@ -230,7 +246,7 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
230246
return signal;
231247
}
232248

233-
//LMEE single signals
249+
// LMEE single signals
234250
if (!nameStr.compare("eFromPi0")) {
235251
MCProng prong(2, {11, 111}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
236252
signal = new MCSignal(name, "Electrons from pi0 decays", {prong}, {-1});
@@ -288,10 +304,17 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
288304
signal = new MCSignal(name, "Electrons from LF meson + quarkonia decays", {prong}, {-1}); // pi0,eta,eta',rho,omega,phi,jpsi,psi2s mesons
289305
return signal;
290306
}
307+
if (!nameStr.compare("LFQdecayToE")) {
308+
MCProng prong(2, {900, 11}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
309+
// prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
310+
prong.SetSignalInTime(0, true); // set direction to check for daughters (true, in time) or for mothers (false, back in time)
311+
signal = new MCSignal(name, "LF meson + quarkonia decays into e", {prong}, {-1}); // pi0,eta,eta',rho,omega,phi,jpsi,psi2s mesons
312+
return signal;
313+
}
291314
if (!nameStr.compare("eFromLMeeLF")) {
292315
MCProng prong(2, {11, 901}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
293-
//prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
294-
signal = new MCSignal(name, "Electrons from LF meson decays", {prong}, {-1}); //pi0,eta,eta',rho,omega,phi mesons
316+
// prong.SetSourceBit(0, MCProng::kPhysicalPrimary, false); // set source to be ALICE primary particles
317+
signal = new MCSignal(name, "Electrons from LF meson decays", {prong}, {-1}); // pi0,eta,eta',rho,omega,phi mesons
295318
return signal;
296319
}
297320
if (!nameStr.compare("eFromHc")) {
@@ -334,9 +357,15 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
334357
signal = new MCSignal(name, "Electrons from open charmed hadron decays from b hadron decays", {prong}, {-1});
335358
return signal;
336359
}
360+
// if (!nameStr.compare("LFQtoPC")) {
361+
// MCProng prong(3, {900, 22, 11}, {true, true, true}, {false, false, false}, {0, 0, 0}, {0, 0, 0}, {false, false, false});
362+
// prong.SetSignalInTime(0, true); // set direction to check for daughters (true, in time) or for mothers (false, back in time)
363+
// signal = new MCSignal(name, "LF meson + quarkonia decays into photon conversion electron", {prong}, {-1});
364+
// return signal;
365+
// }
337366

338367
//_________________________________________________________________________________________________________________________
339-
//LMEE pair signals for LF, same mother
368+
// LMEE pair signals for LF, same mother
340369
if (!nameStr.compare("eeFromPi0")) {
341370
MCProng prong(2, {11, 111}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
342371
signal = new MCSignal(name, "ee pairs from pi0 decays", {prong, prong}, {1, 1}); // signal at pair level
@@ -398,37 +427,37 @@ MCSignal* o2::aod::dqmcsignals::GetMCSignal(const char* name)
398427
return signal;
399428
}
400429

401-
//LMEE pair signals for HF
402-
//c->e and c->e (prompt)
430+
// LMEE pair signals for HF
431+
// c->e and c->e (prompt)
403432
if (!nameStr.compare("eeFromCC")) {
404433
MCProng prong(3, {11, 402, 502}, {true, true, true}, {false, false, true}, {0, 0, 0}, {0, 0, 0}, {false, false, false});
405434
signal = new MCSignal(name, "ee pairs from c->e and c->e", {prong, prong}, {-1, -1}); // signal at pair level
406435
return signal;
407436
}
408437

409-
//b->e and b->e
438+
// b->e and b->e
410439
if (!nameStr.compare("eeFromBB")) {
411440
MCProng prong(2, {11, 502}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
412441
signal = new MCSignal(name, "ee pairs from b->e and b->e", {prong, prong}, {-1, -1}); // signal at pair level
413442
return signal;
414443
}
415444

416-
//b->c->e and b->c->e
445+
// b->c->e and b->c->e
417446
if (!nameStr.compare("eeFromBtoC")) {
418447
MCProng prong(3, {11, 402, 502}, {true, true, true}, {false, false, false}, {0, 0, 0}, {0, 0, 0}, {false, false, false});
419448
signal = new MCSignal(name, "ee pairs from b->c->e and b->c->e", {prong, prong}, {-1, -1}); // signal at pair level
420449
return signal;
421450
}
422451

423-
//b->e and b->c->e
452+
// b->e and b->c->e
424453
if (!nameStr.compare("eeFromBandBtoC")) {
425454
MCProng prongB(2, {11, 502}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
426455
MCProng prongBtoC(3, {11, 402, 502}, {true, true, true}, {false, false, false}, {0, 0, 0}, {0, 0, 0}, {false, false, false});
427456
signal = new MCSignal(name, "ee pairs from b->e and b->c->e", {prongB, prongBtoC}, {-1, -1}); // signal at pair level
428457
return signal;
429458
}
430459

431-
//b->e and b->c->e (single b)
460+
// b->e and b->c->e (single b)
432461
if (!nameStr.compare("eeFromSingleBandBtoC")) {
433462
MCProng prongB(2, {11, 502}, {true, true}, {false, false}, {0, 0}, {0, 0}, {false, false});
434463
MCProng prongBtoC(3, {11, 402, 502}, {true, true, true}, {false, false, false}, {0, 0, 0}, {0, 0, 0}, {false, false, false});

0 commit comments

Comments
 (0)