@@ -939,7 +939,6 @@ struct UpcTauRl {
939939 return true ;
940940 }
941941
942-
943942 template <typename T>
944943 bool selectedGoodElectron (T const & electronCandidate)
945944 {
@@ -952,7 +951,7 @@ struct UpcTauRl {
952951 if (electronCandidate.hasTOF ()) {
953952 if (electronCandidate.tofNSigmaPr () > cutTauEvent.cutMinElectronNsigmaPr && electronCandidate.tofNSigmaPr () < cutTauEvent.cutMaxElectronNsigmaPr )
954953 return false ;
955- if (momentum (electronCandidate.px (), electronCandidate.py (), electronCandidate.pz ()) < 1.0 ){
954+ if (momentum (electronCandidate.px (), electronCandidate.py (), electronCandidate.pz ()) < 1.0 ) {
956955 if (electronCandidate.tofNSigmaKa () > cutTauEvent.cutMinElectronTofNsigmaKa && electronCandidate.tofNSigmaKa () < cutTauEvent.cutMaxElectronTofNsigmaKa )
957956 return false ;
958957 } else {
@@ -973,7 +972,7 @@ struct UpcTauRl {
973972 if (pionCandidate.hasTOF ()) {
974973 if (pionCandidate.tofNSigmaPr () > cutTauEvent.cutMinElectronNsigmaPr && pionCandidate.tofNSigmaPr () < cutTauEvent.cutMaxElectronNsigmaPr )
975974 return false ;
976- if (momentum (pionCandidate.px (), pionCandidate.py (), pionCandidate.pz ()) < 1.0 ){
975+ if (momentum (pionCandidate.px (), pionCandidate.py (), pionCandidate.pz ()) < 1.0 ) {
977976 if (pionCandidate.tofNSigmaKa () > cutTauEvent.cutMinElectronTofNsigmaKa && pionCandidate.tofNSigmaKa () < cutTauEvent.cutMaxElectronTofNsigmaKa )
978977 return false ;
979978 }
@@ -988,10 +987,14 @@ struct UpcTauRl {
988987 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 ()));
989988 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 ()));
990989 if (cutTauEvent.useThresholdsPID ) {
991- if (isElectronCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
992- if (isElectronCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
993- if (isMuPionCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
994- if (isMuPionCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
990+ if (isElectronCandidate (trkDaug1))
991+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
992+ if (isElectronCandidate (trkDaug2))
993+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
994+ if (isMuPionCandidate (trkDaug1))
995+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
996+ if (isMuPionCandidate (trkDaug2))
997+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
995998 }
996999 mother = daug[0 ] + daug[1 ];
9971000 pion[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
@@ -1110,11 +1113,11 @@ struct UpcTauRl {
11101113 countPVGTothers++;
11111114 }
11121115 // alternative selection
1113- if (isElectronCandidate (track)){
1116+ if (isElectronCandidate (track)) {
11141117 countPVGTelmupiAlt++;
11151118 countPVGTelectronsAlt++;
11161119 }
1117- if (isMuPionCandidate (track)){
1120+ if (isMuPionCandidate (track)) {
11181121 countPVGTelmupiAlt++;
11191122 countPVGTmupionsAlt++;
11201123 }
@@ -1136,10 +1139,14 @@ struct UpcTauRl {
11361139 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 ()));
11371140 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 ()));
11381141 if (cutTauEvent.useThresholdsPID ) {
1139- if (isElectronCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1140- if (isElectronCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1141- if (isMuPionCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1142- if (isMuPionCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1142+ if (isElectronCandidate (trkDaug1))
1143+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1144+ if (isElectronCandidate (trkDaug2))
1145+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1146+ if (isMuPionCandidate (trkDaug1))
1147+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1148+ if (isMuPionCandidate (trkDaug2))
1149+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
11431150 }
11441151 mother = daug[0 ] + daug[1 ];
11451152 pion[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
@@ -1367,7 +1374,7 @@ struct UpcTauRl {
13671374 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hInvariantMass" ))->Fill (motherOfPiKaon.M ());
13681375 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hInvariantMassWide" ))->Fill (motherOfPiKaon.M ());
13691376 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hMotherMassVsPt" ))->Fill (motherOfPiKaon.M (), motherOfPiKaon.Pt ());
1370- histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hMotherMassVsElectronP" ))->Fill (motherOfPiKaon.M (),electronP);
1377+ histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hMotherMassVsElectronP" ))->Fill (motherOfPiKaon.M (), electronP);
13711378 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/hIMKvsIMe" ))->Fill (motherOfPiKaon.M (), mother.M ());
13721379 if (electronPt < cutTauEvent.cutElectronPt ) {
13731380 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/KstarSelection/eMomentaCutLow/hInvariantMass" ))->Fill (motherOfPiKaon.M ());
@@ -1390,8 +1397,8 @@ struct UpcTauRl {
13901397 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherPhi" ))->Fill (mother.Phi ());
13911398 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherRapidity" ))->Fill (mother.Rapidity ());
13921399 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherMassVsPt" ))->Fill (mother.M (), mother.Pt ());
1393- histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherMassVsElectronP" ))->Fill (mother.M (),electronP);
1394- histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherMassVsAcoplanarity" ))->Fill (mother.M (),acoplanarity);
1400+ histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherMassVsElectronP" ))->Fill (mother.M (), electronP);
1401+ histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hMotherMassVsAcoplanarity" ))->Fill (mother.M (), acoplanarity);
13951402 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPt" ))->Fill (electronPt);
13961403 histos.get <TH1 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPtWide" ))->Fill (electronPt);
13971404 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hDaughtersP" ))->Fill (daug[0 ].P (), daug[1 ].P ());
@@ -1402,8 +1409,8 @@ struct UpcTauRl {
14021409 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hDaughtersEnergyFractions" ))->Fill (electronE / (electronE + mupionE), mupionE / (electronE + mupionE));
14031410 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPvsOtherP" ))->Fill (electronP, mupionP);
14041411 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPwideVsOtherPwide" ))->Fill (electronP, mupionP);
1405- histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPvsAcoplanarity" ))->Fill (electronP,acoplanarity);
1406- histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hOtherPvsAcoplanarity" ))->Fill (mupionP,acoplanarity);
1412+ histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPvsAcoplanarity" ))->Fill (electronP, acoplanarity);
1413+ histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hOtherPvsAcoplanarity" ))->Fill (mupionP, acoplanarity);
14071414 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPtVsOtherPt" ))->Fill (electronPt, mupionPt);
14081415 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronPhiVsOtherPhi" ))->Fill (isElectronCandidate (trkDaug1) ? daug[0 ].Phi () : daug[1 ].Phi (), isElectronCandidate (trkDaug1) ? daug[1 ].Phi () : daug[0 ].Phi ());
14091416 histos.get <TH2 >(HIST (" EventTwoTracks/ElectronMuPi/hElectronRapVsOtherRap" ))->Fill (isElectronCandidate (trkDaug1) ? daug[0 ].Rapidity () : daug[1 ].Rapidity (), isElectronCandidate (trkDaug1) ? daug[1 ].Rapidity () : daug[0 ].Rapidity ());
@@ -1766,11 +1773,11 @@ struct UpcTauRl {
17661773 }
17671774 }
17681775 // alternative selection
1769- if (isElectronCandidate (track)){
1776+ if (isElectronCandidate (track)) {
17701777 countPVGTelmupiAlt++;
17711778 countPVGTelectronsAlt++;
17721779 }
1773- if (isMuPionCandidate (track)){
1780+ if (isMuPionCandidate (track)) {
17741781 countPVGTelmupiAlt++;
17751782 countPVGTmupionsAlt++;
17761783 }
@@ -1787,10 +1794,14 @@ struct UpcTauRl {
17871794 return ;
17881795 }
17891796 if (cutTauEvent.useThresholdsPID ) {
1790- if (isElectronCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1791- if (isElectronCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1792- if (isMuPionCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1793- if (isMuPionCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1797+ if (isElectronCandidate (trkDaug1))
1798+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1799+ if (isElectronCandidate (trkDaug2))
1800+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1801+ if (isMuPionCandidate (trkDaug1))
1802+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1803+ if (isMuPionCandidate (trkDaug2))
1804+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
17941805 }
17951806
17961807 if (trkDaug1.hasTPC ()) {
@@ -1827,10 +1838,14 @@ struct UpcTauRl {
18271838 return ;
18281839 }
18291840 if (cutTauEvent.useThresholdsPID ) {
1830- if (isElectronCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1831- if (isElectronCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1832- if (isMuPionCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1833- if (isMuPionCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1841+ if (isElectronCandidate (trkDaug1))
1842+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1843+ if (isElectronCandidate (trkDaug2))
1844+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
1845+ if (isMuPionCandidate (trkDaug1))
1846+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
1847+ if (isMuPionCandidate (trkDaug2))
1848+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
18341849 }
18351850
18361851 if (trkDaug1.hasTPC ()) {
@@ -2167,11 +2182,11 @@ struct UpcTauRl {
21672182 }
21682183 }
21692184 // alternative selection
2170- if (isElectronCandidate (track)){
2185+ if (isElectronCandidate (track)) {
21712186 countPVGTelmupiAlt++;
21722187 countPVGTelectronsAlt++;
21732188 }
2174- if (isMuPionCandidate (track)){
2189+ if (isMuPionCandidate (track)) {
21752190 countPVGTelmupiAlt++;
21762191 countPVGTmupionsAlt++;
21772192 }
@@ -2190,10 +2205,14 @@ struct UpcTauRl {
21902205 return ;
21912206 }
21922207 if (cutTauEvent.useThresholdsPID ) {
2193- if (isElectronCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
2194- if (isElectronCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
2195- if (isMuPionCandidate (trkDaug1)) daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
2196- if (isMuPionCandidate (trkDaug2)) daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
2208+ if (isElectronCandidate (trkDaug1))
2209+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassElectron, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
2210+ if (isElectronCandidate (trkDaug2))
2211+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassElectron, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
2212+ if (isMuPionCandidate (trkDaug1))
2213+ daug[0 ].SetPxPyPzE (trkDaug1.px (), trkDaug1.py (), trkDaug1.pz (), energy (MassPionCharged, trkDaug1.px (), trkDaug1.py (), trkDaug1.pz ()));
2214+ if (isMuPionCandidate (trkDaug2))
2215+ daug[1 ].SetPxPyPzE (trkDaug2.px (), trkDaug2.py (), trkDaug2.pz (), energy (MassPionCharged, trkDaug2.px (), trkDaug2.py (), trkDaug2.pz ()));
21972216 }
21982217 if (trkDaug1.hasTPC () && trkDaug2.hasTPC ()) {
21992218
0 commit comments