Skip to content
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

Fix QuickTrackAssociatorByHits for composite hits #20364

Merged
merged 5 commits into from Sep 5, 2017

Conversation

makortel
Copy link
Contributor

@makortel makortel commented Sep 4, 2017

This PR fixes a long-standing bug in QuickTrackAssociatorByHits regarding composite hits (=hits having >= 2 clusters). Currently the "matched hit fraction" is in fact calculated as

N(clusters of track matched to a TrackingParticle)
--------------------------------------------------
                N(hits of track)

so hits with 2 cluster are ounted as 2 in the numerator and 1 in denominator. The bug does not affect the offline track monitoring as in offline the strip matched hits are split in the final fit. The affected cases are

  • HLT track monitoring (strip matched hits are not split)
  • Strip seed monitoring (strip matched hits are not split)
  • VectorHits when they get integrated (in fact this was the context that revealed the bug)

The fix is to change the denominator to N(clusters of track) so one could say that the association is now actually done "by clusters". Note that this is done only for ClusterTPAssociation mode, the TrackerHitAssociator mode is kept in counting hits.

Here are MTV plots for phase1
https://cms-tracking-validation.web.cern.ch/cms-tracking-validation/PR/CMSSW_9_3_0_pre3_PR20364/
showing no effect for tracks
https://cms-tracking-validation.web.cern.ch/cms-tracking-validation/PR/CMSSW_9_3_0_pre3_PR20364/phase1_ttbar_pu35_summary/summary.pdf
and decrease in efficiency of seeds with strip hits
https://cms-tracking-validation.web.cern.ch/cms-tracking-validation/PR/CMSSW_9_3_0_pre3_PR20364/phase1_ttbar_pu35_seeding_summary_seeds/summary.pdf

Plots for HLT (thanks to @JanFSchulte) can be found from
https://cms-tracking-validation.web.cern.ch/cms-tracking-validation/PR/CMSSW_9_3_0_pre3_PR20364_HLT/
showing decrease in efficiency (especially in |eta| > 1) and increase in fake rates.

Tested in 9_3_0_pre3, expecting no changes in offline track plots, and decrease in efficiency and increase in fake rates for HLT track plots.

@rovere @VinInn @ebrondol @JanFSchulte @mtosi @slava77 @perrotta

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

A new Pull Request was created by @makortel (Matti Kortelainen) for master.

It involves the following packages:

SimTracker/TrackAssociatorProducers

@cmsbuild, @civanch, @mdhildreth can you please review it and eventually sign? Thanks.
@sdevissc, @GiacomoSguazzoni, @rovere, @VinInn, @ebrondol, @threus, @dgulhan this is something you requested to watch as well.
@davidlange6, @slava77 you are the release manager for this.

cms-bot commands are listed here

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

-code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/PR-20364/478

Code check has found code style and quality issues which could be resolved by applying a patch in https://cmssdt.cern.ch/SDT/code-checks/PR-20364/478/git-diff.patch
e.g. curl https://cmssdt.cern.ch/SDT/code-checks/PR-20364/478/git-diff.patch | patch -p1

You can run scram build code-checks to apply code checks directly (this will soon be required for PRs to be considered)

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

Pull request #20364 was updated. @cmsbuild, @civanch, @mdhildreth can you please check and sign again.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/PR-20364/479

@makortel
Copy link
Contributor Author

makortel commented Sep 4, 2017

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/22688/console Started: 2017/09/04 11:55

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

-1

Tested at: d3e1f4a

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:
0770659
You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22688/git-log-recent-commits
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22688/git-merge-result

You can see the results of the tests here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22688/summary.html

I found follow errors while testing this PR

Failed tests: RelVals AddOn

  • RelVals:

When I ran the RelVals I found an error in the following worklfows:
5.1 step1

runTheMatrix-results/5.1_TTbar+TTbarFS+HARVESTFS/step1_TTbar+TTbarFS+HARVESTFS.log

135.4 step1
runTheMatrix-results/135.4_ZEE_13+ZEEFS_13+HARVESTUP15FS+MINIAODMCUP15FS/step1_ZEE_13+ZEEFS_13+HARVESTUP15FS+MINIAODMCUP15FS.log

  • AddOn:

I found errors in the following addon tests:

cmsDriver.py TTbar_13TeV_TuneCUETP8M1_cfi --conditions auto:run2_mc --fast -n 100 --eventcontent AODSIM,DQM --relval 100000,1000 -s GEN,SIM,RECOBEFMIX,DIGI:pdigi_valid,L1,DIGI2RAW,L1Reco,RECO,EI,VALIDATION --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --datatier GEN-SIM-DIGI-RECO,DQMIO --beamspot NominalCollision2015 --era Run2_25ns : FAILED - time: date Mon Sep 4 12:32:50 2017-date Mon Sep 4 12:29:10 2017 s - exit: 35584
cmsDriver.py TTbar_13TeV_TuneCUETP8M1_cfi --conditions auto:run2_mc --fast -n 100 --eventcontent AODSIM,DQM --relval 100000,1000 -s GEN,SIM,RECOBEFMIX,DIGI:pdigi_valid,L1,DIGI2RAW,L1Reco,RECO,EI,VALIDATION --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --datatier GEN-SIM-DIGI-RECO,DQMIO --beamspot NominalCollision2015 --era Run2_2016 : FAILED - time: date Mon Sep 4 12:33:36 2017-date Mon Sep 4 12:29:11 2017 s - exit: 35584
cmsDriver.py TTbar_8TeV_TuneCUETP8M1_cfi --conditions auto:run1_mc --fast -n 100 --eventcontent AODSIM,DQM --relval 100000,1000 -s GEN,SIM,RECOBEFMIX,DIGI:pdigi_valid,L1,DIGI2RAW,L1Reco,RECO,EI,VALIDATION --customise=HLTrigger/Configuration/CustomConfigs.L1THLT --datatier GEN-SIM-DIGI-RECO,DQMIO --beamspot Realistic8TeVCollision : FAILED - time: date Mon Sep 4 12:33:36 2017-date Mon Sep 4 12:29:29 2017 s - exit: 35584

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:
0770659
You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22688/git-log-recent-commits
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22688/git-merge-result

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

Comparison not run due to runTheMatrix errors (RelVals and Igprof tests were also skipped)

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

Pull request #20364 was updated. @cmsbuild, @civanch, @mdhildreth can you please check and sign again.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/PR-20364/489

@makortel
Copy link
Contributor Author

makortel commented Sep 4, 2017

@cmsbuild, please test

Fixed FastSim by keeping TrackerHitAssociator-mode counting hits. I start to feel, however, that a more proper way would be to separate the counting-by-clusters with ClusterTPAssociation to a separate module (e.g. "QuickTrackAssociatorByClusters"), but for such refactoring I prefer a separate PR.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/22695/console Started: 2017/09/04 16:57

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

Comparison job queued.

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20364/22695/summary.html

Comparison Summary:

  • No significant changes to the logs found
  • Reco comparison results: 0 differences found in the comparisons
  • DQMHistoTests: Total files compared: 26
  • DQMHistoTests: Total histograms compared: 2656522
  • DQMHistoTests: Total failures: 2688
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2653645
  • DQMHistoTests: Total skipped: 189
  • DQMHistoTests: Total Missing objects: 0
  • Checked 107 log files, 14 edm output root files, 26 DQM output files

@civanch
Copy link
Contributor

civanch commented Sep 4, 2017

+1

@cmsbuild
Copy link
Contributor

cmsbuild commented Sep 4, 2017

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 (and backports should be raised in the release meeting by the corresponding L2)

@makortel
Copy link
Contributor Author

makortel commented Sep 5, 2017

I wonder why there are changes in PixelPhase1V/TrackingParticle? I took a look on the code Validation/SiPixelPhase1TrackingParticleV/src/SiPixelPhase1TrackingParticleV.cc but didn't spot any obvious reason as nothing seems to depend on the track<->TrackingParticle association. @fioriNTU any ideas?

@davidlange6
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 4998ca6 into cms-sw:master Sep 5, 2017
@makortel makortel deleted the ebrondol_tracking_fixQualityClus branch February 12, 2018 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants