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

Check all EDAnalyzers in the 2015MiniAOD branch #64

Open
13 tasks
caredg opened this issue May 5, 2022 · 4 comments
Open
13 tasks

Check all EDAnalyzers in the 2015MiniAOD branch #64

caredg opened this issue May 5, 2022 · 4 comments
Labels
2015MiniAOD Branch 2015MiniAOD

Comments

@caredg
Copy link
Member

caredg commented May 5, 2022

In the spirit of #56, check the EDAnalyzers that were initially implemented in the 2015MiniAOD branch to verify that:

  • they are Aligning with the documentation found in the WorkBookMiniAOD2015; in partular, with the implementation suggested by these explicit examples
  • they run on real collisions data and MC samples
  • the output gives leafs that are filled properly and gives a reasonable output

The EDAnalyzers that need to be checked are:

  • ElectronAnalyzer
  • MuonAnalyzer
  • GenParticleAnalyzer
  • JetAnalyzer
  • MetAnalyzer
  • MuonAnalyzer.cc
  • PhotonAnalyzer
  • TauAnalyzer
  • TriggObjectAnalyzer
  • VertexAnalyzer

It is very important that, as one checks this information, the corresponding documentation is input in the CMS Open Data Guide, following the work already started, and almost finished, for Run 1 objects.

Also, these two analyzers should be created if possible:

  • EventAnalyzer
  • TriggerAnalyzer
  • TrackAnalyzer

The master branch of the TriggerInfoTool could be used to create the TriggerAnalyzer.

NOTE: Please create a separate issue for each EDAnalyzer test and, if possible, assign it to yourself

@katilp
Copy link
Member

katilp commented May 9, 2022

Recording the very useful list from @jmhogan (in the WS mattermost) here:

This was referenced May 11, 2022
@caredg
Copy link
Member Author

caredg commented May 16, 2022

From Julie:
Some references for jet substructure variable storage in early MiniAOD:
https://github.com/jmhogan/Ljmet-Com/blob/CMSSW_7_6_X/src/JetSubCalc.cc

thePrunedMass = corrunc(double)l2l3jet.userFloat("ak8PFJetsCHSPrunedMass");
theSoftDropMass = corrunc(double)l2l3jet.userFloat("ak8PFJetsCHSSoftDropMass");
theNjettinessTau1 = (double)corrak8.userFloat("NjettinessAK8:tau1");
theNjettinessTau2 = (double)corrak8.userFloat("NjettinessAK8:tau2");

"Early" MiniAOD certainly means 2015 and I think also 2016 before they switched the default AK8 jet collection to Puppi jets.

@jmhogan
Copy link
Collaborator

jmhogan commented May 16, 2022

To be a little more general: variable = thisPatJetObject.userFloat("specificName");
Where the "specificName" strings are in the comment above.

JEC/JER don't get propagated to userFloat content, so the code link shows our method to calculate and apply the corrections onto those mass variables.

@nsmith-
Copy link

nsmith- commented Nov 28, 2022

A possible direction we can go in is to port some of these corrections to correctionlib.
An introductory tutorial is at https://cms-nanoaod.github.io/correctionlib/correctionlib_tutorial.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2015MiniAOD Branch 2015MiniAOD
Projects
None yet
Development

No branches or pull requests

4 participants