269 if ( !HLTresults.
isValid() )
return;
272 bool passed_electron_HLT =
true;
273 bool passed_muon_HLT =
true;
282 e.getByLabel(
"offlinePrimaryVertices", vertexHandle);
285 int vertex_number = vertexCollection.size();
286 VertexCollection::const_iterator
v = vertexCollection.begin();
287 double vertex_chi2 = v->normalizedChi2();
288 double vertex_d0 =
sqrt(v->x()*v->x()+v->y()*v->y());
290 double vertex_numTrks = v->tracksSize();
291 double vertex_sumTrks = 0.0;
292 for (
Vertex::trackRef_iterator vertex_curTrack = v->tracks_begin(); vertex_curTrack!=v->tracks_end(); vertex_curTrack++) {
293 vertex_sumTrks += (*vertex_curTrack)->pt();
308 if ( electronCollection.
isValid() ){
309 int posEle=0,negEle=0;
311 if( passed_electron_HLT ) {
312 for (reco::GsfElectronCollection::const_iterator recoElectron=electronCollection->begin(); recoElectron!=electronCollection->end(); recoElectron++){
317 if(recoElectron->charge()==1){
319 }
else if(recoElectron->charge()==-1){
330 nEle = posEle+negEle;
if(nEle>9.) nEle=9.;
334 unsigned int eleCollectionSize = electronCollection->size();
335 for(
unsigned int i=0;
i<eleCollectionSize;
i++) {
337 double pt = ele.
pt();
339 for(
unsigned int j=
i+1;
j<eleCollectionSize;
j++) {
341 double pt2 = ele2.
pt();
359 if ( muonCollection.
isValid() ){
362 TLorentzVector m1, m2;
363 if( passed_muon_HLT ) {
364 for (reco::MuonCollection::const_iterator recoMuon=muonCollection->begin(); recoMuon!=muonCollection->end(); recoMuon++){
366 if(recoMuon->isGlobalMuon()&&recoMuon->isTrackerMuon()){
374 }
else if(recoMuon->isGlobalMuon()){
382 }
else if(recoMuon->isStandAloneMuon()){
387 if ( recoMuon->charge()==1 ){
389 }
else if ( recoMuon->charge()==-1 ){
393 nMu = posMu+negMu;
if(nMu>9.) nMu=9.;
398 unsigned int muonCollectionSize = muonCollection->size();
399 for(
unsigned int i=0;
i<muonCollectionSize;
i++) {
400 const Muon&
mu = muonCollection->at(
i);
404 for(
unsigned int j=
i+1;
j<muonCollectionSize;
j++) {
405 const Muon& mu2 = muonCollection->at(
j);
406 double pt2 = mu2.
pt();
434 if ( caloJetCollection.
isValid() ){
439 float jet2_et = -9.0;
442 for (CaloJetCollection::const_iterator i_calojet = caloJetCollection->begin(); i_calojet != caloJetCollection->end(); i_calojet++) {
443 float jet_current_et = i_calojet->et();
448 if (jet_current_et < 15)
continue;
450 if (jet_current_et > jet_et) {
454 jet_et = i_calojet->et();
457 }
else if (jet_current_et > jet2_et) {
458 jet2_et = i_calojet->et();
474 if ( caloMETCollection.
isValid() ){
475 float caloMet = caloMETCollection->begin()->et();
476 float caloMet_phi = caloMETCollection->begin()->phi();
482 if ( pfMETCollection.
isValid() ){
483 float pfMet = pfMETCollection->begin()->et();
484 float pfMet_phi = pfMETCollection->begin()->phi();
492 if(nMu+nEle > 2 && nMu+nEle < 10){
545 if ((nMu+nEle) >= 10)
546 LogDebug(
"HiggsDQM") <<
"WARNING: "<<nMu+nEle<<
" leptons in this event: run="<<
e.id().run()<<
", event="<<
e.id().event()<<
"\n";
edm::InputTag theTriggerResultsCollection
MonitorElement * h_mPhi_TM
MonitorElement * h_mPt_TM
MonitorElement * h_vertex_numTrks
virtual double p() const GCC11_FINAL
magnitude of momentum vector
bool isTrackerMuon() const
MonitorElement * h_mEta_GMTM
MonitorElement * h_mPhi_GM
MonitorElement * h_mEta_TM
bool isGlobalMuon() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
edm::InputTag theCaloJetCollectionLabel
edm::InputTag thePfMETCollectionLabel
MonitorElement * h_mPt_STAM
virtual double pz() const GCC11_FINAL
z coordinate of momentum vector
virtual double py() const GCC11_FINAL
y coordinate of momentum vector
MonitorElement * h_vertex_d0
MonitorElement * h_dimumass_GMGM
edm::InputTag theElectronCollectionLabel
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
MonitorElement * h_jet_count
MonitorElement * h_mPt_GMPT
MonitorElement * h_pfMet_phi
virtual double px() const GCC11_FINAL
x coordinate of momentum vector
float segmentCompatibility(const reco::Muon &muon, reco::Muon::ArbitrationType arbitrationType=reco::Muon::SegmentAndTrackArbitration)
MonitorElement * h_mPhi_GMPT
MonitorElement * h_jet_et
bool isGoodMuon(const reco::Muon &muon, SelectionType type, reco::Muon::ArbitrationType arbitrationType=reco::Muon::SegmentAndTrackArbitration)
main GoodMuon wrapper call
edm::InputTag theMuonCollectionLabel
MonitorElement * h_eMultiplicity
MonitorElement * h_vertex_chi2
MonitorElement * h_vertex_number
MonitorElement * h_dimumass_GMTM
MonitorElement * h_mEta_GMPT
T const * product() const
MonitorElement * h_vertex_sumTrks
MonitorElement * h_caloMet
MonitorElement * h_mPt_GMTM
MonitorElement * h_caloMet_phi
MonitorElement * h_mPhi_STAM
std::vector< TrackBaseRef >::const_iterator trackRef_iterator
The iteratator for the vector<TrackRef>
MonitorElement * h_mEta_STAM
MonitorElement * h_mEta_GM
MonitorElement * h_dielemass
MonitorElement * h_mPt_GM
edm::InputTag theCaloMETCollectionLabel
MonitorElement * h_mPhi_GMTM
virtual float pt() const GCC11_FINAL
transverse momentum
MonitorElement * h_dimumass_TMTM
MonitorElement * h_lepcounts
MonitorElement * h_mMultiplicity