cmssw: FactorizedJetCorrector returns incorrect JEC
Hi,
I have noticed that the FactorizedJetCorrector is not returning the correct JEC factors since CMSSW_7_6_0. I have tested the code in CMSSW version 741, 750, 758_patch1, 760, 763, and 801. In the first three, the code returns the exact value we would expect, but in the last three releases the code returns some other number.
As far as I can tell the FactorizedJetCorrector relies on FactorizedJetCorrectorCalculator, which in turn uses the SimpleJetCorrector. This was updated by [1] and I think it was first integrated into CMSSW_7_6_0_pre7. The purpose was to move from TFormula to reco::FormulaEvaluator ([2]) in an effort to make the code thread safe.
To test the code I used the L2Relative JEC text file Spring16_25nsV1_MC_L2Relative_AK4PFl1.txt located at [3] and compared the value returned by the FactorizedJetCorrector for a jet of 10 GeV and eta 3.4. The value should be 1.25124, but was not after 76X. Instead 801 returned 5.72194. The ROOT file containing the original functions and their parameters (l2.root) can also be found at [3]. The exact sequence of commands I used can be found in [4].
If what I’m seeing is correct then this effects everyone who is correcting jets on-the-fly. Hopefully someone knows why this is happening and how to fix it.
Cheers, Alexx Perloff
[1] https://github.com/cms-sw/cmssw/commit/83aa62173a5849fad32fd05ee9f0d7c773a27ca2
[2] https://github.com/cms-sw/cmssw/blob/CMSSW_7_6_X/CommonTools/Utils/interface/FormulaEvaluator.h
[3] http://people.physics.tamu.edu/aperloff/CMS_JEC/forGitHubIssue/
[4]
root
JetCorrectorParameters * jcPar = new JetCorrectorParameters("Spring16_25nsV1_MC_L2Relative_AK4PFl1.txt")
vector<JetCorrectorParameters> vPar
vPar.push_back(*jcPar)
FactorizedJetCorrector* jcor = new FactorizedJetCorrector(vPar)
jcor->setJetPt(10)
jcor->setJetEta(3.4)
cout << jcor->getCorrection() << endl
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Comments: 15 (15 by maintainers)
On 4/1/16 1:59 PM, Sébastien Brochet wrote:
OK, that’s clear. Disaster averted 😉