CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
HLTOniaSource Class Reference

#include <HLTOniaSource.h>

Inheritance diagram for HLTOniaSource:
edm::EDAnalyzer

Public Member Functions

 HLTOniaSource (const edm::ParameterSet &)
 
 ~HLTOniaSource ()
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Private Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
 
virtual void beginJob ()
 
virtual void beginRun (const edm::Run &, const edm::EventSetup &)
 
void bookOniaTriggerInvariantMassMEs (std::map< std::string, MonitorElement * > &, std::string, std::string)
 
void bookOniaTriggerMEs (std::map< std::string, MonitorElement * > &, std::string)
 
bool checkHLTConfiguration (const edm::Run &, const edm::EventSetup &, std::string)
 
virtual void endJob ()
 
void fillInvariantMass (std::vector< reco::RecoChargedCandidateRef > &, reco::RecoChargedCandidateCollection &, std::string, std::string)
 
void fillInvariantMass (std::vector< reco::RecoChargedCandidateRef > &, std::vector< reco::RecoChargedCandidateRef > &, std::string, std::string)
 
void fillInvariantMass (std::vector< reco::RecoChargedCandidateRef > &, reco::TrackCollection &, std::string, std::string)
 
void fillOniaTriggerMEs (edm::Handle< reco::RecoChargedCandidateCollection > &, std::string, std::map< std::string, MonitorElement * > &)
 
void fillOniaTriggerMEs (edm::Handle< reco::TrackCollection > &, std::string, std::map< std::string, MonitorElement * > &)
 
void fillOniaTriggerMEs (std::vector< reco::RecoChargedCandidateRef > &, std::string, std::map< std::string, MonitorElement * > &)
 

Private Attributes

edm::InputTag beamSpotTag_
 
reco::BeamSpot::Point BSPosition_
 
DQMStoredbe_
 
bool hltConfigInit_
 
std::string hltProcessName_
 
std::map< std::string,
MonitorElement * > 
massME_
 
std::map< std::string,
MonitorElement * > 
muonME_
 
std::vector< edm::InputTagoniaMuonTag_
 
std::map< std::string,
MonitorElement * > 
pixelAfterFilterME_
 
std::map< std::string,
MonitorElement * > 
pixelME_
 
edm::InputTag pixelTag_
 
std::vector< edm::InputTagpixelTagsAfterFilter_
 
std::string subsystemFolder_
 
std::map< std::string,
MonitorElement * > 
trackAfterFilterME_
 
std::map< std::string,
MonitorElement * > 
trackME_
 
edm::InputTag trackTag_
 
std::vector< edm::InputTagtrackTagsAfterFilter_
 
std::vector< std::string > triggerPath_
 
edm::InputTag triggerSummaryRAWTag_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Detailed Description

Definition at line 28 of file HLTOniaSource.h.

Constructor & Destructor Documentation

HLTOniaSource::HLTOniaSource ( const edm::ParameterSet pset)
explicit

Definition at line 25 of file HLTOniaSource.cc.

References beamSpotTag_, edm::ParameterSet::getUntrackedParameter(), hltProcessName_, oniaMuonTag_, pixelTag_, pixelTagsAfterFilter_, subsystemFolder_, trackTag_, trackTagsAfterFilter_, triggerPath_, and triggerSummaryRAWTag_.

25  {
26 
27  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Constructor";
28 
29  //HLTrigger Path Names
30  std::vector<std::string> myTriggerPaths;
31  myTriggerPaths.push_back("HLT_Mu0_Track0_Jpsi");
32  myTriggerPaths.push_back("HLT_Mu3_Track0_Jpsi");
33  myTriggerPaths.push_back("HLT_Mu5_Track0_Jpsi");
34  triggerPath_ = pset.getUntrackedParameter<std::vector<std::string> >("TriggerPathNames",myTriggerPaths);
35 
36  //Tag for Onia Muons
37  std::vector<edm::InputTag> myOniaMuonTags;
38 
39  myOniaMuonTags.push_back(edm::InputTag("hltMu0TrackJpsiL3Filtered0", "", "HLT"));
40  myOniaMuonTags.push_back(edm::InputTag("hltMu3TrackJpsiL3Filtered3", "", "HLT"));
41  myOniaMuonTags.push_back(edm::InputTag("hltMu5TrackJpsiL3Filtered5", "", "HLT"));
42  oniaMuonTag_ = pset.getUntrackedParameter<std::vector<edm::InputTag> >("OniaMuonTag",myOniaMuonTags);
43 
44  //Tag for Pixel tracks before Onia filter
45  pixelTag_ = pset.getUntrackedParameter<edm::InputTag>("PixelTag",edm::InputTag("hltPixelTracks", "", "HLT"));
46 
47  //Tag for Tracker tracks before Onia filter
48  trackTag_ = pset.getUntrackedParameter<edm::InputTag>("TrackTag",edm::InputTag("hltMuTrackJpsiCtfTrackCands","", "HLT"));
49 
50  beamSpotTag_ = pset.getUntrackedParameter<edm::InputTag>("BeamSpotTag",edm::InputTag("hltOfflineBeamSpot", "", "HLT"));
51 
52  //Tag Trigger Summary
53  triggerSummaryRAWTag_ = pset.getUntrackedParameter<edm::InputTag>("TriggerSummaryTag",edm::InputTag("hltTriggerSummaryRAW", "", "HLT"));
54  hltProcessName_ = pset.getUntrackedParameter<std::string>("TriggerProcessName","HLT");
55  //Tag for Pixel tracks after Onia filter
56  std::vector<edm::InputTag> pxlTagsAfterFilter;
57  pxlTagsAfterFilter.push_back(edm::InputTag("hltMu0TrackJpsiPixelMassFiltered", "", "HLT"));
58  pxlTagsAfterFilter.push_back(edm::InputTag("hltMu3TrackJpsiPixelMassFiltered", "", "HLT"));
59  pxlTagsAfterFilter.push_back(edm::InputTag("hltMu5TrackJpsiPixelMassFiltered", "", "HLT"));
60  pixelTagsAfterFilter_= pset.getUntrackedParameter< std::vector<edm::InputTag> >("PixelTagAfterFilter",pxlTagsAfterFilter);
61 
62  //Tag for Tracker tracks after Onia filter
63  std::vector<edm::InputTag> trxTagsAfterFilter;
64  trxTagsAfterFilter.push_back(edm::InputTag("hltMu0TrackJpsiTrackMassFiltered", "", "HLT"));
65  trxTagsAfterFilter.push_back(edm::InputTag("hltMu3TrackJpsiTrackMassFiltered", "", "HLT"));
66  trxTagsAfterFilter.push_back(edm::InputTag("hltMu5TrackJpsiTrackMassFiltered", "", "HLT"));
67  trackTagsAfterFilter_ = pset.getUntrackedParameter< std::vector<edm::InputTag> >("TrackTagAfterFilter",trxTagsAfterFilter);
68 
69  //Foldering output
70  subsystemFolder_ = pset.getUntrackedParameter<std::string>("SubSystemFolder","HLT/HLTMonMuon/Onia");
71 }
T getUntrackedParameter(std::string const &, T const &) const
edm::InputTag triggerSummaryRAWTag_
Definition: HLTOniaSource.h:62
edm::InputTag trackTag_
Definition: HLTOniaSource.h:65
std::vector< edm::InputTag > pixelTagsAfterFilter_
Definition: HLTOniaSource.h:60
std::vector< edm::InputTag > oniaMuonTag_
Definition: HLTOniaSource.h:59
std::vector< edm::InputTag > trackTagsAfterFilter_
Definition: HLTOniaSource.h:61
edm::InputTag beamSpotTag_
Definition: HLTOniaSource.h:64
std::vector< std::string > triggerPath_
Definition: HLTOniaSource.h:58
edm::InputTag pixelTag_
Definition: HLTOniaSource.h:63
std::string hltProcessName_
Definition: HLTOniaSource.h:56
std::string subsystemFolder_
Definition: HLTOniaSource.h:55
HLTOniaSource::~HLTOniaSource ( )

Definition at line 74 of file HLTOniaSource.cc.

References dbe_.

74 {dbe_ = 0;}
DQMStore * dbe_
Definition: HLTOniaSource.h:66

Member Function Documentation

void HLTOniaSource::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
privatevirtual

Implements edm::EDAnalyzer.

Definition at line 141 of file HLTOniaSource.cc.

References beamSpotTag_, BSPosition_, fillInvariantMass(), fillOniaTriggerMEs(), edm::Event::getByLabel(), hltConfigInit_, i, edm::HandleBase::isValid(), edm::InputTag::label(), diffTwoXMLs::label, muonME_, oniaMuonTag_, pixelAfterFilterME_, pixelME_, pixelTag_, pixelTagsAfterFilter_, findQualityFiles::size, python.multivaluedict::sort(), trackAfterFilterME_, trackME_, trackTag_, trackTagsAfterFilter_, trigger::TriggerMuon, triggerSummaryRAWTag_, and trigger::TriggerTrack.

141  {
142 
143  if(!hltConfigInit_) return;
144 
145  //Get Pixel Tracks
147  iEvent.getByLabel(pixelTag_, pixelCands);
148 
149  reco::TrackCollection mypixelCands; //This is needed for the sort!!!!
150  if (pixelCands.isValid()) {
151  mypixelCands = * pixelCands;
152  sort(mypixelCands.begin(), mypixelCands.end(),PtGreater());
153  this->fillOniaTriggerMEs(pixelCands , pixelTag_.label(), pixelME_ );
154  }else {
155  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Could not access pixel collection with tag "<<pixelTag_;
156  }
157 
158  //Get Tracker Tracks
160  iEvent.getByLabel(trackTag_, trackCands);
161  reco::RecoChargedCandidateCollection mytrackCands; //This is needed for the sort!!!!
162  if(trackCands.isValid()) {
163  mytrackCands = * trackCands;
164  sort(mytrackCands.begin(),mytrackCands.end(),PtGreater());
165  this->fillOniaTriggerMEs(trackCands , trackTag_.label(), trackME_ );
166  }else {
167  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Could not access track collection with tag "<<trackTag_;
168  }
169 
170  //Get Beamspot
171  edm::Handle<reco::BeamSpot> recoBeamSpotHandle;
172  iEvent.getByLabel(beamSpotTag_, recoBeamSpotHandle);
173  if (recoBeamSpotHandle.isValid()) {
174  BSPosition_ = recoBeamSpotHandle->position();
175  }else {
176  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Could not access beam spot info with tag "<<beamSpotTag_;
177  }
178 
179 
180  //Get Trigger Summary RA
182  iEvent.getByLabel(triggerSummaryRAWTag_, rawTriggerEvent );
183 
184  if( rawTriggerEvent.isValid() ){
185 
186  for(size_t i=0; i<oniaMuonTag_.size(); i++){
187 
188  std::vector<reco::RecoChargedCandidateRef> myMuonFilterCands;
189  std::vector<reco::RecoChargedCandidateRef> myPixelFilterCands;
190  std::vector<reco::RecoChargedCandidateRef> myTrackFilterCands;
191 
192  //Get Onia Muons
193  size_t indexM = rawTriggerEvent->filterIndex(oniaMuonTag_[i]);
194 
195  if ( indexM < rawTriggerEvent->size() ){
196  rawTriggerEvent->getObjects( indexM, trigger::TriggerMuon, myMuonFilterCands );
197  this->fillOniaTriggerMEs( myMuonFilterCands, oniaMuonTag_[i].label(), muonME_ );
198  }else{
199  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Did not find muons with tag "<<oniaMuonTag_[i];
200  }
201  //Get Onia Pixel
202  size_t indexP = rawTriggerEvent->filterIndex(pixelTagsAfterFilter_[i]);
203  if ( indexP < rawTriggerEvent->size() ){
204  rawTriggerEvent->getObjects( indexP, trigger::TriggerTrack , myPixelFilterCands );
205  this->fillOniaTriggerMEs( myPixelFilterCands,pixelTagsAfterFilter_[i].label(), pixelAfterFilterME_);
206  sort(myPixelFilterCands.begin(), myPixelFilterCands.end(),PtGreaterRef());
207  }else{
208  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Did not find pixel with tag "<<pixelTagsAfterFilter_[i];
209  }
210 
211  //Get Onia Tracker Tracks
212  size_t indexT = rawTriggerEvent->filterIndex(trackTagsAfterFilter_[i]);
213  if ( indexT < rawTriggerEvent->size() ){
214  rawTriggerEvent->getObjects( indexT, trigger::TriggerTrack , myTrackFilterCands );
215  this->fillOniaTriggerMEs( myTrackFilterCands,trackTagsAfterFilter_[i].label(), trackAfterFilterME_ );
216  sort(myTrackFilterCands.begin(), myTrackFilterCands.end(),PtGreaterRef());
217  }else{
218  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Did not find tracks with tag "<<trackTagsAfterFilter_[i];
219  }
220 
221  if( myMuonFilterCands.size() > 0){
222  if ( myPixelFilterCands.size() > 0 )this->fillInvariantMass( myMuonFilterCands, myPixelFilterCands ,oniaMuonTag_[i].label(),pixelTagsAfterFilter_[i].label());
223  if ( myTrackFilterCands.size() > 0 )this->fillInvariantMass( myMuonFilterCands, myTrackFilterCands ,oniaMuonTag_[i].label(),trackTagsAfterFilter_[i].label());
224  if (pixelCands.isValid()) this->fillInvariantMass( myMuonFilterCands, mypixelCands , oniaMuonTag_[i].label(), pixelTag_.label());
225  if (trackCands.isValid()) this->fillInvariantMass( myMuonFilterCands, mytrackCands , oniaMuonTag_[i].label(), trackTag_.label());
226  }
227 
228 
229  }//ADD INVARIANT MASSES
230  }else{
231  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Could not access trigger collection with tag "<<triggerSummaryRAWTag_;
232  }
233 
234 }
int i
Definition: DBlmapReader.cc:9
edm::InputTag triggerSummaryRAWTag_
Definition: HLTOniaSource.h:62
edm::InputTag trackTag_
Definition: HLTOniaSource.h:65
std::map< std::string, MonitorElement * > pixelAfterFilterME_
Definition: HLTOniaSource.h:67
std::map< std::string, MonitorElement * > pixelME_
Definition: HLTOniaSource.h:69
std::vector< edm::InputTag > pixelTagsAfterFilter_
Definition: HLTOniaSource.h:60
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
std::vector< edm::InputTag > oniaMuonTag_
Definition: HLTOniaSource.h:59
std::map< std::string, MonitorElement * > trackME_
Definition: HLTOniaSource.h:71
void fillInvariantMass(std::vector< reco::RecoChargedCandidateRef > &, reco::RecoChargedCandidateCollection &, std::string, std::string)
std::vector< edm::InputTag > trackTagsAfterFilter_
Definition: HLTOniaSource.h:61
std::map< std::string, MonitorElement * > trackAfterFilterME_
Definition: HLTOniaSource.h:68
edm::InputTag beamSpotTag_
Definition: HLTOniaSource.h:64
edm::InputTag pixelTag_
Definition: HLTOniaSource.h:63
reco::BeamSpot::Point BSPosition_
Definition: HLTOniaSource.h:41
bool isValid() const
Definition: HandleBase.h:76
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
std::vector< RecoChargedCandidate > RecoChargedCandidateCollection
collectin of RecoChargedCandidate objects
std::string const & label() const
Definition: InputTag.h:25
std::map< std::string, MonitorElement * > muonME_
Definition: HLTOniaSource.h:70
void fillOniaTriggerMEs(edm::Handle< reco::RecoChargedCandidateCollection > &, std::string, std::map< std::string, MonitorElement * > &)
tuple size
Write out results.
void HLTOniaSource::beginJob ( void  )
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 76 of file HLTOniaSource.cc.

References dbe_, and cppFunctionSkipper::operator.

76  {
77 
79  if( !dbe_ ) {
80  edm::LogVerbatim ("oniatriggermonitor") << "[HLTOniaSource]: Could not access DQM Store.";
81  return;
82  }
83 }
DQMStore * dbe_
Definition: HLTOniaSource.h:66
void HLTOniaSource::beginRun ( const edm::Run run,
const edm::EventSetup setup 
)
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 85 of file HLTOniaSource.cc.

References bookOniaTriggerInvariantMassMEs(), bookOniaTriggerMEs(), checkHLTConfiguration(), dbe_, hltConfigInit_, hltProcessName_, i, edm::InputTag::label(), diffTwoXMLs::label, massME_, muonME_, oniaMuonTag_, pixelAfterFilterME_, pixelME_, pixelTag_, pixelTagsAfterFilter_, DQMStore::setCurrentFolder(), subsystemFolder_, trackAfterFilterME_, trackME_, trackTag_, and trackTagsAfterFilter_.

85  {
86 
87  if (!dbe_) return;
88 
89  // Book Pixel Histos
90  if (pixelTag_.label()!= ""){
93  }
94 
95  // Book Track Histos
96  if (trackTag_.label()!= ""){
99  }
100 
101 
102  //Book Onia Histos
103  for (size_t i = 0 ; i<oniaMuonTag_.size() && i<pixelTagsAfterFilter_.size() && i<trackTagsAfterFilter_.size(); i++){
104 
105  if (oniaMuonTag_[i].label()!= "") {
106  dbe_->setCurrentFolder(subsystemFolder_+"/MuonFilters");
108  }
109  if (pixelTagsAfterFilter_[i].label() != ""){
110  dbe_->setCurrentFolder(subsystemFolder_+"/PixelFilters");
112  }
113  if (trackTagsAfterFilter_[i].label() != ""){
114  dbe_->setCurrentFolder(subsystemFolder_+"/TrackFilters");
116  }
117  if (oniaMuonTag_[i].label()!= "" && pixelTag_.label() != ""){
120  }
121  if (oniaMuonTag_[i].label() != "" && trackTag_.label()!= "" ){
124  }
125  if (oniaMuonTag_[i].label()!= "" && pixelTagsAfterFilter_[i].label()!= ""){
126  dbe_->setCurrentFolder(subsystemFolder_+"/PixelFilters");
128  }
129  if (oniaMuonTag_[i].label()!= "" && trackTagsAfterFilter_[i].label()!= ""){
130  dbe_->setCurrentFolder(subsystemFolder_+"/TrackFilters");
132  }
133  }
134 
136 
137 }
int i
Definition: DBlmapReader.cc:9
edm::InputTag trackTag_
Definition: HLTOniaSource.h:65
std::map< std::string, MonitorElement * > pixelAfterFilterME_
Definition: HLTOniaSource.h:67
std::map< std::string, MonitorElement * > pixelME_
Definition: HLTOniaSource.h:69
std::vector< edm::InputTag > pixelTagsAfterFilter_
Definition: HLTOniaSource.h:60
void bookOniaTriggerMEs(std::map< std::string, MonitorElement * > &, std::string)
std::vector< edm::InputTag > oniaMuonTag_
Definition: HLTOniaSource.h:59
std::map< std::string, MonitorElement * > trackME_
Definition: HLTOniaSource.h:71
std::map< std::string, MonitorElement * > massME_
Definition: HLTOniaSource.h:72
std::vector< edm::InputTag > trackTagsAfterFilter_
Definition: HLTOniaSource.h:61
std::map< std::string, MonitorElement * > trackAfterFilterME_
Definition: HLTOniaSource.h:68
edm::InputTag pixelTag_
Definition: HLTOniaSource.h:63
void bookOniaTriggerInvariantMassMEs(std::map< std::string, MonitorElement * > &, std::string, std::string)
std::string hltProcessName_
Definition: HLTOniaSource.h:56
std::string const & label() const
Definition: InputTag.h:25
std::string subsystemFolder_
Definition: HLTOniaSource.h:55
std::map< std::string, MonitorElement * > muonME_
Definition: HLTOniaSource.h:70
DQMStore * dbe_
Definition: HLTOniaSource.h:66
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
bool checkHLTConfiguration(const edm::Run &, const edm::EventSetup &, std::string)
void HLTOniaSource::bookOniaTriggerInvariantMassMEs ( std::map< std::string, MonitorElement * > &  myMap,
std::string  label1,
std::string  label2 
)
private

Definition at line 326 of file HLTOniaSource.cc.

References DQMStore::book1D(), dbe_, and massME_.

Referenced by beginRun().

326  {
327 
328  std::stringstream meName;
329  //Same charge
330  meName.str("");
331  meName<<label1<<"_"<<label2<<"_SameCharge_InvariantMass";
332  massME_[label1+label2+"same"]=dbe_->book1D(meName.str(), meName.str(),120, 0.0, 6.0);
333  massME_[label1+label2+"same"]->setAxisTitle("mass (GeV)", 1);
334 
335  //Opposite charge
336  meName.str("");
337  meName<<label1<<"_"<<label2<<"_OppositeCharge_InvariantMass";
338  massME_[label1+label2+"opposite"]=dbe_->book1D(meName.str(), meName.str(),120, 0.0, 6.0);
339  massME_[label1+label2+"opposite"]->setAxisTitle("mass (GeV)", 1);
340 
341  //Same charge Highest PT
342  meName.str("");
343  meName<<label1<<"_"<<label2<<"_SameCharge_HighestPT_InvariantMass";
344  massME_[label1+label2+"same"+"highestpt"]=dbe_->book1D(meName.str(), meName.str(),120, 0.0, 6.0);
345  massME_[label1+label2+"same"+"highestpt"]->setAxisTitle("mass (GeV)", 1);
346 
347  //Opposite charge Highest PT
348  meName.str("");
349  meName<<label1<<"_"<<label2<<"_OppositeCharge_HighestPT_InvariantMass";
350  massME_[label1+label2+"opposite"+"highestpt"]=dbe_->book1D(meName.str(), meName.str(),120, 0.0, 6.0);
351  massME_[label1+label2+"opposite"+"highestpt"]->setAxisTitle("mass (GeV)", 1);
352 
353 
354 
355  // Same Charge Deltaz Muon - Track Highest PT
356  meName.str("");
357  meName<<label1<<"_"<<label2<<"_SameCharge_HighestPT_MaxDzMuonTrack";
358  massME_[label1+label2+"same"+"highestpt"+"maxdzmuontrack"]=dbe_->book1D(meName.str(), meName.str(),50, 0.0, 5.0);
359  massME_[label1+label2+"same"+"highestpt"+"maxdzmuontrack"]->setAxisTitle("MaxDz Muon-Track", 1);
360  // Same Charge Deltaz Muon - Track
361  meName.str("");
362  meName<<label1<<"_"<<label2<<"_SameCharge_MaxDzMuonTrack";
363  massME_[label1+label2+"same"+"maxdzmuontrack"]=dbe_->book1D(meName.str(), meName.str(),50, 0.0, 5.0);
364  massME_[label1+label2+"same"+"maxdzmuontrack"]->setAxisTitle("MaxDz Muon-Track", 1);
365  // Opposite charge Deltaz Muon - Track Highest PT
366  meName.str("");
367  meName<<label1<<"_"<<label2<<"_OppositeCharge_HighestPT_MaxDzMuonTrack";
368  massME_[label1+label2+"opposite"+"highestpt"+"maxdzmuontrack"]=dbe_->book1D(meName.str(), meName.str(),50, 0.0, 5.0);
369  massME_[label1+label2+"opposite"+"highestpt"+"maxdzmuontrack"]->setAxisTitle("MaxDz Muon-Track", 1);
370  // Opposite charge Deltaz Muon - Track
371  meName.str("");
372  meName<<label1<<"_"<<label2<<"_OppositeCharge_MaxDzMuonTrack";
373  massME_[label1+label2+"opposite"+"maxdzmuontrack"]=dbe_->book1D(meName.str(), meName.str(),50, 0.0, 5.0);
374  massME_[label1+label2+"opposite"+"maxdzmuontrack"]->setAxisTitle("MaxDz Muon-Track", 1);
375 }
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
std::map< std::string, MonitorElement * > massME_
Definition: HLTOniaSource.h:72
DQMStore * dbe_
Definition: HLTOniaSource.h:66
void HLTOniaSource::bookOniaTriggerMEs ( std::map< std::string, MonitorElement * > &  myMap,
std::string  meName 
)
private

Definition at line 239 of file HLTOniaSource.cc.

References DQMStore::book1D(), DQMStore::book2D(), dbe_, and MonitorElement::setAxisTitle().

Referenced by beginRun().

239  {
240 
241  std::stringstream myMeName;
242 
243  //PT
244  myMeName.str("");
245  myMeName<<meName<<"_Pt";
246  myMap[meName+"pt"]=dbe_->book1D(myMeName.str(), myMeName.str(),200, 0.0, 20.0);
247  myMap[meName+"pt"]->setAxisTitle("Pt (GeV)", 1);
248 
249  //P
250  myMeName.str("");
251  myMeName<<meName<<"_P";
252  myMap[meName+"p"]=dbe_->book1D(myMeName.str(), myMeName.str(),250, 0.0, 50.0);
253  myMap[meName+"p"]->setAxisTitle("P (GeV)", 1);
254 
255  //Eta
256  myMeName.str("");
257  myMeName<<meName<<"_Eta";
258  myMap[meName+"eta"]=dbe_->book1D(myMeName.str(), myMeName.str(), 50, -2.5, 2.5 );
259  myMap[meName+"eta"]->setAxisTitle("Eta", 1);
260 
261  //Phi
262  myMeName.str("");
263  myMeName<<meName<<"_Phi";
264  myMap[meName+"phi"]=dbe_->book1D(myMeName.str(), myMeName.str(), 144, -3.1416, 3.1416 );
265  myMap[meName+"phi"]->setAxisTitle("Phi", 1);
266 
267  //Phi
268  myMeName.str("");
269  myMeName<<meName<<"_Phi";
270  myMap[meName+"phi"]=dbe_->book1D(myMeName.str(), myMeName.str(), 144, -3.1416, 3.1416 );
271  myMap[meName+"phi"]->setAxisTitle("Phi", 1);
272 
273  //Charge
274  myMeName.str("");
275  myMeName<<meName<<"_Charge";
276  myMap[meName+"charge"]=dbe_->book1D(myMeName.str(), myMeName.str(), 3, -1.5, 1.5 );
277  myMap[meName+"charge"]->setAxisTitle("charge", 1);
278 
279  //Dz
280  myMeName.str("");
281  myMeName<<meName<<"_Dz";
282  myMap[meName+"dz"]=dbe_->book1D(myMeName.str(), myMeName.str(), 400, -20.0, 20.0 );
283  myMap[meName+"dz"]->setAxisTitle("dz", 1);
284 
285  //Dxy
286  myMeName.str("");
287  myMeName<<meName<<"_Dxy";
288  myMap[meName+"dxy"]=dbe_->book1D(myMeName.str(), myMeName.str(), 100, -0.5, 0.5 );
289  myMap[meName+"dxy"]->setAxisTitle("dxy", 1);
290 
291  //EtaVsPhi
292  myMeName.str("");
293  myMeName<<meName<<"_EtaPhi";
294  myMap[meName+"etaphi"]=dbe_->book2D(myMeName.str(), myMeName.str(), 144, -3.1416, 3.1416 ,50, -2.5, 2.5 );
295  myMap[meName+"etaphi"]->setAxisTitle("Phi", 1);
296  myMap[meName+"etaphi"]->setAxisTitle("Eta", 2);
297 
298  //EtaVsPt
299  myMeName.str("");
300  myMeName<<meName<<"_EtaPt";
301  myMap[meName+"etapt"]=dbe_->book2D(myMeName.str(), myMeName.str(), 100, 0.0, 100.0, 50, -2.5, 2.5 );
302  myMap[meName+"etapt"]->setAxisTitle("Pt (GeV)", 1);
303  myMap[meName+"etapt"]->setAxisTitle("Eta", 2);
304 
305  //ValidHits
306  myMeName.str("");
307  myMeName<<meName<<"_ValidHits";
308  myMap[meName+"validhits"]=dbe_->book1D(myMeName.str(), myMeName.str(), 50, 0.0, 50.0 );
309  myMap[meName+"validhits"]->setAxisTitle("ValidHits", 1);
310 
311  //Norm Chi2
312  myMeName.str("");
313  myMeName<<meName<<"_NormChi2";
314  myMap[meName+"normchi"]=dbe_->book1D(myMeName.str(), myMeName.str(), 300, 0.0, 30.0 );
315  myMap[meName+"normchi"]->setAxisTitle("Normalized Chi2", 1);
316 
317  //Number Of Candi
318  myMeName.str("");
319  myMeName<<meName<<"_NrCandidates";
320  myMap[meName+"nrcand"]=dbe_->book1D(myMeName.str(), myMeName.str(), 50, 0.0, 50.0 );
321  myMap[meName+"nrcand"]->setAxisTitle("Nr per Event", 1);
322  //return true;
323 }
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
DQMStore * dbe_
Definition: HLTOniaSource.h:66
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:845
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
bool HLTOniaSource::checkHLTConfiguration ( const edm::Run run,
const edm::EventSetup setup,
std::string  triggerProcessName 
)
private

Definition at line 597 of file HLTOniaSource.cc.

References spr::find(), HltComparatorCreateWorkflow::hltConfig, i, HLTConfigProvider::init(), j, HLTConfigProvider::moduleLabels(), mergeVDriftHistosByStation::name, HLTConfigProvider::triggerNames(), and triggerPath_.

Referenced by beginRun().

597  {
598 
600  bool changed(false);
601  if(hltConfig.init(run , setup, triggerProcessName, changed)){
602  edm::LogVerbatim("hltoniasource") << "Successfully initialized HLTConfigProvider with process name: "<<triggerProcessName;
603 
604  std::stringstream os;
605  std::vector<std::string> triggerNames = hltConfig.triggerNames();
606 
607  for( size_t i = 0; i < triggerNames.size(); i++) {
608  if (find(triggerPath_.begin(), triggerPath_.end(), triggerNames[i]) == triggerPath_.end()) continue;
609  edm::LogVerbatim("hltoniasource") << "[HLTOniaSource]: Trigger Path: "<<triggerNames[i];
610  std::vector<std::string> moduleNames = hltConfig.moduleLabels( triggerNames[i] );
611  for( size_t j = 0; j < moduleNames.size(); j++) {
612  TString name = moduleNames[j];
613  edm::LogVerbatim("hltoniasource") << "\t Fliter Name: "<<moduleNames[j];
614  }
615  }
616 
617  return true;
618 
619  }else{
620  edm::LogVerbatim("hltoniasource") << "Could not initialize HLTConfigProvider with process name: "<<triggerProcessName;
621  return false;
622  }
623  return true;
624 }
int i
Definition: DBlmapReader.cc:9
const std::vector< std::string > & triggerNames() const
names of trigger paths
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:7
std::vector< std::string > triggerPath_
Definition: HLTOniaSource.h:58
int j
Definition: DBlmapReader.cc:9
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d&#39;tor
void HLTOniaSource::endJob ( void  )
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 237 of file HLTOniaSource.cc.

237 {}
void HLTOniaSource::fillInvariantMass ( std::vector< reco::RecoChargedCandidateRef > &  cand1,
reco::RecoChargedCandidateCollection cand2,
std::string  cand1Label,
std::string  cand2Label 
)
private

Definition at line 511 of file HLTOniaSource.cc.

References DeDxDiscriminatorTools::charge(), i, scaleCards::mass, massME_, and p4.

Referenced by analyze().

511  {
512 
513  typedef reco::RecoChargedCandidateCollection::const_iterator cand;
514  //Loop on collection to calculate invariate mass
515  for(size_t i = 0 ; i< cand1.size(); i++) {
516  //Highest PT
517  if(cand2.begin() != cand2.end() && cand2.begin()->p()>3) {
518  cand candItr = cand2.begin();
519  std::string chargeLabel = "same";
520  //Check relative charge
521  if(cand1[i]->charge() * candItr->charge() < 0) chargeLabel = "opposite";
522  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]){
523  massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]->Fill((cand1[i]->p4()+candItr->p4()).mass());
524  }
525 
526  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]){
527  reco::RecoChargedCandidate tk1 = (*cand1[i]);
528  reco::RecoChargedCandidate tk2 = (*candItr);
529  // massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]->Fill(fabs(tk1->dz(BSPosition_) - tk2->dz(BSPosition_)));
530  }
531  }
532 
533  for (cand candItr2= cand2.begin(); candItr2!=cand2.end(); candItr2++) {
534  if(candItr2->p() < 3) continue; //Check if momentum is greater than 3GeV.
535  std::string chargeLabel = "same";
536  //Check relative charge
537  if(cand1[i]->charge() * candItr2->charge() < 0) chargeLabel = "opposite";
538  if(massME_[cand1Label+cand2Label+chargeLabel]){
539  massME_[cand1Label+cand2Label+chargeLabel]->Fill((cand1[i]->p4()+candItr2->p4()).mass());
540  }
541  if(massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]){
542  reco::RecoChargedCandidate tk1 = (*cand1[i]);
543  reco::RecoChargedCandidate tk2 = (*candItr2);
544  // massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]->Fill(fabs(tk1->dz(BSPosition_) - tk2->dz(BSPosition_)));
545  }
546  }
547  }
548 }
int i
Definition: DBlmapReader.cc:9
std::map< std::string, MonitorElement * > massME_
Definition: HLTOniaSource.h:72
double charge(const std::vector< uint8_t > &Ampls)
double p4[4]
Definition: TauolaWrapper.h:92
tuple mass
Definition: scaleCards.py:27
void HLTOniaSource::fillInvariantMass ( std::vector< reco::RecoChargedCandidateRef > &  cand1,
std::vector< reco::RecoChargedCandidateRef > &  cand2,
std::string  cand1Label,
std::string  cand2Label 
)
private

Definition at line 470 of file HLTOniaSource.cc.

References DeDxDiscriminatorTools::charge(), i, j, scaleCards::mass, massME_, AlCaHLTBitMon_ParallelJobs::p, and p4.

470  {
471 
472  //Loop on collection to calculate invariate mass
473  for(size_t i = 0 ; i< cand1.size(); i++) {
474 
475  //Highest PT
476  std::string chargeLabel = "same";
477 
478  //Check relative charge
479  if(cand1[i]->charge() * cand2[0]->charge() < 0) chargeLabel = "opposite";
480  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]){
481  massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]->Fill((cand1[i]->p4()+cand2[0]->p4()).mass());
482  }
483  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]){
484  reco::RecoChargedCandidate tk1 = (*cand1[i]);
485  reco::RecoChargedCandidate tk2 = (*cand2[0]);
486  // TrackRef tk1 = cand1[i]->get<TrackRef>();
487  // massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]->Fill(fabs(tk1->dz(BSPosition_) - tk2->dz(BSPosition_)));
488  }
489 
490 
491  for (size_t j= 0; j< cand2.size(); j++) {
492 
493  if(cand2[j]->p() < 3) continue; //Check if momentum is greater than 3GeV.
494  std::string chargeLabel = "same";
495  //Check relative charge
496  if(cand1[i]->charge() * cand2[j]->charge() < 0) chargeLabel = "opposite";
497  if(massME_[cand1Label+cand2Label+chargeLabel]){
498  massME_[cand1Label+cand2Label+chargeLabel]->Fill((cand1[i]->p4()+cand2[j]->p4()).mass());
499  }
500  if(massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]){
501  reco::RecoChargedCandidate tk1 = (*cand1[i]);
502  reco::RecoChargedCandidate tk2 = (*cand2[j]);
503  // massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]->Fill(fabs(tk1->dz(BSPosition_) - tk2->dz(BSPosition_)));
504  }
505  }
506  }
507 }
int i
Definition: DBlmapReader.cc:9
std::map< std::string, MonitorElement * > massME_
Definition: HLTOniaSource.h:72
double charge(const std::vector< uint8_t > &Ampls)
double p4[4]
Definition: TauolaWrapper.h:92
int j
Definition: DBlmapReader.cc:9
tuple mass
Definition: scaleCards.py:27
void HLTOniaSource::fillInvariantMass ( std::vector< reco::RecoChargedCandidateRef > &  cand1,
reco::TrackCollection cand2,
std::string  cand1Label,
std::string  cand2Label 
)
private

Definition at line 552 of file HLTOniaSource.cc.

References DeDxDiscriminatorTools::charge(), i, scaleCards::mass, massME_, and p4.

552  {
553 
554  typedef reco::TrackCollection::const_iterator cand;
555 
556  //Loop on collection to calculate invariate mass
557  for(size_t i = 0 ; i< cand1.size(); i++) {
558  //Highest PT
559  if(cand2.begin() != cand2.end() && cand2.begin()->p()>3) {
560  cand candItr = cand2.begin();
561  math::PtEtaPhiMLorentzVector bestPtCandLVector(candItr->pt(), candItr->eta(), candItr->phi(), 1.056);
562 
563  std::string chargeLabel = "same";
564 
565  //Check relative charge
566  if(cand1[i]->charge() * candItr->charge() < 0) chargeLabel = "opposite";
567  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]){
568  massME_[cand1Label+cand2Label+chargeLabel+"highestpt"]->Fill((cand1[i]->p4()+bestPtCandLVector).mass());
569  }
570 
571  if(massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]){
572  reco::RecoChargedCandidate tk1 = (*cand1[i]);
573  // massME_[cand1Label+cand2Label+chargeLabel+"highestpt"+"maxdzmuontrack"]->Fill(fabs(tk->dz(BSPosition_) - candItr->dz(BSPosition_)));
574  }
575  }
576 
577  for (cand candIter= cand2.begin(); candIter!=cand2.end(); candIter++) {
578 
579  if(candIter->p() < 3) continue; //Check if momentum is greater than 3GeV.
580 
581  math::PtEtaPhiMLorentzVector candLVector(candIter->pt(), candIter->eta(), candIter->phi(), 1.056);
582 
583  std::string chargeLabel = "same";
584  //Check relative charge
585  if(cand1[i]->charge() * candIter->charge() < 0) chargeLabel = "opposite";
586  if(massME_[cand1Label+cand2Label+chargeLabel]){
587  massME_[cand1Label+cand2Label+chargeLabel]->Fill((cand1[i]->p4()+candLVector).mass());
588  }
589  if(massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]){
590  reco::RecoChargedCandidate tk1 = (*cand1[i]);
591  // massME_[cand1Label+cand2Label+chargeLabel+"maxdzmuontrack"]->Fill(fabs(tk->dz(BSPosition_) - candIter->dz(BSPosition_)));
592  }
593  }
594  }
595 }
int i
Definition: DBlmapReader.cc:9
std::map< std::string, MonitorElement * > massME_
Definition: HLTOniaSource.h:72
double charge(const std::vector< uint8_t > &Ampls)
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
Definition: LorentzVector.h:26
double p4[4]
Definition: TauolaWrapper.h:92
tuple mass
Definition: scaleCards.py:27
void HLTOniaSource::fillOniaTriggerMEs ( edm::Handle< reco::RecoChargedCandidateCollection > &  collection,
std::string  collectionLabel,
std::map< std::string, MonitorElement * > &  mapME 
)
private

Definition at line 437 of file HLTOniaSource.cc.

References reco::LeafCandidate::charge(), runEdmFileComparison::collection, reco::LeafCandidate::eta(), i, edm::HandleBase::isValid(), reco::LeafCandidate::p(), reco::LeafCandidate::phi(), and reco::LeafCandidate::pt().

Referenced by analyze().

437  {
438 
440  if (collection.isValid()) {
441  myCollection = * collection;
442 
443  // int nCollection= myCollection.size();
444  int num = 0;
445  typedef reco::RecoChargedCandidateCollection::const_iterator cand;
446  for (cand i=myCollection.begin(); i!=myCollection.end(); i++) {
447  reco::RecoChargedCandidate tk = (*i);
448 
449  num++;
450  //Fill MEs
451  if(mapME[collectionLabel+"pt"]){ mapME[collectionLabel+"pt"]->Fill(tk.pt()); }
452  if(mapME[collectionLabel+"p"]) { mapME[collectionLabel+"p"]->Fill(tk.p()); }
453  if(mapME[collectionLabel+"eta"]) { mapME[collectionLabel+"eta"]->Fill(tk.eta()); }
454  if(mapME[collectionLabel+"phi"]) { mapME[collectionLabel+"phi"]->Fill(tk.phi()); }
455  if(mapME[collectionLabel+"etaphi"]){ mapME[collectionLabel+"etaphi"]->Fill(tk.phi(),tk.eta()); }
456  if(mapME[collectionLabel+"etapt"]){ mapME[collectionLabel+"etapt"]->Fill(tk.pt(),tk.eta()); }
457  if(mapME[collectionLabel+"charge"]){ mapME[collectionLabel+"charge"]->Fill(tk.charge()); }
458 
459  // if(mapME[collectionLabel+"dxy"]){ mapME[collectionLabel+"dxy"]->Fill(tk.dxy(BSPosition_)); }
460 // if(mapME[collectionLabel+"dz"]){ mapME[collectionLabel+"dz"]->Fill(tk.dz(BSPosition_)); }
461 
462 // if(mapME[collectionLabel+"validhits"]) { mapME[collectionLabel+"validhits"]->Fill(tk.numberOfValidHits()); }
463 // if(mapME[collectionLabel+"normchi"]){ mapME[collectionLabel+"normchi"]->Fill(tk.normalizedChi2()); }
464  }
465  if(mapME[collectionLabel+"nrcand"]){ mapME[collectionLabel+"nrcand"]->Fill(num);}
466  }
467 }
int i
Definition: DBlmapReader.cc:9
virtual double p() const
magnitude of momentum vector
virtual double eta() const
momentum pseudorapidity
virtual int charge() const
electric charge
bool isValid() const
Definition: HandleBase.h:76
std::vector< RecoChargedCandidate > RecoChargedCandidateCollection
collectin of RecoChargedCandidate objects
virtual double pt() const
transverse momentum
long long int num
Definition: procUtils.cc:71
virtual double phi() const
momentum azimuthal angle
void HLTOniaSource::fillOniaTriggerMEs ( edm::Handle< reco::TrackCollection > &  collection,
std::string  collectionLabel,
std::map< std::string, MonitorElement * > &  mapME 
)
private

Definition at line 378 of file HLTOniaSource.cc.

References runEdmFileComparison::collection, and edm::HandleBase::isValid().

378  {
379  // cout << "[HLTOniaSource]: fillOniaTriggerMEs " << collectionLabel << endl;
380 
381  reco::TrackCollection myCollection;
382  if (collection.isValid()) {
383  myCollection = * collection;
384 
385  // int nCollection= myCollection.size();
386 
387  typedef reco::TrackCollection::const_iterator cand;
388  int num = 0;
389  for (cand tk=myCollection.begin(); tk!=myCollection.end(); tk++) {
390  num++;
391  //Fill MEs
392  if(mapME[collectionLabel+"pt"]){ mapME[collectionLabel+"pt"]->Fill(tk->pt()); }
393  if(mapME[collectionLabel+"p"]) { mapME[collectionLabel+"p"]->Fill(tk->p()); }
394  if(mapME[collectionLabel+"eta"]) { mapME[collectionLabel+"eta"]->Fill(tk->eta()); }
395  if(mapME[collectionLabel+"phi"]) { mapME[collectionLabel+"phi"]->Fill(tk->phi()); }
396  if(mapME[collectionLabel+"etaphi"]){ mapME[collectionLabel+"etaphi"]->Fill(tk->phi(),tk->eta()); }
397  if(mapME[collectionLabel+"etapt"]){ mapME[collectionLabel+"etapt"]->Fill(tk->pt(),tk->eta()); }
398  if(mapME[collectionLabel+"charge"]){ mapME[collectionLabel+"charge"]->Fill(tk->charge()); }
399 
400  // if(mapME[collectionLabel+"dxy"]){ mapME[collectionLabel+"dxy"]->Fill(tk->dxy(BSPosition_)); }
401 // if(mapME[collectionLabel+"dz"]){ mapME[collectionLabel+"dz"]->Fill(tk->dz(BSPosition_)); }
402 
403 // if(mapME[collectionLabel+"validhits"]) { mapME[collectionLabel+"validhits"]->Fill(tk->numberOfValidHits()); }
404 // if(mapME[collectionLabel+"normchi"]){ mapME[collectionLabel+"normchi"]->Fill(tk->normalizedChi2()); }
405  }
406  if(mapME[collectionLabel+"nrcand"]){ mapME[collectionLabel+"nrcand"]->Fill(num);}
407 
408  }
409 }
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
bool isValid() const
Definition: HandleBase.h:76
long long int num
Definition: procUtils.cc:71
void HLTOniaSource::fillOniaTriggerMEs ( std::vector< reco::RecoChargedCandidateRef > &  candidateVector,
std::string  collectionLabel,
std::map< std::string, MonitorElement * > &  mapME 
)
private

Definition at line 412 of file HLTOniaSource.cc.

References reco::LeafCandidate::charge(), reco::LeafCandidate::eta(), i, reco::LeafCandidate::p(), reco::LeafCandidate::phi(), and reco::LeafCandidate::pt().

412  {
413 
414  for (unsigned int i=0; i!=candidateVector.size(); i++) {
415  reco::RecoChargedCandidate tk = (*candidateVector[i]);
416 
417  //Fill MEs
418  if(mapME[collectionLabel+"pt"]){ mapME[collectionLabel+"pt"]->Fill(tk.pt()); }
419  if(mapME[collectionLabel+"p"]) { mapME[collectionLabel+"p"]->Fill(tk.p()); }
420  if(mapME[collectionLabel+"eta"]) { mapME[collectionLabel+"eta"]->Fill(tk.eta()); }
421  if(mapME[collectionLabel+"phi"]) { mapME[collectionLabel+"phi"]->Fill(tk.phi()); }
422  if(mapME[collectionLabel+"etaphi"]){ mapME[collectionLabel+"etaphi"]->Fill(tk.phi(),tk.eta()); }
423  if(mapME[collectionLabel+"etapt"]){ mapME[collectionLabel+"etapt"]->Fill(tk.pt(),tk.eta()); }
424  if(mapME[collectionLabel+"charge"]){ mapME[collectionLabel+"charge"]->Fill(tk.charge()); }
425 
426  // if(mapME[collectionLabel+"dxy"]){ mapME[collectionLabel+"dxy"]->Fill(tk.dxy(BSPosition_)); }
427 // if(mapME[collectionLabel+"dz"]){ mapME[collectionLabel+"dz"]->Fill(tk.dz(BSPosition_)); }
428 
429 // if(mapME[collectionLabel+"validhits"]) { mapME[collectionLabel+"validhits"]->Fill(tk.numberOfValidHits()); }
430 // if(mapME[collectionLabel+"normchi"]){ mapME[collectionLabel+"normchi"]->Fill(tk.normalizedChi2()); }
431  }
432 
433  if(mapME[collectionLabel+"nrcand"]){ mapME[collectionLabel+"nrcand"]->Fill( candidateVector.size());}
434 }
int i
Definition: DBlmapReader.cc:9
virtual double p() const
magnitude of momentum vector
virtual double eta() const
momentum pseudorapidity
virtual int charge() const
electric charge
virtual double pt() const
transverse momentum
virtual double phi() const
momentum azimuthal angle

Member Data Documentation

edm::InputTag HLTOniaSource::beamSpotTag_
private

Definition at line 64 of file HLTOniaSource.h.

Referenced by analyze(), and HLTOniaSource().

reco::BeamSpot::Point HLTOniaSource::BSPosition_
private

Definition at line 41 of file HLTOniaSource.h.

Referenced by analyze().

DQMStore* HLTOniaSource::dbe_
private
bool HLTOniaSource::hltConfigInit_
private

Definition at line 73 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

std::string HLTOniaSource::hltProcessName_
private

Definition at line 56 of file HLTOniaSource.h.

Referenced by beginRun(), and HLTOniaSource().

std::map<std::string, MonitorElement *> HLTOniaSource::massME_
private

Definition at line 72 of file HLTOniaSource.h.

Referenced by beginRun(), bookOniaTriggerInvariantMassMEs(), and fillInvariantMass().

std::map<std::string, MonitorElement *> HLTOniaSource::muonME_
private

Definition at line 70 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

std::vector<edm::InputTag> HLTOniaSource::oniaMuonTag_
private

Definition at line 59 of file HLTOniaSource.h.

Referenced by analyze(), beginRun(), and HLTOniaSource().

std::map<std::string, MonitorElement *> HLTOniaSource::pixelAfterFilterME_
private

Definition at line 67 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

std::map<std::string, MonitorElement *> HLTOniaSource::pixelME_
private

Definition at line 69 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

edm::InputTag HLTOniaSource::pixelTag_
private

Definition at line 63 of file HLTOniaSource.h.

Referenced by analyze(), beginRun(), and HLTOniaSource().

std::vector<edm::InputTag> HLTOniaSource::pixelTagsAfterFilter_
private

Definition at line 60 of file HLTOniaSource.h.

Referenced by analyze(), beginRun(), and HLTOniaSource().

std::string HLTOniaSource::subsystemFolder_
private

Definition at line 55 of file HLTOniaSource.h.

Referenced by beginRun(), and HLTOniaSource().

std::map<std::string, MonitorElement *> HLTOniaSource::trackAfterFilterME_
private

Definition at line 68 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

std::map<std::string, MonitorElement *> HLTOniaSource::trackME_
private

Definition at line 71 of file HLTOniaSource.h.

Referenced by analyze(), and beginRun().

edm::InputTag HLTOniaSource::trackTag_
private

Definition at line 65 of file HLTOniaSource.h.

Referenced by analyze(), beginRun(), and HLTOniaSource().

std::vector<edm::InputTag> HLTOniaSource::trackTagsAfterFilter_
private

Definition at line 61 of file HLTOniaSource.h.

Referenced by analyze(), beginRun(), and HLTOniaSource().

std::vector< std::string> HLTOniaSource::triggerPath_
private

Definition at line 58 of file HLTOniaSource.h.

Referenced by checkHLTConfiguration(), and HLTOniaSource().

edm::InputTag HLTOniaSource::triggerSummaryRAWTag_
private

Definition at line 62 of file HLTOniaSource.h.

Referenced by analyze(), and HLTOniaSource().