CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
BPHHistoSpecificDecay Class Reference

#include <BPHHistoSpecificDecay.h>

Inheritance diagram for BPHHistoSpecificDecay:
BPHAnalyzerWrapper< BPHModuleWrapper::one_analyzer > edm::one::EDAnalyzer< T > edm::one::EDAnalyzerBase edm::EDConsumerBase

Classes

class  CandidateSelect
 

Public Member Functions

void analyze (const edm::Event &ev, const edm::EventSetup &es) override
 
void beginJob () override
 
 BPHHistoSpecificDecay (const edm::ParameterSet &ps)
 
void endJob () override
 
 ~BPHHistoSpecificDecay () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< T >
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void createHisto (const std::string &name, int nbin, float hmin, float hmax)
 
void fillHisto (const std::string &name, const pat::CompositeCandidate &cand)
 
void fillHisto (const std::string &name, float x)
 

Private Attributes

std::string bdCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bdCandsToken
 
CandidateSelectbdJPsiBasicSelect
 
CandidateSelectbdJPsiDaughterSelect
 
CandidateSelectbdKx0BasicSelect
 
CandidateSelectbdVertexSelect
 
std::string bsCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bsCandsToken
 
CandidateSelectbsJPsiBasicSelect
 
CandidateSelectbsJPsiDaughterSelect
 
CandidateSelectbsPhiBasicSelect
 
CandidateSelectbsVertexSelect
 
std::string buCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > buCandsToken
 
CandidateSelectbuJPsiBasicSelect
 
CandidateSelectbuJPsiDaughterSelect
 
double buKPtMin
 
CandidateSelectbuVertexSelect
 
edm::Service< TFileServicefs
 
std::map< std::string, TH1F * > histoMap
 
CandidateSelectjPsiBasicSelect
 
std::string oniaCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > oniaCandsToken
 
CandidateSelectoniaDaughterSelect
 
CandidateSelectoniaVertexSelect
 
CandidateSelectphiBasicSelect
 
CandidateSelectpsi2BasicSelect
 
std::string sdCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > sdCandsToken
 
std::string ssCandsLabel
 
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > ssCandsToken
 
CandidateSelectupsBasicSelect
 
bool useBd
 
bool useBs
 
bool useBu
 
bool useOnia
 
bool useSd
 
bool useSs
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from BPHAnalyzerWrapper< BPHModuleWrapper::one_analyzer >
void consume (BPHTokenWrapper< Obj > &tw, const std::string &label)
 
void consume (BPHTokenWrapper< Obj > &tw, const edm::InputTag &tag)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<typename ESProduct , Transition Tr = Transition::Event>
auto esConsumes (eventsetup::EventSetupRecordKey const &, ESInputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 25 of file BPHHistoSpecificDecay.h.

Constructor & Destructor Documentation

BPHHistoSpecificDecay::BPHHistoSpecificDecay ( const edm::ParameterSet ps)
explicit

Definition at line 362 of file BPHHistoSpecificDecay.cc.

References BPHParticleMasses::jPsiMass, BPHParticleMasses::kx0Mass, BPHParticleMasses::phiMass, and SET_LABEL.

362  {
363 
364  useOnia = ( SET_LABEL( oniaCandsLabel, ps ) != "" );
365  useSd = ( SET_LABEL( sdCandsLabel, ps ) != "" );
366  useSs = ( SET_LABEL( ssCandsLabel, ps ) != "" );
367  useBu = ( SET_LABEL( buCandsLabel, ps ) != "" );
368  useBd = ( SET_LABEL( bdCandsLabel, ps ) != "" );
369  useBs = ( SET_LABEL( bsCandsLabel, ps ) != "" );
370  if ( useOnia ) consume< vector<pat::CompositeCandidate> >( oniaCandsToken,
371  oniaCandsLabel );
372  if ( useSd ) consume< vector<pat::CompositeCandidate> >( sdCandsToken,
373  sdCandsLabel );
374  if ( useSs ) consume< vector<pat::CompositeCandidate> >( ssCandsToken,
375  ssCandsLabel );
376  if ( useBu ) consume< vector<pat::CompositeCandidate> >( buCandsToken,
377  buCandsLabel );
378  if ( useBd ) consume< vector<pat::CompositeCandidate> >( bdCandsToken,
379  bdCandsLabel );
380  if ( useBs ) consume< vector<pat::CompositeCandidate> >( bsCandsToken,
381  bsCandsLabel );
382 
383  static const BPHSoftMuonSelect sms;
384 
385  double phiMassMin = 0.85;
386  double phiMassMax = 3.30;
387  double phiPtMin = 16.0;
388  double phiEtaMax = -1.0;
389  double phiRMax = -1.0;
390  double jPsiMassMin = 2.95;
391  double jPsiMassMax = 3.30;
392  double jPsiPtMin = 16.0;
393  double jPsiEtaMax = -1.0;
394  double jPsiRMax = -1.0;
395  double psi2MassMin = 3.40;
396  double psi2MassMax = 4.00;
397  double psi2PtMin = 13.0;
398  double psi2EtaMax = -1.0;
399  double psi2RMax = -1.0;
400  double upsMassMin = 8.50;
401  double upsMassMax = 11.0;
402  double upsPtMin = 13.0;
403  double upsEtaMax = -1.0;
404  double upsRMax = -1.0;
405 
406  double oniaProbMin = 0.005;
407  double oniaCosMin = -1.0;
408  double oniaSigMin = -1.0;
409 
410  double oniaMuPtMinLoose = -1.0;
411  double oniaMuPtMinTight = -1.0;
412  double oniaMuEtaMaxLoose = -1.0;
413  double oniaMuEtaMaxTight = -1.0;
414 
416  phiMassMin, phiMassMax,
417  phiPtMin , phiEtaMax , phiRMax );
419  jPsiMassMin, jPsiMassMax,
420  jPsiPtMin , jPsiEtaMax , jPsiRMax );
422  psi2MassMin, psi2MassMax,
423  psi2PtMin , psi2EtaMax , psi2RMax );
425  upsMassMin, upsMassMax,
426  upsPtMin , upsEtaMax , upsRMax );
428  oniaProbMin, oniaCosMin, oniaSigMin );
430  oniaMuPtMinLoose , oniaMuPtMinTight ,
431  oniaMuEtaMaxLoose, oniaMuEtaMaxTight, &sms );
432 
433  double buJPsiMassMin = BPHParticleMasses::jPsiMass - 0.150;
434  double buJPsiMassMax = BPHParticleMasses::jPsiMass + 0.150;
435  double buJPsiPtMin = 8.0;
436  double buJPsiEtaMax = -1.0;
437  double buJPsiRMax = -1.0;
438  double buProbMin = 0.10;
439  double buCosMin = 0.99;
440  double buSigMin = 3.0;
441  double buMuPtMinLoose = 4.0;
442  double buMuPtMinTight = 4.0;
443  double buMuEtaMaxLoose = 2.2;
444  double buMuEtaMaxTight = 2.2;
445 
446  buKPtMin = 1.6;
447 
449  buJPsiMassMin, buJPsiMassMax,
450  buJPsiPtMin , buJPsiEtaMax , buJPsiRMax );
452  buProbMin, buCosMin, buSigMin );
454  buMuPtMinLoose , buMuPtMinTight ,
455  buMuEtaMaxLoose, buMuEtaMaxTight, &sms );
456 
457  double bdJPsiMassMin = BPHParticleMasses::jPsiMass - 0.150;
458  double bdJPsiMassMax = BPHParticleMasses::jPsiMass + 0.150;
459  double bdJPsiPtMin = 8.0;
460  double bdJPsiEtaMax = -1.0;
461  double bdJPsiRMax = -1.0;
462  double bdKx0MassMin = BPHParticleMasses::kx0Mass - 0.075;
463  double bdKx0MassMax = BPHParticleMasses::kx0Mass + 0.075;
464  double bdKx0PtMin = -1.0;
465  double bdKx0EtaMax = -1.0;
466  double bdKx0RMax = -1.0;
467  double bdProbMin = 0.10;
468  double bdCosMin = 0.99;
469  double bdSigMin = 3.0;
470  double bdMuPtMinLoose = 4.0;
471  double bdMuPtMinTight = 4.0;
472  double bdMuEtaMaxLoose = 2.2;
473  double bdMuEtaMaxTight = 2.2;
474 
476  bdJPsiMassMin, bdJPsiMassMax,
477  bdJPsiPtMin , bdJPsiEtaMax , bdJPsiRMax );
479  bdKx0MassMin, bdKx0MassMax,
480  bdKx0PtMin , bdKx0EtaMax , bdKx0RMax );
482  bdProbMin, bdCosMin, bdSigMin );
484  bdMuPtMinLoose , bdMuPtMinTight ,
485  bdMuEtaMaxLoose, bdMuEtaMaxTight, &sms );
486 
487  double bsJPsiMassMin = BPHParticleMasses::jPsiMass - 0.150;
488  double bsJPsiMassMax = BPHParticleMasses::jPsiMass + 0.150;
489  double bsJPsiPtMin = 8.0;
490  double bsJPsiEtaMax = -1.0;
491  double bsJPsiRMax = -1.0;
492  double bsPhiMassMin = BPHParticleMasses::phiMass - 0.010;
493  double bsPhiMassMax = BPHParticleMasses::phiMass + 0.010;
494  double bsPhiPtMin = -1.0;
495  double bsPhiEtaMax = -1.0;
496  double bsPhiRMax = -1.0;
497  double bsProbMin = 0.10;
498  double bsCosMin = 0.99;
499  double bsSigMin = 3.0;
500  double bsMuPtMinLoose = 4.0;
501  double bsMuPtMinTight = 4.0;
502  double bsMuEtaMaxLoose = 2.2;
503  double bsMuEtaMaxTight = 2.2;
505  bsJPsiMassMin, bsJPsiMassMax,
506  bsJPsiPtMin , bsJPsiEtaMax , bsJPsiRMax );
508  bsPhiMassMin, bsPhiMassMax,
509  bsPhiPtMin , bsPhiEtaMax , bsPhiRMax );
511  bsProbMin, bsCosMin, bsSigMin );
513  bsMuPtMinLoose , bsMuPtMinTight ,
514  bsMuEtaMaxLoose, bsMuEtaMaxTight, &sms );
515 
516 }
CandidateSelect * bsJPsiBasicSelect
CandidateSelect * upsBasicSelect
CandidateSelect * jPsiBasicSelect
CandidateSelect * phiBasicSelect
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > sdCandsToken
static const double jPsiMass
CandidateSelect * buVertexSelect
CandidateSelect * bdJPsiBasicSelect
CandidateSelect * bsVertexSelect
CandidateSelect * bsJPsiDaughterSelect
CandidateSelect * buJPsiDaughterSelect
static const double kx0Mass
CandidateSelect * bdJPsiDaughterSelect
CandidateSelect * bdKx0BasicSelect
CandidateSelect * psi2BasicSelect
CandidateSelect * oniaDaughterSelect
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > oniaCandsToken
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bsCandsToken
CandidateSelect * bdVertexSelect
CandidateSelect * bsPhiBasicSelect
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > buCandsToken
static const double phiMass
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > ssCandsToken
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bdCandsToken
CandidateSelect * oniaVertexSelect
CandidateSelect * buJPsiBasicSelect
#define SET_LABEL(NAME, PSET)
BPHHistoSpecificDecay::~BPHHistoSpecificDecay ( )
override

Definition at line 519 of file BPHHistoSpecificDecay.cc.

519  {
520 
521  delete phiBasicSelect;
522  delete jPsiBasicSelect;
523  delete psi2BasicSelect;
524  delete upsBasicSelect;
525  delete oniaVertexSelect;
526  delete oniaDaughterSelect;
527 
528  delete buJPsiBasicSelect;
529  delete buVertexSelect;
530  delete buJPsiDaughterSelect;
531 
532  delete bdJPsiBasicSelect;
533  delete bdKx0BasicSelect;
534  delete bdVertexSelect;
535  delete bdJPsiDaughterSelect;
536 
537  delete bsJPsiBasicSelect;
538  delete bsPhiBasicSelect;
539  delete bsVertexSelect;
540  delete bsJPsiDaughterSelect;
541 
542 }
CandidateSelect * bsJPsiBasicSelect
CandidateSelect * upsBasicSelect
CandidateSelect * jPsiBasicSelect
CandidateSelect * phiBasicSelect
CandidateSelect * buVertexSelect
CandidateSelect * bdJPsiBasicSelect
CandidateSelect * bsVertexSelect
CandidateSelect * bsJPsiDaughterSelect
CandidateSelect * buJPsiDaughterSelect
CandidateSelect * bdJPsiDaughterSelect
CandidateSelect * bdKx0BasicSelect
CandidateSelect * psi2BasicSelect
CandidateSelect * oniaDaughterSelect
CandidateSelect * bdVertexSelect
CandidateSelect * bsPhiBasicSelect
CandidateSelect * oniaVertexSelect
CandidateSelect * buJPsiBasicSelect

Member Function Documentation

void BPHHistoSpecificDecay::analyze ( const edm::Event ev,
const edm::EventSetup es 
)
override

Definition at line 581 of file BPHHistoSpecificDecay.cc.

References accept(), BPHDaughters::get(), edm::EventSetup::get(), BPHUserData::getByRef(), LogTrace, seedCreatorFromRegionConsecutiveHitsEDProducer_cff::magneticField, and reco::Candidate::pt().

582  {
583 
584  // get magnetic field
586  es.get<IdealMagneticFieldRecord>().get( magneticField );
587 
588  // get object collections
589  // collections are got through "BPHTokenWrapper" interface to allow
590  // uniform access in different CMSSW versions
591 
593 
595  int iqo;
596  int nqo = 0;
597  if ( useOnia ) {
598  oniaCandsToken.get( ev, oniaCands );
599  nqo = oniaCands->size();
600  }
601 
602  for ( iqo = 0; iqo < nqo; ++ iqo ) {
603  LogTrace( "DataDump" )
604  << "*********** quarkonium " << iqo << "/" << nqo << " ***********";
605  const pat::CompositeCandidate& cand = oniaCands->at( iqo );
606  if ( !oniaVertexSelect->accept( cand,
607  BPHUserData::getByRef<reco::Vertex>( cand,
608  "primaryVertex" ) ) ) continue;
609  if ( !oniaDaughterSelect->accept( cand ) ) continue;
610  fillHisto( "Full", cand );
611  if ( phiBasicSelect->accept( cand ) ) fillHisto( "Phi" , cand );
612  if ( jPsiBasicSelect->accept( cand ) ) fillHisto( "JPsi" , cand );
613  if ( psi2BasicSelect->accept( cand ) ) fillHisto( "Psi2" , cand );
614  if ( upsBasicSelect->accept( cand ) ) fillHisto( "Ups123", cand );
615  }
616 
618 
620  int ibu;
621  int nbu = 0;
622  if ( useBu ) {
623  buCandsToken.get( ev, buCands );
624  nbu = buCands->size();
625  }
626 
627  for ( ibu = 0; ibu < nbu; ++ ibu ) {
628  LogTrace( "DataDump" )
629  << "*********** Bu " << ibu << "/" << nbu << " ***********";
630  const pat::CompositeCandidate& cand = buCands->at( ibu );
632  <pat::CompositeCandidate>( cand, "refToJPsi" );
633  LogTrace( "DataDump" )
634  << "JPsi: " << jPsi;
635  if ( jPsi == nullptr ) continue;
636  if ( !buJPsiBasicSelect ->accept( *jPsi ) ) continue;
637  if ( !buJPsiDaughterSelect->accept( *jPsi ) ) continue;
638  if ( !buVertexSelect->accept( cand,
639  BPHUserData::getByRef<reco::Vertex>( *jPsi,
640  "primaryVertex" ) ) ) continue;
641  const reco::Candidate* kptr = BPHDaughters::get( cand, 0.49, 0.50 ).front();
642  if ( kptr == nullptr ) continue;
643  if ( kptr->pt() < buKPtMin ) continue;
644  fillHisto( "Bu" , cand );
645  fillHisto( "BuJPsi", *jPsi );
646  }
647 
649 
651  int ibd;
652  int nbd = 0;
653  if ( useBd ) {
654  bdCandsToken.get( ev, bdCands );
655  nbd = bdCands->size();
656  }
657 
658  for ( ibd = 0; ibd < nbd; ++ ibd ) {
659  LogTrace( "DataDump" )
660  << "*********** Bd " << ibd << "/" << nbd << " ***********";
661  const pat::CompositeCandidate& cand = bdCands->at( ibd );
663  <pat::CompositeCandidate>( cand, "refToJPsi" );
664  LogTrace( "DataDump" )
665  << "JPsi: " << jPsi;
666  if ( jPsi == nullptr ) continue;
668  <pat::CompositeCandidate>( cand, "refToKx0" );
669  LogTrace( "DataDump" )
670  << "Kx0: " << kx0;
671  if ( kx0 == nullptr ) continue;
672  if ( !bdJPsiBasicSelect ->accept( *jPsi ) ) continue;
673  if ( !bdKx0BasicSelect ->accept( * kx0 ) ) continue;
674  if ( !bdJPsiDaughterSelect->accept( *jPsi ) ) continue;
675  if ( !bdVertexSelect->accept( cand,
676  BPHUserData::getByRef<reco::Vertex>( *jPsi,
677  "primaryVertex" ) ) ) continue;
678  fillHisto( "Bd" , cand );
679  fillHisto( "BdJPsi", *jPsi );
680  fillHisto( "BdKx0" , *kx0 );
681  }
682 
684 
686  int ibs;
687  int nbs = 0;
688  if ( useBs ) {
689  bsCandsToken.get( ev, bsCands );
690  nbs = bsCands->size();
691  }
692 
693  for ( ibs = 0; ibs < nbs; ++ ibs ) {
694  LogTrace( "DataDump" )
695  << "*********** Bs " << ibs << "/" << nbs << " ***********";
696  const pat::CompositeCandidate& cand = bsCands->at( ibs );
698  <pat::CompositeCandidate>( cand, "refToJPsi" );
699  LogTrace( "DataDump" )
700  << "JPsi: " << jPsi;
701  if ( jPsi == nullptr ) continue;
703  <pat::CompositeCandidate>( cand, "refToPhi" );
704  LogTrace( "DataDump" )
705  << "Phi: " << phi;
706  if ( phi == nullptr ) continue;
707  if ( !bsJPsiBasicSelect ->accept( *jPsi ) ) continue;
708  if ( !bsPhiBasicSelect ->accept( * phi ) ) continue;
709  if ( !bsJPsiDaughterSelect->accept( *jPsi ) ) continue;
710  if ( !bsVertexSelect->accept( cand,
711  BPHUserData::getByRef<reco::Vertex>( *jPsi,
712  "primaryVertex" ) ) ) continue;
713  fillHisto( "Bs" , cand );
714  fillHisto( "BsJPsi", *jPsi );
715  fillHisto( "BsPhi" , *phi );
716  }
717 
718 
719  return;
720 
721 }
Analysis-level particle class.
CandidateSelect * bsJPsiBasicSelect
virtual bool accept(const pat::CompositeCandidate &cand, const reco::Vertex *pv=0) const =0
CandidateSelect * upsBasicSelect
static const T * getByRef(const pat::CompositeCandidate &cand, const string &name)
CandidateSelect * jPsiBasicSelect
CandidateSelect * phiBasicSelect
bool get(const edm::Event &ev, edm::Handle< Obj > &obj)
CandidateSelect * buVertexSelect
CandidateSelect * bdJPsiBasicSelect
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:30
CandidateSelect * bsVertexSelect
CandidateSelect * bsJPsiDaughterSelect
CandidateSelect * buJPsiDaughterSelect
CandidateSelect * bdJPsiDaughterSelect
CandidateSelect * bdKx0BasicSelect
CandidateSelect * psi2BasicSelect
CandidateSelect * oniaDaughterSelect
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > oniaCandsToken
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bsCandsToken
CandidateSelect * bdVertexSelect
CandidateSelect * bsPhiBasicSelect
#define LogTrace(id)
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > buCandsToken
virtual double pt() const =0
transverse momentum
BPHTokenWrapper< std::vector< pat::CompositeCandidate > > bdCandsToken
CandidateSelect * oniaVertexSelect
T get() const
Definition: EventSetup.h:68
static vector< const reco::Candidate * > get(const pat::CompositeCandidate &cand, float massMin, float massMax)
CandidateSelect * buJPsiBasicSelect
void fillHisto(const std::string &name, const pat::CompositeCandidate &cand)
void BPHHistoSpecificDecay::beginJob ( void  )
overridevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 559 of file BPHHistoSpecificDecay.cc.

559  {
560  createHisto( "massPhi" , 35, 0.85, 1.20 ); // Phi mass
561  createHisto( "massJPsi" , 35, 2.95, 3.30 ); // JPsi mass
562  createHisto( "massPsi2" , 60, 3.40, 4.00 ); // Psi2 mass
563  createHisto( "massUps123" , 125, 8.50, 11.0 ); // Ups mass
564  createHisto( "massBu" , 50, 5.00, 6.00 ); // Bu mass
565  createHisto( "massBd" , 50, 5.00, 6.00 ); // Bd mass
566  createHisto( "massBs" , 50, 5.00, 6.00 ); // Bs mass
567  createHisto( "mfitBu" , 50, 5.00, 6.00 ); // Bu mass, with constraint
568  createHisto( "mfitBd" , 50, 5.00, 6.00 ); // Bd mass, with constraint
569  createHisto( "mfitBs" , 50, 5.00, 6.00 ); // Bs mass, with constraint
570  createHisto( "massBuJPsi" , 35, 2.95, 3.30 ); // JPsi mass in Bu decay
571  createHisto( "massBdJPsi" , 35, 2.95, 3.30 ); // JPsi mass in Bd decay
572  createHisto( "massBsJPsi" , 35, 2.95, 3.30 ); // JPsi mass in Bs decay
573  createHisto( "massBsPhi" , 50, 1.01, 1.03 ); // Phi mass in Bs decay
574  createHisto( "massBdKx0" , 50, 0.80, 1.05 ); // Kx0 mass in Bd decay
575 
576  createHisto( "massFull" , 200, 2.00, 12.0 ); // Full onia mass
577 
578  return;
579 }
void createHisto(const std::string &name, int nbin, float hmin, float hmax)
void BPHHistoSpecificDecay::createHisto ( const std::string &  name,
int  nbin,
float  hmin,
float  hmax 
)
private

Definition at line 748 of file BPHHistoSpecificDecay.cc.

References DEFINE_FWK_MODULE, and dataset::name.

749  {
750  histoMap[name] = fs->make<TH1F>( name.c_str(), name.c_str(),
751  nbin, hmin, hmax );
752  return;
753 }
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
std::map< std::string, TH1F * > histoMap
edm::Service< TFileService > fs
void BPHHistoSpecificDecay::endJob ( void  )
overridevirtual
void BPHHistoSpecificDecay::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 545 of file BPHHistoSpecificDecay.cc.

References edm::ConfigurationDescriptions::add(), and edm::ParameterSetDescription::add().

546  {
548  desc.add<string>( "oniaCandsLabel", "" );
549  desc.add<string>( "sdCandsLabel", "" );
550  desc.add<string>( "ssCandsLabel", "" );
551  desc.add<string>( "buCandsLabel", "" );
552  desc.add<string>( "bdCandsLabel", "" );
553  desc.add<string>( "bsCandsLabel", "" );
554  descriptions.add( "bphHistoSpecificDecay", desc );
555  return;
556 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
void BPHHistoSpecificDecay::fillHisto ( const std::string &  name,
const pat::CompositeCandidate cand 
)
private

Referenced by endJob().

void BPHHistoSpecificDecay::fillHisto ( const std::string &  name,
float  x 
)
private

Member Data Documentation

std::string BPHHistoSpecificDecay::bdCandsLabel
private

Definition at line 52 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::bdCandsToken
private

Definition at line 58 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bdJPsiBasicSelect
private

Definition at line 81 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bdJPsiDaughterSelect
private

Definition at line 84 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bdKx0BasicSelect
private

Definition at line 82 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bdVertexSelect
private

Definition at line 83 of file BPHHistoSpecificDecay.h.

std::string BPHHistoSpecificDecay::bsCandsLabel
private

Definition at line 53 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::bsCandsToken
private

Definition at line 59 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bsJPsiBasicSelect
private

Definition at line 86 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bsJPsiDaughterSelect
private

Definition at line 89 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bsPhiBasicSelect
private

Definition at line 87 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::bsVertexSelect
private

Definition at line 88 of file BPHHistoSpecificDecay.h.

std::string BPHHistoSpecificDecay::buCandsLabel
private

Definition at line 51 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::buCandsToken
private

Definition at line 57 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::buJPsiBasicSelect
private

Definition at line 77 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::buJPsiDaughterSelect
private

Definition at line 79 of file BPHHistoSpecificDecay.h.

double BPHHistoSpecificDecay::buKPtMin
private

Definition at line 91 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::buVertexSelect
private

Definition at line 78 of file BPHHistoSpecificDecay.h.

edm::Service<TFileService> BPHHistoSpecificDecay::fs
private

Definition at line 67 of file BPHHistoSpecificDecay.h.

std::map<std::string,TH1F*> BPHHistoSpecificDecay::histoMap
private

Definition at line 68 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::jPsiBasicSelect
private

Definition at line 71 of file BPHHistoSpecificDecay.h.

std::string BPHHistoSpecificDecay::oniaCandsLabel
private

Definition at line 48 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::oniaCandsToken
private

Definition at line 54 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::oniaDaughterSelect
private

Definition at line 75 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::oniaVertexSelect
private

Definition at line 74 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::phiBasicSelect
private

Definition at line 70 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::psi2BasicSelect
private

Definition at line 72 of file BPHHistoSpecificDecay.h.

std::string BPHHistoSpecificDecay::sdCandsLabel
private

Definition at line 49 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::sdCandsToken
private

Definition at line 55 of file BPHHistoSpecificDecay.h.

std::string BPHHistoSpecificDecay::ssCandsLabel
private

Definition at line 50 of file BPHHistoSpecificDecay.h.

BPHTokenWrapper< std::vector<pat::CompositeCandidate> > BPHHistoSpecificDecay::ssCandsToken
private

Definition at line 56 of file BPHHistoSpecificDecay.h.

CandidateSelect* BPHHistoSpecificDecay::upsBasicSelect
private

Definition at line 73 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useBd
private

Definition at line 64 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useBs
private

Definition at line 65 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useBu
private

Definition at line 63 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useOnia
private

Definition at line 60 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useSd
private

Definition at line 61 of file BPHHistoSpecificDecay.h.

bool BPHHistoSpecificDecay::useSs
private

Definition at line 62 of file BPHHistoSpecificDecay.h.