cms-L1TK / cmssw

Fork of CMSSW where improvements to L1 tracking code are developed.
http://cms-sw.github.io/
Apache License 2.0
4 stars 5 forks source link

Overlap Phi Bins for Duplicate Removal #206

Closed dally96 closed 1 year ago

dally96 commented 1 year ago

With this PR, phi bins would be added to duplicate removal to increase performance.

With this PR, the duplicate fraction is reduced to 0.466% and has efficiencies

efficiency for |eta| < 1.0 = 95.315 +- 0.188948
efficiency for 1.0 < |eta| < 1.75 = 95.0322 +- 0.263025
efficiency for 1.75 < |eta| < 2.4 = 94.9885 +- 0.369216
combined efficiency for |eta| < 2.4 = 95.1805 +- 0.141768 = 21724/22824

efficiency for pt > 2 = 95.1805 +- 0.141768
efficiency for 2 < pt < 8.0 = 95.3649 +- 0.160332
efficiency for pt > 8.0 = 94.6172 +- 0.300798
efficiency for pt > 40.0 = 91.7431 +- 1.31811

# TP/event (pt > 2) = 152.514
# TP/event (pt > 3.0) = 50.786
# TP/event (pt > 10.0) = 4.586
# tracks/event (no pt cut)= 179.731
# tracks/event (pt > 2) = 165.781
# tracks/event (pt > 3.0) = 57.551
# tracks/event (pt > 10.0) = 5.906

Before this PR, the duplicate fraction was 0.741%, and the efficiencies were

efficiency for |eta| < 1.0 = 95.1366 +- 0.194801
efficiency for 1.0 < |eta| < 1.75 = 95.5566 +- 0.256393
efficiency for 1.75 < |eta| < 2.4 = 95.0683 +- 0.361436
combined efficiency for |eta| < 2.4 = 95.2475 +- 0.142663 = 21184/22241

efficiency for pt > 2 = 95.2475 +- 0.142663
efficiency for 2 < pt < 8.0 = 95.4162 +- 0.161779
efficiency for pt > 8.0 = 94.7378 +- 0.30025
efficiency for pt > 40.0 = 93.2668 +- 1.25141

# TP/event (pt > 2) = 152.045
# TP/event (pt > 3.0) = 50.605
# TP/event (pt > 10.0) = 4.638
# tracks/event (no pt cut)= 180.974
# tracks/event (pt > 2) = 167.362
# tracks/event (pt > 3.0) = 58.763
# tracks/event (pt > 10.0) = 6.026
trholmes commented 1 year ago

The number one thing I'd like to see before approving this PR is a plot of efficiency vs. phi before and after the change, with enough detail to see small dips around bin edges if they exist.

dally96 commented 1 year ago

The number one thing I'd like to see before approving this PR is a plot of efficiency vs. phi before and after the change, with enough detail to see small dips around bin edges if they exist.

Like this? effVsPhi_D76_Sector_Cut.pdf

tomalin commented 1 year ago

Variable outputTracks_ in class PurgeDuplicate is not a class data member, so should not end in an underscore.

tomalin commented 1 year ago

"std::vector invented_coords" in PurgeDuplicate.cc is weird. Please specify the variable type (e.g. std::vector).