21 ATH_MSG_ERROR(
"EnergyCorrelatorTool needs to have its input jet container name configured!");
22 return StatusCode::FAILURE;
32 if( std::abs(
m_Beta-1.0) > 1.0
e-5 ) {
35 ATH_MSG_WARNING(
"The Beta property is deprecated, please use the BetaList property to provide a list of values");
46 float betaFix =
round(
beta * 10.0 ) / 10.0;
47 if( std::abs(
beta-betaFix) > 1.0
e-5 )
ATH_MSG_DEBUG(
"beta = " <<
beta <<
" has been rounded to " << betaFix );
72 "ECF1" + moment.suffix);
74 "ECF2" + moment.suffix);
76 "ECF3" + moment.suffix);
78 "ECF4" + moment.suffix);
80 "ECF5" + moment.suffix);
82 "ECF1_ungroomed" + moment.suffix);
84 "ECF2_ungroomed" + moment.suffix);
86 "ECF3_ungroomed" + moment.suffix);
98 return StatusCode::SUCCESS;
104 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF1;
105 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF2;
106 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF3;
107 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF4;
108 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF5;
110 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF1_ungroomed;
111 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF2_ungroomed;
112 std::vector<SG::WriteDecorHandle<xAOD::JetContainer, float>> wdhs_ECF3_ungroomed;
128 fastjet::PseudoJet
jet;
129 fastjet::PseudoJet jet_ungroomed;
135 bool calculate_ungroomed =
false;
145 ATH_MSG_ERROR(
"Parent element link is not valid. Aborting" );
146 return StatusCode::FAILURE;
149 const xAOD::Jet* parentJet = *(parentLink);
157 float ECF1_value = -999;
158 float ECF2_value = -999;
159 float ECF3_value = -999;
160 float ECF4_value = -999;
161 float ECF5_value = -999;
163 float ECF1_ungroomed_value = -999;
164 float ECF2_ungroomed_value = -999;
165 float ECF3_ungroomed_value = -999;
187 if( calculate_ungroomed ) {
188 ECF1_ungroomed_value = ECF1.
result(jet_ungroomed);
189 ECF2_ungroomed_value = ECF2.
result(jet_ungroomed);
190 ECF3_ungroomed_value = ECF3.
result(jet_ungroomed);
195 wdhs_ECF1[
i](*injet) = ECF1_value;
196 wdhs_ECF2[
i](*injet) = ECF2_value;
197 wdhs_ECF3[
i](*injet) = ECF3_value;
198 wdhs_ECF4[
i](*injet) = ECF4_value;
199 wdhs_ECF5[
i](*injet) = ECF5_value;
201 wdhs_ECF1_ungroomed[
i](*injet) = ECF1_ungroomed_value;
202 wdhs_ECF2_ungroomed[
i](*injet) = ECF2_ungroomed_value;
203 wdhs_ECF3_ungroomed[
i](*injet) = ECF3_ungroomed_value;
208 return StatusCode::SUCCESS;