65 nSubjets(*ditau) = ditau->nSubjets();
68 omniScoreHandle(*ditau) = acc_OmniScore(*ditau);
72 if(ditau->nSubjets() < 2) {
73 leadSubjetPtHandle(*ditau) = -999.;
74 leadSubjetEtaHandle(*ditau) = -999.;
75 leadSubjetPhiHandle(*ditau) = -999.;
76 leadSubjetEHandle(*ditau) = -999.;
77 leadSubjetNTracksHandle(*ditau) = -999;
78 leadSubjetChargeHandle(*ditau) = -999;
79 subleadSubjetPtHandle(*ditau) = -999.;
80 subleadSubjetEtaHandle(*ditau) = -999.;
81 subleadSubjetPhiHandle(*ditau) = -999.;
82 subleadSubjetEHandle(*ditau) = -999.;
83 subleadSubjetNTracksHandle(*ditau) = -999;
84 subleadSubjetChargeHandle(*ditau) = -999;
88 leadSubjetPtHandle(*ditau) = ditau->subjetPt(0);
89 leadSubjetEtaHandle(*ditau) = ditau->subjetEta(0);
90 leadSubjetPhiHandle(*ditau) = ditau->subjetPhi(0);
91 leadSubjetEHandle(*ditau) = ditau->subjetE(0);
93 subleadSubjetPtHandle(*ditau) = ditau->subjetPt(1);
94 subleadSubjetEtaHandle(*ditau) = ditau->subjetEta(1);
95 subleadSubjetPhiHandle(*ditau) = ditau->subjetPhi(1);
96 subleadSubjetEHandle(*ditau) = ditau->subjetE(1);
101 int subl_ntracks = 0;
104 const std::array<ROOT::Math::PtEtaPhiEVector, 2> subjets {
105 ROOT::Math::PtEtaPhiEVector(ditau->subjetPt(0), ditau->subjetEta(0), ditau->subjetPhi(0), ditau->subjetE(0)),
106 ROOT::Math::PtEtaPhiEVector(ditau->subjetPt(1), ditau->subjetEta(1), ditau->subjetPhi(1), ditau->subjetE(1))};
108 for (
const auto& xTrack : ditau->trackLinks()) {
109 if (!xTrack.isValid())
112 for (
int i = 0; i < 2; ++i) {
113 double dR = ROOT::Math::VectorUtil::DeltaR(subjets[i], (*xTrack)->p4());
118 lead_charge += (*xTrack)->charge();
121 subl_charge += (*xTrack)->charge();
127 leadSubjetNTracksHandle(*ditau) = lead_ntracks;
128 leadSubjetChargeHandle(*ditau) = lead_charge;
129 subleadSubjetNTracksHandle(*ditau) = subl_ntracks;
130 subleadSubjetChargeHandle(*ditau) = subl_charge;
132 return StatusCode::SUCCESS;