112 return StatusCode::SUCCESS;
117 jetStartP4 =
jet.jetP4();
119 float startPt=
jet.pt();
120 float calibPt=
jet.pt();
125 return StatusCode::SUCCESS;
129 if (jetEventInfo.
runNumber()>=334842 && jetEventInfo.
runNumber()<=340453) is8b4e=
true;
135 if (bcidGapBeforeTrain<=15) bcidDistanceFromFront+=55;
138 if (bcidGapBeforeTrain==5 && bcidGapBeforeTrainMinus12==5) bcidDistanceFromFront+=24;
139 if (bcidGapBeforeTrain>5 && bcidGapBeforeTrain<20) bcidDistanceFromFront+=60;
140 if (bcidGapBeforeTrain==5 && bcidGapBeforeTrainMinus12>5 && bcidGapBeforeTrainMinus12<20) bcidDistanceFromFront+=72;
141 if (bcidGapBeforeTrain==5 && bcidGapBeforeTrainMinus12>20) bcidDistanceFromFront+=12;
145 calibP4 =
jet.jetP4();
147 float detEta=DetectorEtaAcc(
jet);
148 float mu=jetEventInfo.
mu();
151 if ((bcidDistanceFromFront>=0 && bcidDistanceFromFront<12) || (bcidDistanceFromFront>=55 && bcidDistanceFromFront<67)){
152 for (
unsigned int i=1; i<=7; i++){
157 calibPt -= mu*nCells*slope;
162 if (bcidDistanceFromFront>=0 && bcidDistanceFromFront<115){
163 for (
unsigned int i=1; i<=7; i++){
168 calibPt -= mu*nCells*slope;
173 if ((bcidDistanceFromFront>=0 && bcidDistanceFromFront<10) || (bcidDistanceFromFront>=55 && bcidDistanceFromFront<65) || bcidDistanceFromFront==47 || bcidDistanceFromFront==102){
174 for (
unsigned int i=1; i<=4; i++){
175 float nCells =
m_bcid_nCells_HEC0->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
179 calibPt -= mu*nCells*slope;
184 if (bcidDistanceFromFront>=0 && bcidDistanceFromFront<115){
185 for (
unsigned int i=1; i<=4; i++){
186 float nCells =
m_bcid_nCells_HEC0->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
190 calibPt -= mu*nCells*slope;
195 if ((bcidDistanceFromFront>=0 && bcidDistanceFromFront<10) || (bcidDistanceFromFront>=55 && bcidDistanceFromFront<65) || bcidDistanceFromFront==47 || bcidDistanceFromFront==102){
196 for (
unsigned int i=1; i<=3; i++){
197 float nCells =
m_bcid_nCells_HEC1->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
201 calibPt -= mu*nCells*slope;
206 if (bcidDistanceFromFront>=0 && bcidDistanceFromFront<115){
207 for (
unsigned int i=1; i<=3; i++){
208 float nCells =
m_bcid_nCells_HEC1->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
212 calibPt -= mu*nCells*slope;
217 if ((bcidDistanceFromFront>=0 && bcidDistanceFromFront<12) || (bcidDistanceFromFront>=55 && bcidDistanceFromFront<67)){
218 for (
unsigned int i=1; i<=6; i++){
219 float nCells =
m_bcid_nCells_FCal0->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
222 calibPt -= mu*nCells*slope;
227 if (bcidDistanceFromFront>=0 && bcidDistanceFromFront<115){
228 for (
unsigned int i=1; i<=6; i++){
229 float nCells =
m_bcid_nCells_FCal0->GetBinContent(i,
static_cast<int>(abs(detEta)*10.0+1.0));
232 calibPt -= mu*nCells*slope;
237 calibP4*=calibPt/startPt;
241 jet.setJetP4( calibP4 );
243 return StatusCode::SUCCESS;