-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Split HGCal layer cluster producer #41589
Split HGCal layer cluster producer #41589
Conversation
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-41589/35468
|
A new Pull Request was created by @OlivieFranklova for master. It involves the following packages:
@alja, @civanch, @Dr15Jones, @missirol, @makortel, @micsucmed, @emanueleusai, @Martin-Grunewald, @mdhildreth, @cmsbuild, @AdrianoDee, @srimanob, @clacaputo, @syuvivida, @pmandrik, @mandrenguyen, @rvenditti can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
Hi, if we can re-HLT on 13_1 samples w/o backporting this PR, that should be fine. |
HLTrigger/Configuration/python/HLT_75e33/modules/hgcalLayerClustersEEL1Seeded_cfi.py
Show resolved
Hide resolved
+1 |
+reconstruction |
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. @perrotta, @dpiparo, @rappoccio (and backports should be raised in the release meeting by the corresponding L2) |
@cmsbuild please test |
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-dca5ff/32919/summary.html Comparison SummarySummary:
|
+1 |
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.
A few comments that you can take into account for a possible cleanup of the code
float delta; | ||
|
||
if constexpr (std::is_same_v<STRATEGY, HGCalSiliconStrategy>) | ||
delta = delta_c; |
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.
delta_c
could be more conveniently computed locally within the scope of the if
if constexpr (std::is_same_v<STRATEGY, HGCalSiliconStrategy>) | ||
delta = delta_c; | ||
else | ||
delta = delta_r; |
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.
delta_r
could be more conveniently computed locally within the scope of the if
#include "DataFormats/Common/interface/OrphanHandle.h" | ||
|
||
#include "FWCore/Framework/interface/Event.h" | ||
#include "FWCore/Framework/interface/ESHandle.h" |
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.
#include "FWCore/Framework/interface/ESHandle.h" |
This does not seem to be needed (maybe there are a few more include that could be also removed)
timeOffset = hgceeDigitizer.tofDelay, | ||
hgcalLayerClustersEE = hgcalLayerClusters_.clone( | ||
detector = 'EE', | ||
recHits = cms.InputTag("HGCalRecHit", "HGCEERecHits"), |
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.
recHits = cms.InputTag("HGCalRecHit", "HGCEERecHits"), | |
recHits = "HGCalRecHit:HGCEERecHits", |
|
||
hgcalLayerClustersHSi = hgcalLayerClusters_.clone( | ||
detector = 'FH', | ||
recHits = cms.InputTag("HGCalRecHit", "HGCHEFRecHits"), |
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.
recHits = cms.InputTag("HGCalRecHit", "HGCHEFRecHits"), | |
recHits = "HGCalRecHit:HGCHEFRecHits", |
... and the same for all other ones
@@ -21,13 +23,52 @@ | |||
fcPerEle = fC_per_ele, | |||
#Extending noises as fcPerMip, see comment above. | |||
noises = HGCAL_noises.values.value() + HGCAL_noises.values.value(), | |||
noiseMip = hgchebackDigitizer.digiCfg.noise.value() | |||
noiseMip = hgchebackDigitizer.digiCfg.noise.value(), | |||
type = cms.string('SiCLUE') |
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.
type = cms.string('SiCLUE') | |
type = "SiCLUE" |
#Extending noises as fcPerMip, see comment above. | ||
noises = HGCAL_noises.values.value() + HGCAL_noises.values.value(), | ||
noiseMip = hgchebackDigitizer.digiCfg.noise.value(), | ||
type = cms.string('SiCLUE') |
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.
type = cms.string('SiCLUE') | |
type = "SiCLUE" |
|
||
hgcalLayerClustersHSci = hgcalLayerClusters_.clone( | ||
detector = 'BH', | ||
recHits = cms.InputTag("HGCalRecHit", "HGCHEBRecHits"), |
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.
recHits = cms.InputTag("HGCalRecHit", "HGCHEBRecHits"), | |
recHits = "HGCalRecHit:HGCHEBRecHits", |
and so on so forth
PR description:
Clustering
HGCalClusteringAlgoBase
edm::ConsumesCollector iC
from constructor because it was used only for setting geometry. This was removed also from all derived classes.HGCalCLUEAlgo
populate
makeClusters
getClusters
math::XYZPoint(0.f, 0.f, 0.f);
.calculateLocalDensity
calculateDistanceToHigher
bindId
to use based on the strategy.Layer Cluster Algo Factory
Layer Tiles
Changes in constants
HGCalLayerTiles.h
Layer Cluster Producer
HGCalLayerClusterProducer
HGCHFNoseRecHits
collection, SiCLUE forHGCEERecHits
andHGCHEFRecHits
, SciCLUE forHGCHEBRecHits
.Produce
algo
s getEventSetup, populate, makeClusters, getClusters.calculatePosition
hitsAndFraction
from clusters. For counting position is used Geometry (to get specific position) which could cause slowlynes, this will be remove in the future.MergeClusterProducer
Change in configuration files
Change in hgcalLayerClusters_cff.py
Filtering
hfnose
to a vector ofhgcal_had
andhgcal_em
. The change is made in RecoHGCal/.../FilteredLayerClusterProducer.cc.algo_number
to 8 -hgcal_mixed
(now to 7 and 6 -hgcal_had
,hgcal_em
) in configuration files for filtering.hgcal_mixed
from CaloCluster.h.PR validation:
Pull request was tased by
scram b runtests
andrunTheMatrix.py -l limited -i all --ibeos
. Test EtaPhiSearchInTile_t.cpp was changed according to changes in HGCalLayerTiles. We also used a couple of other workflows to test whether the clusters remained unchanged (23224, 25234, 25294,23834)