|
43 | 43 | #include "PWGUD/Core/SGSelector.h" |
44 | 44 |
|
45 | 45 | // ROOT headers |
46 | | -#include "TLorentzVector.h" |
| 46 | +#include "Math/Vector4D.h" |
47 | 47 | #include "TPDGCode.h" |
48 | 48 |
|
49 | 49 | using namespace o2; |
@@ -1037,7 +1037,7 @@ struct UpcTauRl { |
1037 | 1037 | template <typename T> |
1038 | 1038 | bool selectedTauEvent(T const& trkDaug1, T const& trkDaug2) |
1039 | 1039 | { |
1040 | | - TLorentzVector mother, daug[2], motherOfPions, pion[2]; |
| 1040 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> mother, daug[2], motherOfPions, pion[2]; |
1041 | 1041 | daug[0].SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(pdg->Mass(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
1042 | 1042 | daug[1].SetPxPyPzE(trkDaug2.px(), trkDaug2.py(), trkDaug2.pz(), energy(pdg->Mass(trackPDG(trkDaug2, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug2.px(), trkDaug2.py(), trkDaug2.pz())); |
1043 | 1043 | if (cutTauEvent.useThresholdsPID) { |
@@ -1207,7 +1207,7 @@ struct UpcTauRl { |
1207 | 1207 | histos.get<TH1>(HIST("Events/hChannels"))->Fill(CH_EMUPI); |
1208 | 1208 |
|
1209 | 1209 | if (isTwoSelectedTracks && doTwoTracks) { |
1210 | | - TLorentzVector mother, daug[2], motherOfPions, pion[2], motherOfMuons, muon[2]; |
| 1210 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> mother, daug[2], motherOfPions, pion[2], motherOfMuons, muon[2]; |
1211 | 1211 | const auto& trkDaug1 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[0] : vecPVidx[0]); |
1212 | 1212 | const auto& trkDaug2 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[1] : vecPVidx[1]); |
1213 | 1213 | daug[0].SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(pdg->Mass(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
@@ -1315,7 +1315,7 @@ struct UpcTauRl { |
1315 | 1315 | const auto& mupionP = (cutTauEvent.useThresholdsPID ? isElectronCandidate(trkDaug1) : enumMyParticle(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)) == P_ELECTRON) ? daug[1].P() : daug[0].P(); |
1316 | 1316 | const auto& mupionE = (cutTauEvent.useThresholdsPID ? isElectronCandidate(trkDaug1) : enumMyParticle(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)) == P_ELECTRON) ? daug[1].E() : daug[0].E(); |
1317 | 1317 |
|
1318 | | - TLorentzVector motherOfPiKaon, kaon; |
| 1318 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> motherOfPiKaon, kaon; |
1319 | 1319 | if (isElectronCandidate(trkDaug1)) { |
1320 | 1320 | kaon.SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(MassKaonCharged, trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
1321 | 1321 | motherOfPiKaon = kaon + daug[1]; |
@@ -1629,7 +1629,7 @@ struct UpcTauRl { |
1629 | 1629 | } // Loop over tracks with selections |
1630 | 1630 |
|
1631 | 1631 | if (countPVGT == 2 && doTwoTracks) { |
1632 | | - TLorentzVector daug[2], pion[2], muon[2]; |
| 1632 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> daug[2], pion[2], muon[2]; |
1633 | 1633 | const auto& trkDaug1 = reconstructedBarrelTracks.iteratorAt(vecPVnoPIDidx[0]); |
1634 | 1634 | const auto& trkDaug2 = reconstructedBarrelTracks.iteratorAt(vecPVnoPIDidx[1]); |
1635 | 1635 | daug[0].SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(pdg->Mass(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
@@ -1670,7 +1670,7 @@ struct UpcTauRl { |
1670 | 1670 | bool isElEl = (cutTauEvent.useThresholdsPID ? countPVGTelectronsAlt == 2 : countPVGTelectrons == 2); |
1671 | 1671 | bool isElMuPion = (cutTauEvent.useThresholdsPID ? (countPVGTelectronsAlt == 1 && countPVGTmupionsAlt == 1) : ((countPVGTelectrons == 1 && countPVGTmuons == 1) || (countPVGTelectrons == 1 && countPVGTpions == 1))); |
1672 | 1672 | if (isTwoSelectedTracks && doTwoTracks) { |
1673 | | - TLorentzVector daug[2], pion[2], muon[2]; |
| 1673 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> daug[2], pion[2], muon[2]; |
1674 | 1674 | const auto& trkDaug1 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[0] : vecPVidx[0]); |
1675 | 1675 | const auto& trkDaug2 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[1] : vecPVidx[1]); |
1676 | 1676 | daug[0].SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(pdg->Mass(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
@@ -1869,7 +1869,7 @@ struct UpcTauRl { |
1869 | 1869 | bool isElEl = (cutTauEvent.useThresholdsPID ? countPVGTelectronsAlt == 2 : countPVGTelectrons == 2); |
1870 | 1870 | bool isElMuPion = (cutTauEvent.useThresholdsPID ? (countPVGTelectronsAlt == 1 && countPVGTmupionsAlt == 1) : ((countPVGTelectrons == 1 && countPVGTmuons == 1) || (countPVGTelectrons == 1 && countPVGTpions == 1))); |
1871 | 1871 | if (isTwoSelectedTracks && doTwoTracks) { |
1872 | | - TLorentzVector daug[2]; |
| 1872 | + ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double>> daug[2]; |
1873 | 1873 | const auto& trkDaug1 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[0] : vecPVidx[0]); |
1874 | 1874 | const auto& trkDaug2 = reconstructedBarrelTracks.iteratorAt(cutTauEvent.useThresholdsPID ? vecPVnewPIDidx[1] : vecPVidx[1]); |
1875 | 1875 | daug[0].SetPxPyPzE(trkDaug1.px(), trkDaug1.py(), trkDaug1.pz(), energy(pdg->Mass(trackPDG(trkDaug1, cutPID.cutSiTPC, cutPID.cutSiTOF, cutPID.usePIDwTOF, cutPID.useScutTOFinTPC)), trkDaug1.px(), trkDaug1.py(), trkDaug1.pz())); |
|
0 commit comments