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

[HLT] add tau3mu trigger DQM #20026

Merged
merged 11 commits into from Sep 3, 2017
Merged

Conversation

rmanzoni
Copy link
Contributor

@rmanzoni rmanzoni commented Aug 2, 2017

Adds 4 1D histograms and 1 2D histogram for each of 4 new HLT paths (800 bins in total) to the HLT DQM workspace, under: HLT/BPH/Tau3Mu/

Monitors the relevant distributions of the 3-muon candidates:

  • pt
  • mass
  • eta
  • phi
  • eta vs phi

The example post-harvesting DQM file (run on signal MC) can be found here
/afs/cern.ch/work/m/manzoni/public/DQM_V0001_R000000001__Global__CMSSW_X_Y_Z__RECO_Tau3Mu.root

schermata 2017-08-02 alle 18 30 40

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 2, 2017

A new Pull Request was created by @rmanzoni (Riccardo Manzoni) for master.

It involves the following packages:

DQMOffline/Trigger

@kmaeshima, @cmsbuild, @vanbesien, @vazzolini, @dmitrijus can you please review it and eventually sign? Thanks.
@battibass, @mtosi, @jhgoh, @calderona, @HuguesBrun, @trocino, @rociovilar this is something you requested to watch as well.
@davidlange6 you are the release manager for this.

cms-bot commands are listed here

@mtosi mtosi mentioned this pull request Aug 2, 2017
@mtosi
Copy link
Contributor

mtosi commented Aug 2, 2017

tracked by #19142

MEbinning phi_binning_ ; // for the 1D tau phi histogram and 2D tau eta vs phi histogram
MEbinning mass_binning_; // for the 1D tau mass histogram

GenericTriggerEventFlag* genTriggerEventFlag_; // "is trigger fired?" flag
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unique_ptr, please

then, shouldn't you have a GenericTriggerEventFlag for the numerator and an other one for the denominator ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unique: ok.
I'm not doing efficiencies, only 'occupancies', so no den & num

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, but you are not doing efficiency plot !!!!

@mtosi
Copy link
Contributor

mtosi commented Aug 2, 2017

do you think is possible to exploit the general DQM file recentely developed ?
https://github.com/rmanzoni/cmssw/blob/a91726f91f5220a49d6aa94ddac87f6028342e94/DQMOffline/Trigger/plugins/TriggerDQMBase.h


// tau 3 mu 1D pt
histname = "tau1DPt";
tau1DPt_ = ibooker.book1D(histname, "", pt_binning_.nbins, pt_binning_.xmin, pt_binning_.xmax);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would not be better to have a variable binning ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to make it readable it would require to divide the entries in each bin by the bin width.
It's probably possible but it's added complication

@rmanzoni
Copy link
Contributor Author

rmanzoni commented Aug 2, 2017

I followed the MET example, which inherits from DQMEDAnalyzer.
What's the trade between TriggerDQMBase and DQMEDAnalyzer?

nbins = cms.uint32( 40 ),
xmin = cms.double( 0.5),
xmax = cms.double( 3. ),
)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what a strange binning width ....is it intended ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, I "expect" a peak at 1.78 GeV and cut narrow around it


hltTau3Mumonitoring.taus = cms.InputTag("hltTauPt10MuPts511Mass1p2to2p3Iso", "Taus") # 3-muon candidates

hltTau3Mumonitoring.GenericTriggerEventPSet.andOr = cms.bool( False ) # https://github.com/cms-sw/cmssw/blob/76d343005c33105be1e01b7b7278c07d753398db/CommonTools/TriggerUtils/src/GenericTriggerEventFlag.cc#L249
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would suggest you to add the selection based on DCS flag
just to not have events where the tracker has HVOFF, for instance (at tier0 no json file is used)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

andOr set to False should ensure that all the four conditions listed here must be satisfied

return ( acceptDcs( event ) && acceptGt( event ) && acceptL1( event, setup ) && acceptHlt( event ) );

so I guess the DCS condition comes as a consequence, correct?


HLT_Tau3Mu_Mu5_Mu1_TkMu1_Tau10_Monitoring = hltTau3Mumonitoring.clone()
HLT_Tau3Mu_Mu5_Mu1_TkMu1_Tau10_Monitoring.FolderName = cms.string('HLT/BPH/Tau3Mu/Mu5_Mu1_TkMu1_Tau10')
HLT_Tau3Mu_Mu5_Mu1_TkMu1_Tau10_Monitoring.taus = cms.InputTag('hltTauPt10MuPts511Mass1p2to2p3Iso', 'Taus') # 3-muon candidates
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

uhmm, so are you going to have this module run on HLTMonitor PD ?
otherwise I doubt you will have the needed collection as input ....
if so, I think you need to update your JIRA ticket and request to add this collection to the output for the HLTMonitor PD and the other output used by relval, for instance

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right. Good point


// get ahold of the tau(3mu) collection
edm::Handle<reco::CompositeCandidateCollection> tauHandle;
iEvent.getByToken( tauToken_, tauHandle );
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you please add a check of validity / availability of the Handle ?
because if it is not available, the code will simply crash ... and indeed I'm expecting the integration test to crash because of this .....
did you try
runTheMatrix -l limited
?

Copy link
Contributor Author

@rmanzoni rmanzoni Aug 2, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, isValid is always good to check

@mtosi
Copy link
Contributor

mtosi commented Aug 2, 2017 via email

@mtosi
Copy link
Contributor

mtosi commented Aug 2, 2017 via email

@mtosi
Copy link
Contributor

mtosi commented Aug 2, 2017 via email

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 3, 2017

Pull request #20026 was updated. @kmaeshima, @cmsbuild, @vanbesien, @vazzolini, @dmitrijus can you please check and sign again.

@rmanzoni
Copy link
Contributor Author

rmanzoni commented Aug 3, 2017

@mtosi I've updated the code following your suggestions.

Let me answer the other questions:

  • I don't understand the point with TriggerDQMBase: my module does not inherit from METMonitor, but from DQMEDAnalyzer, which should be the base class. In case I can move to TriggerDQMBase, just to understand
  • 60 MeV resolution should be fine, if not too coarse (see the offline attached plot)
    schermata 2017-08-03 alle 12 17 50

@mtosi
Copy link
Contributor

mtosi commented Aug 3, 2017

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 3, 2017

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/22041/console Started: 2017/08/03 12:34

@cmsbuild
Copy link
Contributor

Pull request #20026 was updated. @kmaeshima, @cmsbuild, @vanbesien, @vazzolini, @dmitrijus can you please check and sign again.

@cmsbuild
Copy link
Contributor

The code-checks are being triggered in jenkins.

@cmsbuild
Copy link
Contributor

Pull request #20026 was updated. @kmaeshima, @cmsbuild, @vanbesien, @vazzolini, @dmitrijus can you please check and sign again.

@cmsbuild
Copy link
Contributor

+code-checks

Logs: https://cmssdt.cern.ch/SDT/code-checks/PR-20026/338

@mtosi
Copy link
Contributor

mtosi commented Aug 28, 2017 via email

@rmanzoni
Copy link
Contributor Author

if there's no further comments, I'm fine with the current status, you can trigger the tests

@mtosi
Copy link
Contributor

mtosi commented Aug 28, 2017

@cmsbuild, please test

@cmsbuild
Copy link
Contributor

cmsbuild commented Aug 28, 2017

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/22519/console Started: 2017/08/28 12:58

@cmsbuild
Copy link
Contributor

@cmsbuild
Copy link
Contributor

Comparison job queued.

@cmsbuild
Copy link
Contributor

Comparison is ready
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-20026/22519/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: 2653934
  • DQMHistoTests: Total failures: 193
  • DQMHistoTests: Total nulls: 0
  • DQMHistoTests: Total successes: 2653552
  • DQMHistoTests: Total skipped: 189
  • DQMHistoTests: Total Missing objects: 0
  • Checked 107 log files, 14 edm output root files, 26 DQM output files

@dmitrijus
Copy link
Contributor

+1

@cmsbuild
Copy link
Contributor

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)

@davidlange6
Copy link
Contributor

+1

@cmsbuild cmsbuild merged commit 67b29c7 into cms-sw:master Sep 3, 2017
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

7 participants