125 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau1;
126 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau2;
127 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau3;
128 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau4;
130 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau2_ungroomed;
131 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau3_ungroomed;
132 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau4_ungroomed;
134 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau1_wta;
135 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau2_wta;
136 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau3_wta;
137 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau4_wta;
139 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau2_wta_ungroomed;
140 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau3_wta_ungroomed;
141 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_Tau4_wta_ungroomed;
143 for(
unsigned int i=0; i<
m_moments.size(); i++) {
164 fastjet::PseudoJet
jet;
165 fastjet::PseudoJet jet_ungroomed;
171 bool calculate_ungroomed =
false;
181 ATH_MSG_ERROR(
"Parent element link is not valid. Aborting" );
182 return StatusCode::FAILURE;
185 const xAOD::Jet* parentJet = *(parentLink);
193 std::once_flag oflag;
195 []() { fastjet::contrib::WTA_KT_Axes
x; });
197 for(
unsigned int i=0; i<
m_moments.size(); i++) {
202 fastjet::contrib::NormalizedCutoffMeasure normalized_measure
203 (alpha, injet->getSizeParameter(), 1000000);
205 float Tau1_value = -999;
206 float Tau2_value = -999;
207 float Tau3_value = -999;
208 float Tau4_value = -999;
210 float Tau2_ungroomed_value = -999;
211 float Tau3_ungroomed_value = -999;
212 float Tau4_ungroomed_value = -999;
214 float Tau1_wta_value = -999;
215 float Tau2_wta_value = -999;
216 float Tau3_wta_value = -999;
217 float Tau4_wta_value = -999;
219 float Tau2_wta_ungroomed_value = -999;
220 float Tau3_wta_ungroomed_value = -999;
221 float Tau4_wta_ungroomed_value = -999;
227 fastjet::contrib::KT_Axes kt_axes;
238 if( calculate_ungroomed ) {
239 Tau2_ungroomed_value = tau2.
result(jet_ungroomed);
240 Tau3_ungroomed_value = tau3.
result(jet_ungroomed);
241 Tau4_ungroomed_value = tau4.
result(jet_ungroomed);
246 fastjet::contrib::WTA_KT_Axes wta_kt_axes;
257 if( calculate_ungroomed ) {
258 Tau2_wta_ungroomed_value = tau2_wta.
result(jet_ungroomed);
259 Tau3_wta_ungroomed_value = tau3_wta.
result(jet_ungroomed);
260 Tau4_wta_ungroomed_value = tau4_wta.
result(jet_ungroomed);
265 wdhs_Tau1[i](*injet) = Tau1_value;
266 wdhs_Tau2[i](*injet) = Tau2_value;
267 wdhs_Tau3[i](*injet) = Tau3_value;
268 wdhs_Tau4[i](*injet) = Tau4_value;
270 wdhs_Tau2_ungroomed[i](*injet) = Tau2_ungroomed_value;
271 wdhs_Tau3_ungroomed[i](*injet) = Tau3_ungroomed_value;
272 wdhs_Tau4_ungroomed[i](*injet) = Tau4_ungroomed_value;
274 wdhs_Tau1_wta[i](*injet) = Tau1_wta_value;
275 wdhs_Tau2_wta[i](*injet) = Tau2_wta_value;
276 wdhs_Tau3_wta[i](*injet) = Tau3_wta_value;
277 wdhs_Tau4_wta[i](*injet) = Tau4_wta_value;
279 wdhs_Tau2_wta_ungroomed[i](*injet) = Tau2_wta_ungroomed_value;
280 wdhs_Tau3_wta_ungroomed[i](*injet) = Tau3_wta_ungroomed_value;
281 wdhs_Tau4_wta_ungroomed[i](*injet) = Tau4_wta_ungroomed_value;
286 return StatusCode::SUCCESS;