possibility of configuring the OMTF emulator directly from XMLs
PR description:
This PR adds the possibility of configuring the OMTF emulator directly from the config XML, without using the L1TMuonOverlapPhase1ParamsESProducer. It should allow to avoid problems with the OMTF emulator that appeared in the https://github.com/cms-sw/cmssw/pull/44498 - as discussed in the https://github.com/cms-sw/cmssw/pull/44498#issuecomment-2126564586.
PR validation:
The PR was validated with the workflow 141.044 (runTheMatrix.py -l 141.044 -i all --ibeos). The OMTF plots look good.
This PR is not a backport.
Details of changes:
OMTFReconstruction.h and OMTFReconstruction.cc The possibility of configuring the OMTF emulator directly from the config XML is added. When both patternsXMLFile and configXMLFile are given from the python config of the simOmtfDigis or simOmtfPhase2Digis, the L1TMuonOverlapParams are read directly from these files, and the L1TMuonOverlapPhase1ParamsESProducer is not needed. Otherwise, the L1TMuonOverlapParams are obtained from the eventSetup (so from the DB, or from the L1TMuonOverlapPhase1ParamsESProducer - if it is defined).
L1Trigger/L1TMuonOverlapPhase2/python/fakeOmtfParamsPhase2_cff.py is removed, as when it is used, the L1TMuonOverlapPhase1 gets this config as well.
L1Trigger/L1TMuonOverlapPhase2/python/simOmtfPhase2Digis_extrapol_cfi.py is moved to simOmtfPhase2Digis_cfi.py, as this is the default configuration (besides, there should be only one cfi for a given module).
L1Trigger/L1TMuonOverlapPhase1/src/Omtf/OMTFProcessor.cc line trackAddr[3] = myCand->getGpResultUnconstr().getPdfSumUnconstr(); is removed, as uGMT expects 3 entries in the TrackAddress (when there were 4, uGMT was generating a warning).
L1Trigger/L1TMuonOverlapPhase2/test - runMuonOverlap*.py are corrected
cms-bot internal usage
+code-checks
Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-45032/40324
-
This PR adds an extra 40KB to repository
-
There are other open Pull requests which might conflict with changes you have proposed:
- File L1Trigger/L1TMuonOverlapPhase1/src/Omtf/OMTFProcessor.cc modified in PR(s): #45030
A new Pull Request was created by @kbunkow for master.
It involves the following packages:
- L1Trigger/L1TMuonOverlapPhase1 (l1)
- L1Trigger/L1TMuonOverlapPhase2 (upgrade, l1)
@aloeliger, @epalencia, @srimanob, @subirsarkar, @cmsbuild can you please review it and eventually sign? Thanks. @JanFSchulte, @thomreis, @Martin-Grunewald, @dinyar, @eyigitba, @missirol this is something you requested to watch as well. @rappoccio, @sextonkennedy, @antoniovilela you are the release manager for this.
cms-bot commands are listed here
Please test
+1
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6a0d5a/39512/summary.html
COMMIT: 948fd546f27c1de7a31d2acc101fec20b9a89774
CMSSW: CMSSW_14_1_X_2024-05-24-1100/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/cmssw/45032/39512/install.sh to create a dev area with all the needed externals and cmssw changes.
Comparison Summary
Summary:
- You potentially removed 59 lines from the logs
- Reco comparison results: 6 differences found in the comparisons
- DQMHistoTests: Total files compared: 48
- DQMHistoTests: Total histograms compared: 3338862
- DQMHistoTests: Total failures: 60
- DQMHistoTests: Total nulls: 0
- DQMHistoTests: Total successes: 3338782
- DQMHistoTests: Total skipped: 20
- DQMHistoTests: Total Missing objects: 0
- DQMHistoSizes: Histogram memory added: 0.0 KiB( 47 files compared)
- Checked 202 log files, 165 edm output root files, 48 DQM output files
- TriggerResults: no differences found
Interestingly, this PR now also shows some differences in the Run3 OMTFoutput_vs_uGMTinput DQM, even though when tested alone this PR does not add the new Phase-2 OMTF into the L1 sequence yet.
https://cmssdt.cern.ch/SDT/jenkins-artifacts/baseLineComparisons/CMSSW_14_1_X_2024-05-24-1100+6a0d5a/62881/141.046_RunEGamma2023D/L1T_L1TStage2uGMT_OMTFoutput_vs_uGMTinput.html
Is this expected? @kbunkow @mbluj
Interestingly, this PR now also shows some differences in the Run3
OMTFoutput_vs_uGMTinputDQM, even though when tested alone this PR does not add the new Phase-2 OMTF into the L1 sequence yet.https://cmssdt.cern.ch/SDT/jenkins-artifacts/baseLineComparisons/CMSSW_14_1_X_2024-05-24-1100+6a0d5a/62881/141.046_RunEGamma2023D/L1T_L1TStage2uGMT_OMTFoutput_vs_uGMTinput.html
Is this expected? @kbunkow @mbluj
The difference in the L1T_L1TStage2uGMT_OMTFoutput_vs_uGMTinput plots is due to a change in the
L1Trigger/L1TMuonOverlapPhase1/src/Omtf/OMTFProcessor.cc, i.e. removed line
trackAddr[3] = myCand->getGpResultUnconstr().getPdfSumUnconstr();
This line was added by #43687, but it turned out it is not needed, and moreover, uGMT was generating this warning message when the fourth trackAddr was added:
OMTF muon track address map contains 4 instead of the expected 3 subaddresses. Check the data format. Setting track address to 0
The track address map is checked only by the plots L1T_L1TStage2uGMT_OMTFoutput_vs_uGMTinput , therefore the differences are visible only in these plots.
So the fix in this PR in the OMTFProcessor.cc is OK, as well as the changes in the L1T_L1TStage2uGMT_OMTFoutput_vs_uGMTinput plots.
Karol
+code-checks
Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-45032/40399
- This PR adds an extra 40KB to repository
Pull request #45032 was updated. @epalencia, @subirsarkar, @aloeliger, @srimanob, @cmsbuild can you please check and sign again.
please test
+1
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6a0d5a/39600/summary.html
COMMIT: 83e721be52f07d95df844588a5c111d17a692cd4
CMSSW: CMSSW_14_1_X_2024-05-28-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/45032/39600/install.sh to create a dev area with all the needed externals and cmssw changes.
Comparison Summary
Summary:
- You potentially removed 1 lines from the logs
- Reco comparison results: 4 differences found in the comparisons
- DQMHistoTests: Total files compared: 48
- DQMHistoTests: Total histograms compared: 3338862
- DQMHistoTests: Total failures: 0
- DQMHistoTests: Total nulls: 0
- DQMHistoTests: Total successes: 3338842
- DQMHistoTests: Total skipped: 20
- DQMHistoTests: Total Missing objects: 0
- DQMHistoSizes: Histogram memory added: 0.0 KiB( 47 files compared)
- Checked 202 log files, 165 edm output root files, 48 DQM output files
- TriggerResults: no differences found
+l1
Note to @cms-sw/l1-l2 for later fix PR
src/L1Trigger/L1TMuonOverlapPhase1/src/Tools/CandidateSimMuonMatcher.cc:444:12: warning: Value stored to 'treshold' during its initialization is never read [deadcode.DeadStores] 444 | double treshold = 6. * sigma; | ^~~~~~~~ ~~~~~~~~~~ src/L1Trigger/L1TMuonOverlapPhase1/src/Tools/CandidateSimMuonMatcher.cc:446:7: warning: Value stored to 'treshold' is never read [deadcode.DeadStores] 446 | treshold = 7. * sigma; | ^ ~~~~~~~~~~ src/L1Trigger/L1TMuonOverlapPhase1/src/Tools/CandidateSimMuonMatcher.cc:448:7: warning: Value stored to 'treshold' is never read [deadcode.DeadStores] 448 | treshold = 20. * sigma; | ^ ~~~~~~~~~~~ 3 warnings generated.
+Upgrade
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. @sextonkennedy, @antoniovilela, @rappoccio (and backports should be raised in the release meeting by the corresponding L2)
+1
ping bot