New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PF use raw ecal for PF hadron calibration #25703
PF use raw ecal for PF hadron calibration #25703
Conversation
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-25703/8086
|
A new Pull Request was created by @hatakeyamak (Kenichi Hatakeyama) for master. It involves the following packages: RecoParticleFlow/PFProducer @perrotta, @cmsbuild, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
I am not too familiar with checking outcomes of Jenkins tests... Can I assume that this will be reviewed when people become available (in other words, there is no pending requests to me.) ? Thank you. |
// end loop on hcal element iHcal= hcalIs[i] | ||
if ( fabs(eclusterref->energy() - sqrt(std::get<1>(ecalSatellite.second).Mag2()))>1e-3 || fabs(eclusterref->correctedEnergy() - ecalClusterEnergyCalibrated)>1e-3 ) | ||
edm::LogWarning("PFAlgo:processBlock") << "ecalCluster vs ecalSatellites look inconsistent (eCluster E, calibE, ecalSatellite E, calib E): " | ||
<< eclusterref->energy() << " " << eclusterref->correctedEnergy() << " " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are the implications on the ecalSatellites data (or what follows from them)?
If the data is usable, this warning better be replaced by a LogInfo or put behind if (debug_
.
If the data is completely unusable and/or if this simply is not supposed to happen (e.g. indicates a bug in the code), perhaps even an exception is a better solution.
@hatakeyamak please clarify
In my tests I did not see any instance of this happening out of about 7K events with 2018-like pileup.
So, at least from the point of view of frequency, this is OK to stay as a warning (as it does no harm so far).
@@ -2999,7 +3012,8 @@ void PFAlgo::processBlock( const reco::PFBlockRef& blockref, | |||
reco::PFClusterRef eclusterRef = elements[iEcal].clusterRef(); | |||
assert( !eclusterRef.isNull() ); | |||
|
|||
double ecalEnergy = eclusterRef->correctedEnergy(); | |||
// KH: use raw ECAL energy for PF hadron calibration. | |||
double ecalEnergy = eclusterRef->energy(); // ecalEnergy = eclusterRef->correctedEnergy(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is the commented part of the code needed?
IIUC, there is no single place to make a switch from raw to calibrated.
So, the commented out part here can't be useful as a quick check to switch to the calibrated value.
Please drop the commented out // ecalEnergy = eclusterRef->correctedEnergy();
or add some note why this is still useful here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK. I will clean up when I touch PFAlgo next time.
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
With this change, when the PF hadron calibration is called in PFAlgo, the raw ECAL energy will be used as inputs to pull the PF hadron calibration factor. Note that, when this calibration is derived, raw ECAL energy is used as inputs, and it allows the PF ECAL cluster calibration and PF hadron cluster calibration to be orthogonal.
The expected change (evaluated in a few MC samples):
[1] https://indico.cern.ch/event/786078/contributions/3274894/attachments/1778982/2893356/PF_hadron_calib_20190115.pdf
[2] https://indico.cern.ch/event/777968/contributions/3255724/attachments/1773152/2882370/juska_pf_20181812.pdf
[3] https://indico.cern.ch/event/786078/contributions/3274894/attachments/1778982/2893550/juska_pf_20190115.pdf
@zdemirag @VinInn @cbernet @jpata @seemasharmafnal