-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
Make Cosmic superpointer module able to select muons also based on number of interactions with tracker or muon chambers #26511
Conversation
The code-checks are being triggered in jenkins. |
Introducing new features in cosmicSP for cosmic muons certification. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26511/9374
|
A new Pull Request was created by @NTrevisani for master. It involves the following packages: DPGAnalysis/Skims @Martin-Grunewald, @prebello, @cmsbuild, @zhenhu, @pgunnell, @fwyzard can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@@ -39,6 +39,9 @@ HLTMuonPointingFilter::HLTMuonPointingFilter(const edm::ParameterSet& pset) : | |||
thePropagatorName(pset.getParameter<std::string>("PropagatorName") ), | |||
theRadius( pset.getParameter<double>("radius") ), // cyl's radius (cm) | |||
theMaxZ( pset.getParameter<double>("maxZ") ), // cyl's half lenght (cm) | |||
thenPixHits( pset.getParameter<int>("nPixHits") ), // pixel hits | |||
theTkLayers( pset.getParameter<int>("TkLayers") ), // tracker layers with measurements | |||
thenMuonHits( pset.getParameter<int>("nMuonHits") ), // tracker layers with measurements |
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.
the comment looks wrong ?
@@ -104,8 +116,17 @@ bool HLTMuonPointingFilter::filter(edm::Event& event, const edm::EventSetup& eve | |||
if ( tsosAtCyl.isValid() ) { | |||
LogDebug("HLTMuonPointing") << " extrap TSOS " << tsosAtCyl; |
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.
I think it would make more sense to move all LogDebug
s here, rather than inside the if
s
@@ -39,6 +39,9 @@ HLTMuonPointingFilter::HLTMuonPointingFilter(const edm::ParameterSet& pset) : | |||
thePropagatorName(pset.getParameter<std::string>("PropagatorName") ), | |||
theRadius( pset.getParameter<double>("radius") ), // cyl's radius (cm) | |||
theMaxZ( pset.getParameter<double>("maxZ") ), // cyl's half lenght (cm) | |||
thenPixHits( pset.getParameter<int>("nPixHits") ), // pixel hits |
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.
Can you make the new parameters unsigned
?
I assume it makes no sense to ask for > -1
hits, since 0
means no requirements, right ?
@@ -117,8 +138,17 @@ bool HLTMuonPointingFilter::filter(edm::Event& event, const edm::EventSetup& eve | |||
|
|||
if (tsosAtPlane.isValid()){ | |||
if (tsosAtPlane.globalPosition().perp()< theRadius){ |
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.
as above, can you move here all LogDebug
s ?
@@ -140,6 +170,9 @@ void HLTMuonPointingFilter::fillDescriptions(edm::ConfigurationDescriptions & de | |||
desc.add<std::string>("PropagatorName", "SteppingHelixPropagatorAny"); | |||
desc.add<double>("radius", 90.0); | |||
desc.add<double>("maxZ", 280.0); | |||
desc.add<int>("nPixHits", 0); |
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.
as above, could you make these unsigned
?
@@ -49,6 +49,9 @@ class HLTMuonPointingFilter : public edm::EDFilter { | |||
const std::string thePropagatorName; // name of propagator to be used | |||
const double theRadius; // radius of cylinder | |||
const double theMaxZ; // half length of cylinder | |||
const int thenPixHits; // number of pixel hits |
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.
as in the .cc file, could you make these unsigned ?
Can you give a more descriptive name to the pull request ? |
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26511/9383
|
OK, but still... what is a "Cosmic SP" ? |
I guess it's a super-pointing (SP) skim/selection for cosmics (a muon crosses pixels; although historically exact defs varied) |
@@ -39,6 +39,9 @@ HLTMuonPointingFilter::HLTMuonPointingFilter(const edm::ParameterSet& pset) : | |||
thePropagatorName(pset.getParameter<std::string>("PropagatorName") ), | |||
theRadius( pset.getParameter<double>("radius") ), // cyl's radius (cm) | |||
theMaxZ( pset.getParameter<double>("maxZ") ), // cyl's half lenght (cm) | |||
thenPixHits( pset.getParameter<unsigned int>("nPixHits") ), // pixel hits | |||
theTkLayers( pset.getParameter<unsigned int>("TkLayers") ), // tracker layers with measurements | |||
thenMuonHits( pset.getParameter<unsigned int>("nMuonHits") ), // muon hits | |||
thePropagator(nullptr), |
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.
The new variables are all integer numbers, counting something.
Why are two of them called nSomething, while the third is no 'n'?
I also find name thenMuonHits confusing, why 'then' :)?
I suggest theNmuonHits, or theMuonHits, but at least make it consistent between the variables.
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-26511/9390
|
Hi, it looks like the last automatic tests were not successful due to an eos issue, which made the rootfiles impossible to be read. Cheers, |
please test |
The tests are being triggered in jenkins. |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 |
+1 |
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, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
Introducing the possibility of selecting based on number of valid pixel hits, number of tracker layers with interactions, and number of valid muon hits. The old version only required the muon to pass through a cylinder of variable size centered at the center of CMS.
PR validation:
Comparing the output of the skim with the old one and checking that new selections work.
if this PR is a backport please specify the original PR:
Before submitting your pull requests, make sure you followed this checklist: