CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
ZeePlots Class Reference

#include <ZeePlots.h>

Inheritance diagram for ZeePlots:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

void bookEleClassesPlots ()
 
void bookEleHistograms ()
 
void bookEleMCHistograms ()
 
void bookHLTHistograms ()
 
void bookZHistograms ()
 
void bookZMCHistograms ()
 
void fillEleClassesPlots (calib::CalibElectron *)
 
void fillEleInfo (const reco::GsfElectronCollection *)
 
void fillEleMCInfo (const HepMC::GenEvent *)
 
void fillHLTInfo (edm::Handle< edm::TriggerResults >)
 
void fillZInfo (std::pair< calib::CalibElectron *, calib::CalibElectron * > myZeeCandidate)
 
void fillZMCInfo (const HepMC::GenEvent *)
 
void openFile ()
 
void writeEleClassesPlots ()
 
void writeEleHistograms ()
 
void writeHLTHistograms ()
 
void writeMCEleHistograms ()
 
void writeMCZHistograms ()
 
void writeZHistograms ()
 
 ZeePlots (const edm::ParameterSet &)
 
 ZeePlots (const char *)
 
 ~ZeePlots () override
 
 ~ZeePlots ()
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () 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
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
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)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
Bool_t CheckCut1 (const pat::Electron *, Int_t)
 
Bool_t CheckCut1Inv (const pat::Electron *, Int_t)
 
Bool_t CheckCut2 (const pat::Electron *, Int_t)
 
Bool_t CheckCut2Inv (const pat::Electron *, Int_t)
 
Bool_t CheckCuts1 (const pat::Electron *)
 
Bool_t CheckCuts1Inverse (const pat::Electron *)
 
Bool_t CheckCuts1NminusOne (const pat::Electron *, Int_t)
 
Bool_t CheckCuts2 (const pat::Electron *)
 
Bool_t CheckCuts2Inverse (const pat::Electron *)
 
Bool_t CheckCuts2NminusOne (const pat::Electron *, Int_t)
 
void endJob () override
 
Bool_t PassPreselectionCriteria1 (const pat::Electron *)
 
Bool_t PassPreselectionCriteria2 (const pat::Electron *)
 
Double_t ReturnCandVar (const pat::Electron *, Int_t)
 

Private Attributes

Float_t calojet_et [5]
 
Float_t calojet_eta [5]
 
Float_t calojet_phi [5]
 
edm::EDGetTokenT< reco::CaloJetCollectioncaloJetCollectionToken_
 
Double_t cIso1_EB_
 
Bool_t cIso1_EB_inv
 
Double_t cIso1_EE_
 
Bool_t cIso1_EE_inv
 
Double_t cIso2_EB_
 
Bool_t cIso2_EB_inv
 
Double_t cIso2_EE_
 
Bool_t cIso2_EE_inv
 
std::vector< Double_t > CutVars1_
 
std::vector< Double_t > CutVars2_
 
Int_t DatasetTag_
 
Double_t deta1_EB_
 
Bool_t deta1_EB_inv
 
Double_t deta1_EE_
 
Bool_t deta1_EE_inv
 
Double_t deta2_EB_
 
Bool_t deta2_EB_inv
 
Double_t deta2_EE_
 
Bool_t deta2_EE_inv
 
Double_t dphi1_EB_
 
Bool_t dphi1_EB_inv
 
Double_t dphi1_EE_
 
Bool_t dphi1_EE_inv
 
Double_t dphi2_EB_
 
Bool_t dphi2_EB_inv
 
Double_t dphi2_EE_
 
Bool_t dphi2_EE_inv
 
Double_t DRJetFromElectron_
 
Double_t ecalIso1_EB_
 
Bool_t ecalIso1_EB_inv
 
Double_t ecalIso1_EE_
 
Bool_t ecalIso1_EE_inv
 
Double_t ecalIso2_EB_
 
Bool_t ecalIso2_EB_inv
 
Double_t ecalIso2_EE_
 
Bool_t ecalIso2_EE_inv
 
Double_t ecalIsoUser1_EB_
 
Bool_t ecalIsoUser1_EB_inv
 
Double_t ecalIsoUser1_EE_
 
Bool_t ecalIsoUser1_EE_inv
 
Double_t ecalIsoUser2_EB_
 
Bool_t ecalIsoUser2_EB_inv
 
Double_t ecalIsoUser2_EE_
 
Bool_t ecalIsoUser2_EE_inv
 
Float_t ele1_cand_et
 
Float_t ele1_cand_eta
 
Float_t ele1_cand_phi
 
Float_t ele1_cr_dcot
 
Float_t ele1_cr_dist
 
Float_t ele1_cr_mhitsinner
 
Int_t ele1_ctfCharge
 
Float_t ele1_eop
 
Int_t ele1_gsfCharge
 
Float_t ele1_id_deta
 
Float_t ele1_id_dphi
 
Float_t ele1_id_hoe
 
Float_t ele1_id_sihih
 
Float_t ele1_iso_ecal
 
Float_t ele1_iso_hcal
 
Float_t ele1_iso_track
 
Float_t ele1_sc_energy
 
Float_t ele1_sc_eta
 
Float_t ele1_sc_gsf_et
 
Float_t ele1_sc_phi
 
Int_t ele1_scPixCharge
 
Float_t ele1_tip_bs
 
Float_t ele1_tip_pv
 
Float_t ele1_vx
 
Float_t ele1_vy
 
Float_t ele1_vz
 
Float_t ele2_cand_et
 
Float_t ele2_cand_eta
 
Float_t ele2_cand_phi
 
Float_t ele2_cr_dcot
 
Float_t ele2_cr_dist
 
Float_t ele2_cr_mhitsinner
 
Int_t ele2_ctfCharge
 
Float_t ele2_eop
 
Int_t ele2_gsfCharge
 
Float_t ele2_id_deta
 
Float_t ele2_id_dphi
 
Float_t ele2_id_hoe
 
Float_t ele2_id_sihih
 
Float_t ele2_iso_ecal
 
Float_t ele2_iso_hcal
 
Float_t ele2_iso_track
 
Float_t ele2_sc_energy
 
Float_t ele2_sc_eta
 
Float_t ele2_sc_gsf_et
 
Float_t ele2_sc_phi
 
Int_t ele2_scPixCharge
 
Float_t ele2_tip_bs
 
Float_t ele2_tip_pv
 
Float_t ele2_vx
 
Float_t ele2_vy
 
Float_t ele2_vz
 
Double_t eop1_EB_
 
Bool_t eop1_EB_inv
 
Double_t eop1_EE_
 
Bool_t eop1_EE_inv
 
Double_t eop2_EB_
 
Bool_t eop2_EB_inv
 
Double_t eop2_EE_
 
Bool_t eop2_EE_inv
 
Float_t event_caloMET
 
Float_t event_caloMET_phi
 
Int_t event_datasetTag
 
Float_t event_Mee
 
Float_t event_pfMET
 
Float_t event_pfMET_phi
 
Float_t event_tcMET
 
Float_t event_tcMET_phi
 
Long64_t eventNumber
 
TFile * file_
 
const char * fileName_
 
TH1F * h1_FiredTriggers_
 
TH1F * h1_gen_ZEta_
 
TH1F * h1_gen_ZMass_
 
TH1F * h1_gen_ZPhi_
 
TH1F * h1_gen_ZPt_
 
TH1F * h1_gen_ZRapidity_
 
TH1F * h1_HLT1Electron_FiredEvents_
 
TH1F * h1_HLT1Electron_HLT2Electron_FiredEvents_
 
TH1F * h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
 
TH1F * h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_
 
TH1F * h1_HLT2Electron_FiredEvents_
 
TH1F * h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
 
TH1F * h1_HLT2ElectronRelaxed_FiredEvents_
 
TH1F * h1_HLTVisitedEvents_
 
TH1F * h1_mcEle_Energy_
 
TH1F * h1_mcEleEta_
 
TH1F * h1_mcElePhi_
 
TH1F * h1_mcElePt_
 
TH1F * h1_nEleReco_
 
TH1F * h1_occupancyVsEtaCrack_
 
TH1F * h1_occupancyVsEtaGold_
 
TH1F * h1_occupancyVsEtaShower_
 
TH1F * h1_occupancyVsEtaSilver_
 
TH1F * h1_reco_ZEta_
 
TH1F * h1_reco_ZPhi_
 
TH1F * h1_reco_ZPt_
 
TH1F * h1_reco_ZRapidity_
 
TH1F * h1_reco_ZTheta_
 
TH1F * h1_recoEleEnergy_
 
TH1F * h1_recoEleEta_
 
TH1F * h1_recoElePhi_
 
TH1F * h1_recoElePt_
 
TH1F * h_e_ETA
 
TH1F * h_e_PHI
 
TH1F * h_e_PT
 
TH1F * h_EB_deta
 
TH1F * h_EB_dphi
 
TH1F * h_EB_ecaliso
 
TH1F * h_EB_hcaliso
 
TH1F * h_EB_HoE
 
TH1F * h_EB_sIetaIeta
 
TH1F * h_EB_trkiso
 
TH1F * h_EE_deta
 
TH1F * h_EE_dphi
 
TH1F * h_EE_ecaliso
 
TH1F * h_EE_hcaliso
 
TH1F * h_EE_HoE
 
TH1F * h_EE_sIetaIeta
 
TH1F * h_EE_trkiso
 
TH1F * h_mee
 
TH1F * h_mee_EBEB
 
TH1F * h_mee_EBEE
 
TH1F * h_mee_EEEE
 
TH1F * h_trackIso_eb_NmOne
 
TH1F * h_trackIso_ee_NmOne
 
TH1F * h_Zcand_PT
 
TH1F * h_Zcand_Y
 
Double_t hcalIso1_EB_
 
Bool_t hcalIso1_EB_inv
 
Double_t hcalIso1_EE_
 
Bool_t hcalIso1_EE_inv
 
Double_t hcalIso2_EB_
 
Bool_t hcalIso2_EB_inv
 
Double_t hcalIso2_EE_
 
Bool_t hcalIso2_EE_inv
 
Double_t hcalIsoUser1_EB_
 
Bool_t hcalIsoUser1_EB_inv
 
Double_t hcalIsoUser1_EE_
 
Bool_t hcalIsoUser1_EE_inv
 
Double_t hcalIsoUser2_EB_
 
Bool_t hcalIsoUser2_EB_inv
 
Double_t hcalIsoUser2_EE_
 
Bool_t hcalIsoUser2_EE_inv
 
TFile * histofile
 
Double_t hoe1_EB_
 
Bool_t hoe1_EB_inv
 
Double_t hoe1_EE_
 
Bool_t hoe1_EE_inv
 
Double_t hoe2_EB_
 
Bool_t hoe2_EB_inv
 
Double_t hoe2_EE_
 
Bool_t hoe2_EE_inv
 
Bool_t includeJetInformationInNtuples_
 
std::vector< Bool_t > InvVars1_
 
std::vector< Bool_t > InvVars2_
 
Int_t lumiSection
 
Bool_t maxNumberOfExpectedMissingHits1_
 
Bool_t maxNumberOfExpectedMissingHits2_
 
Int_t nBarrelVars_
 
std::string outputFile_
 
Float_t pfjet_et [5]
 
Float_t pfjet_eta [5]
 
Float_t pfjet_phi [5]
 
edm::EDGetTokenT< reco::PFJetCollectionpfJetCollectionToken_
 
Float_t pv_x1
 
Float_t pv_x2
 
Float_t pv_y1
 
Float_t pv_y2
 
Float_t pv_z1
 
Float_t pv_z2
 
Int_t runNumber
 
Double_t sihih1_EB_
 
Bool_t sihih1_EB_inv
 
Double_t sihih1_EE_
 
Bool_t sihih1_EE_inv
 
Double_t sihih2_EB_
 
Bool_t sihih2_EB_inv
 
Double_t sihih2_EE_
 
Bool_t sihih2_EE_inv
 
Double_t tip_bspot1_EB_
 
Bool_t tip_bspot1_EB_inv
 
Double_t tip_bspot1_EE_
 
Bool_t tip_bspot1_EE_inv
 
Double_t tip_bspot2_EB_
 
Bool_t tip_bspot2_EB_inv
 
Double_t tip_bspot2_EE_
 
Bool_t tip_bspot2_EE_inv
 
Double_t trackIso1_EB_
 
Bool_t trackIso1_EB_inv
 
Double_t trackIso1_EE_
 
Bool_t trackIso1_EE_inv
 
Double_t trackIso2_EB_
 
Bool_t trackIso2_EB_inv
 
Double_t trackIso2_EE_
 
Bool_t trackIso2_EE_inv
 
Double_t trackIsoUser1_EB_
 
Bool_t trackIsoUser1_EB_inv
 
Double_t trackIsoUser1_EE_
 
Bool_t trackIsoUser1_EE_inv
 
Double_t trackIsoUser2_EB_
 
Bool_t trackIsoUser2_EB_inv
 
Double_t trackIsoUser2_EE_
 
Bool_t trackIsoUser2_EE_inv
 
Bool_t useConversionRejection1_
 
Bool_t useConversionRejection2_
 
Bool_t useExpectedMissingHits1_
 
Bool_t useExpectedMissingHits2_
 
Bool_t usePrecalcID1_
 
Bool_t usePrecalcID2_
 
std::string usePrecalcIDSign1_
 
std::string usePrecalcIDSign2_
 
std::string usePrecalcIDType1_
 
std::string usePrecalcIDType2_
 
Double_t usePrecalcIDValue1_
 
Double_t usePrecalcIDValue2_
 
Bool_t usePreselection1_
 
Bool_t usePreselection2_
 
Bool_t useSameSelectionOnBothElectrons_
 
Bool_t useValidFirstPXBHit1_
 
Bool_t useValidFirstPXBHit2_
 
TTree * vbtfPresele_tree
 
TTree * vbtfSele_tree
 
TFile * ZEE_VBTFpreseleFile_
 
std::string ZEE_VBTFpreseleFileName_
 
TFile * ZEE_VBTFselectionFile_
 
std::string ZEE_VBTFselectionFileName_
 
edm::EDGetTokenT< pat::CompositeCandidateCollectionzeeCollectionToken_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- 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 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 50 of file ZeePlots.h.

Constructor & Destructor Documentation

ZeePlots::ZeePlots ( const char *  fileName)

Definition at line 34 of file ZeePlots.cc.

References file_, MillePedeFileConverter_cfg::fileName, and fileName_.

34  {
36  file_ = new TFile(fileName_, "RECREATE");
37 }
TFile * file_
Definition: ZeePlots.h:79
const char * fileName_
Definition: ZeePlots.h:80
ZeePlots::~ZeePlots ( )

Definition at line 39 of file ZeePlots.cc.

References file_.

Referenced by ZeePlots().

39  {
40  file_->Close();
41 
42  delete file_;
43 }
TFile * file_
Definition: ZeePlots.h:79
ZeePlots::ZeePlots ( const edm::ParameterSet iConfig)
explicit

Definition at line 29 of file ZeePlots.cc.

References caloJetCollectionToken_, cIso1_EB_, cIso1_EB_inv, cIso1_EE_, cIso1_EE_inv, cIso2_EB_, cIso2_EB_inv, cIso2_EE_, cIso2_EE_inv, gather_cfg::cout, DatasetTag_, deta1_EB_, deta1_EB_inv, deta1_EE_, deta1_EE_inv, deta2_EB_, deta2_EB_inv, deta2_EE_, deta2_EE_inv, dphi1_EB_, dphi1_EB_inv, dphi1_EE_, dphi1_EE_inv, dphi2_EB_, dphi2_EB_inv, dphi2_EE_, dphi2_EE_inv, DRJetFromElectron_, ecalIso1_EB_, ecalIso1_EB_inv, ecalIso1_EE_, ecalIso1_EE_inv, ecalIso2_EB_, ecalIso2_EB_inv, ecalIso2_EE_, ecalIso2_EE_inv, ecalIsoUser1_EB_, ecalIsoUser1_EB_inv, ecalIsoUser1_EE_, ecalIsoUser1_EE_inv, ecalIsoUser2_EB_, ecalIsoUser2_EB_inv, ecalIsoUser2_EE_, ecalIsoUser2_EE_inv, eop1_EB_, eop1_EB_inv, eop1_EE_, eop1_EE_inv, eop2_EB_, eop2_EB_inv, eop2_EE_, eop2_EE_inv, edm::ParameterSet::getUntrackedParameter(), hcalIso1_EB_, hcalIso1_EB_inv, hcalIso1_EE_, hcalIso1_EE_inv, hcalIso2_EB_, hcalIso2_EB_inv, hcalIso2_EE_, hcalIso2_EE_inv, hcalIsoUser1_EB_, hcalIsoUser1_EB_inv, hcalIsoUser1_EE_, hcalIsoUser1_EE_inv, hcalIsoUser2_EB_, hcalIsoUser2_EB_inv, hcalIsoUser2_EE_, hcalIsoUser2_EE_inv, hoe1_EB_, hoe1_EB_inv, hoe1_EE_, hoe1_EE_inv, hoe2_EB_, hoe2_EB_inv, hoe2_EE_, hoe2_EE_inv, includeJetInformationInNtuples_, maxNumberOfExpectedMissingHits1_, maxNumberOfExpectedMissingHits2_, outputFile_, pfJetCollectionToken_, sihih1_EB_, sihih1_EB_inv, sihih1_EE_, sihih1_EE_inv, sihih2_EB_, sihih2_EB_inv, sihih2_EE_, sihih2_EE_inv, AlCaHLTBitMon_QueryRunRegistry::string, tip_bspot1_EB_, tip_bspot1_EB_inv, tip_bspot1_EE_, tip_bspot1_EE_inv, tip_bspot2_EB_, tip_bspot2_EB_inv, tip_bspot2_EE_, tip_bspot2_EE_inv, trackIso1_EB_, trackIso1_EB_inv, trackIso1_EE_, trackIso1_EE_inv, trackIso2_EB_, trackIso2_EB_inv, trackIso2_EE_, trackIso2_EE_inv, trackIsoUser1_EB_, trackIsoUser1_EB_inv, trackIsoUser1_EE_, trackIsoUser1_EE_inv, trackIsoUser2_EB_, trackIsoUser2_EB_inv, trackIsoUser2_EE_, trackIsoUser2_EE_inv, useConversionRejection1_, useConversionRejection2_, useExpectedMissingHits1_, useExpectedMissingHits2_, usePrecalcID1_, usePrecalcID2_, usePrecalcIDSign1_, usePrecalcIDSign2_, usePrecalcIDType1_, usePrecalcIDType2_, usePrecalcIDValue1_, usePrecalcIDValue2_, usePreselection1_, usePreselection2_, useSameSelectionOnBothElectrons_, useValidFirstPXBHit1_, useValidFirstPXBHit2_, ZEE_VBTFpreseleFileName_, ZEE_VBTFselectionFileName_, zeeCollectionToken_, and ~ZeePlots().

29  {
30  // I N P U T P A R A M E T E R S
32  // ZEE COLLECTION //////////////////////////////////////////////////////
33  //
34 
36  consumes<pat::CompositeCandidateCollection>(iConfig.getUntrackedParameter<edm::InputTag>("zeeCollectionTag"));
37 
38  // code parameters
39  //
40  std::string outputFile_D = "histos.root";
41  outputFile_ = iConfig.getUntrackedParameter<std::string>("outputFile", outputFile_D);
42 
43  ZEE_VBTFselectionFileName_ = iConfig.getUntrackedParameter<std::string>("ZEE_VBTFselectionFileName");
44  ZEE_VBTFpreseleFileName_ = iConfig.getUntrackedParameter<std::string>("ZEE_VBTFpreseleFileName");
45 
46  DatasetTag_ = iConfig.getUntrackedParameter<Int_t>("DatasetTag");
47 
48  useSameSelectionOnBothElectrons_ = iConfig.getUntrackedParameter<Bool_t>("useSameSelectionOnBothElectrons", false);
49 
50  // Here choose if the two legs will be treated individually or not.
51  //
53  // use of precalculatedID. if you use it, then no other cuts are applied
54 
55  /* Electron 1 */
56  usePrecalcID1_ = iConfig.getUntrackedParameter<Bool_t>("usePrecalcID0", false);
57 
58  if (usePrecalcID1_) {
59  usePrecalcIDType1_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDType0");
60  usePrecalcIDSign1_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDSign0", "=");
61  usePrecalcIDValue1_ = iConfig.getUntrackedParameter<Double_t>("usePrecalcIDValue0");
62 
63  std::cout << "ZeePlots: WARNING: you have chosen to use CMSSW precalculated ID for electron #1 with name: >>> "
64  << usePrecalcIDType1_ << " <<< such that the value map " << usePrecalcIDSign1_ << " "
65  << usePrecalcIDValue1_ << std::endl;
66  }
67 
68  /* Electron 2 */
69  usePrecalcID2_ = iConfig.getUntrackedParameter<Bool_t>("usePrecalcID0", false);
70 
71  if (usePrecalcID2_) {
72  usePrecalcIDType2_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDType0");
73  usePrecalcIDSign2_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDSign0", "=");
74  usePrecalcIDValue2_ = iConfig.getUntrackedParameter<Double_t>("usePrecalcIDValue0");
75 
76  std::cout << "ZeePlots: WARNING: you have chosen to use CMSSW precalculated ID for electron #2 with name: >>> "
77  << usePrecalcIDType2_ << " <<< such that the value map " << usePrecalcIDSign2_ << " "
78  << usePrecalcIDValue2_ << std::endl;
79  }
80 
81  // use of preselection
82  //
83  useValidFirstPXBHit1_ = iConfig.getUntrackedParameter<Bool_t>("useValidFirstPXBHit0", false);
84  useValidFirstPXBHit2_ = iConfig.getUntrackedParameter<Bool_t>("useValidFirstPXBHit0", false);
85 
86  useConversionRejection1_ = iConfig.getUntrackedParameter<Bool_t>("useConversionRejection0", false);
87  useConversionRejection2_ = iConfig.getUntrackedParameter<Bool_t>("useConversionRejection0", false);
88 
89  useExpectedMissingHits1_ = iConfig.getUntrackedParameter<Bool_t>("useExpectedMissingHits0", false);
90  useExpectedMissingHits2_ = iConfig.getUntrackedParameter<Bool_t>("useExpectedMissingHits0", false);
91 
92  maxNumberOfExpectedMissingHits1_ = iConfig.getUntrackedParameter<Int_t>("maxNumberOfExpectedMissingHits0", 1);
93  maxNumberOfExpectedMissingHits2_ = iConfig.getUntrackedParameter<Int_t>("maxNumberOfExpectedMissingHits0", 1);
94 
95  // Selection Cuts:
96  //
97 
98  /* Electron 1 */
99  trackIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIso0_EB", 1000.0);
100  trackIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIso0_EE", 1000.0);
101  ecalIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIso0_EB", 1000.0);
102  ecalIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIso0_EE", 1000.0);
103  hcalIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIso0_EB", 1000.0);
104  hcalIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIso0_EE", 1000.0);
105 
106  sihih1_EB_ = iConfig.getUntrackedParameter<Double_t>("sihih0_EB");
107  sihih1_EE_ = iConfig.getUntrackedParameter<Double_t>("sihih0_EE");
108  dphi1_EB_ = iConfig.getUntrackedParameter<Double_t>("dphi0_EB");
109  dphi1_EE_ = iConfig.getUntrackedParameter<Double_t>("dphi0_EE");
110  deta1_EB_ = iConfig.getUntrackedParameter<Double_t>("deta0_EB");
111  deta1_EE_ = iConfig.getUntrackedParameter<Double_t>("deta0_EE");
112  hoe1_EB_ = iConfig.getUntrackedParameter<Double_t>("hoe0_EB");
113  hoe1_EE_ = iConfig.getUntrackedParameter<Double_t>("hoe0_EE");
114  cIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("cIso0_EB", 1000.0);
115  cIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("cIso0_EE", 1000.0);
116  tip_bspot1_EB_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot0_EB", 1000.0);
117  tip_bspot1_EE_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot0_EE", 1000.0);
118  eop1_EB_ = iConfig.getUntrackedParameter<Double_t>("eop0_EB", 1000.0);
119  eop1_EE_ = iConfig.getUntrackedParameter<Double_t>("eop0_EE", 1000.0);
120 
121  trackIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser0_EB", 1000.0);
122  trackIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser0_EE", 1000.0);
123  ecalIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser0_EB", 1000.0);
124  ecalIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser0_EE", 1000.0);
125  hcalIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser0_EB", 1000.0);
126  hcalIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser0_EE", 1000.0);
127 
128  // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
129 
130  trackIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso0_EB_inv", false);
131  trackIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso0_EE_inv", false);
132  ecalIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso0_EB_inv", false);
133  ecalIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso0_EE_inv", false);
134  hcalIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso0_EB_inv", false);
135  hcalIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso0_EE_inv", false);
136 
137  sihih1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("sihih0_EB_inv", false);
138  sihih1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("sihih0_EE_inv", false);
139  dphi1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("dphi0_EB_inv", false);
140  dphi1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("dphi0_EE_inv", false);
141  deta1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("deta0_EB_inv", false);
142  deta1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("deta0_EE_inv", false);
143  hoe1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hoe0_EB_inv", false);
144  hoe1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hoe0_EE_inv", false);
145  cIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("cIso0_EB_inv", false);
146  cIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("cIso0_EE_inv", false);
147  tip_bspot1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot0_EB_inv", false);
148  tip_bspot1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot0_EE_inv", false);
149  eop1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("eop0_EB_inv", false);
150  eop1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("eop0_EE_inv", false);
151 
152  trackIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser0_EB_inv", false);
153  trackIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser0_EE_inv", false);
154  ecalIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser0_EB_inv", false);
155  ecalIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser0_EE_inv", false);
156  hcalIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser0_EB_inv", false);
157  hcalIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser0_EE_inv", false);
158 
159  /* Electron 2 */
160  trackIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIso0_EB", 1000.0);
161  trackIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIso0_EE", 1000.0);
162  ecalIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIso0_EB", 1000.0);
163  ecalIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIso0_EE", 1000.0);
164  hcalIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIso0_EB", 1000.0);
165  hcalIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIso0_EE", 1000.0);
166 
167  sihih2_EB_ = iConfig.getUntrackedParameter<Double_t>("sihih0_EB");
168  sihih2_EE_ = iConfig.getUntrackedParameter<Double_t>("sihih0_EE");
169  dphi2_EB_ = iConfig.getUntrackedParameter<Double_t>("dphi0_EB");
170  dphi2_EE_ = iConfig.getUntrackedParameter<Double_t>("dphi0_EE");
171  deta2_EB_ = iConfig.getUntrackedParameter<Double_t>("deta0_EB");
172  deta2_EE_ = iConfig.getUntrackedParameter<Double_t>("deta0_EE");
173  hoe2_EB_ = iConfig.getUntrackedParameter<Double_t>("hoe0_EB");
174  hoe2_EE_ = iConfig.getUntrackedParameter<Double_t>("hoe0_EE");
175  cIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("cIso0_EB", 1000.0);
176  cIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("cIso0_EE", 1000.0);
177  tip_bspot2_EB_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot0_EB", 1000.0);
178  tip_bspot2_EE_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot0_EE", 1000.0);
179  eop2_EB_ = iConfig.getUntrackedParameter<Double_t>("eop0_EB", 1000.0);
180  eop2_EE_ = iConfig.getUntrackedParameter<Double_t>("eop0_EE", 1000.0);
181 
182  trackIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser0_EB", 1000.0);
183  trackIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser0_EE", 1000.0);
184  ecalIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser0_EB", 1000.0);
185  ecalIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser0_EE", 1000.0);
186  hcalIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser0_EB", 1000.0);
187  hcalIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser0_EE", 1000.0);
188 
189  // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
190 
191  trackIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso0_EB_inv", false);
192  trackIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso0_EE_inv", false);
193  ecalIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso0_EB_inv", false);
194  ecalIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso0_EE_inv", false);
195  hcalIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso0_EB_inv", false);
196  hcalIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso0_EE_inv", false);
197 
198  sihih2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("sihih0_EB_inv", false);
199  sihih2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("sihih0_EE_inv", false);
200  dphi2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("dphi0_EB_inv", false);
201  dphi2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("dphi0_EE_inv", false);
202  deta2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("deta0_EB_inv", false);
203  deta2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("deta0_EE_inv", false);
204  hoe2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hoe0_EB_inv", false);
205  hoe2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hoe0_EE_inv", false);
206  cIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("cIso0_EB_inv", false);
207  cIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("cIso0_EE_inv", false);
208  tip_bspot2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot0_EB_inv", false);
209  tip_bspot2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot0_EE_inv", false);
210  eop2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("eop0_EB_inv", false);
211  eop2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("eop0_EE_inv", false);
212 
213  trackIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser0_EB_inv", false);
214  trackIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser0_EE_inv", false);
215  ecalIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser0_EB_inv", false);
216  ecalIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser0_EE_inv", false);
217  hcalIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser0_EB_inv", false);
218  hcalIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser0_EE_inv", false);
219 
220  } else {
221  // use of precalculatedID. if you use it, then no other cuts are applied
222 
223  /* Electron 1 */
224  usePrecalcID1_ = iConfig.getUntrackedParameter<Bool_t>("usePrecalcID1", false);
225 
226  if (usePrecalcID1_) {
227  usePrecalcIDType1_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDType1");
228  usePrecalcIDSign1_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDSign1", "=");
229  usePrecalcIDValue1_ = iConfig.getUntrackedParameter<Double_t>("usePrecalcIDValue1");
230 
231  std::cout << "ZeePlots: WARNING: you have chosen to use CMSSW precalculated ID for electron #1 with name: >>> "
232  << usePrecalcIDType1_ << " <<< such that the value map " << usePrecalcIDSign1_ << " "
233  << usePrecalcIDValue1_ << std::endl;
234  }
235 
236  /* Electron 2 */
237  usePrecalcID2_ = iConfig.getUntrackedParameter<Bool_t>("usePrecalcID2", false);
238 
239  if (usePrecalcID2_) {
240  usePrecalcIDType2_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDType2");
241  usePrecalcIDSign2_ = iConfig.getUntrackedParameter<std::string>("usePrecalcIDSign2", "=");
242  usePrecalcIDValue2_ = iConfig.getUntrackedParameter<Double_t>("usePrecalcIDValue2");
243 
244  std::cout << "ZeePlots: WARNING: you have chosen to use CMSSW precalculated ID for electron #2 with name: >>> "
245  << usePrecalcIDType2_ << " <<< such that the value map " << usePrecalcIDSign2_ << " "
246  << usePrecalcIDValue2_ << std::endl;
247  }
248 
249  // use of preselection
250  //
251  useValidFirstPXBHit1_ = iConfig.getUntrackedParameter<Bool_t>("useValidFirstPXBHit1", false);
252  useValidFirstPXBHit2_ = iConfig.getUntrackedParameter<Bool_t>("useValidFirstPXBHit2", false);
253 
254  useConversionRejection1_ = iConfig.getUntrackedParameter<Bool_t>("useConversionRejection1", false);
255  useConversionRejection2_ = iConfig.getUntrackedParameter<Bool_t>("useConversionRejection2", false);
256 
257  useExpectedMissingHits1_ = iConfig.getUntrackedParameter<Bool_t>("useExpectedMissingHits1", false);
258  useExpectedMissingHits2_ = iConfig.getUntrackedParameter<Bool_t>("useExpectedMissingHits2", false);
259 
260  maxNumberOfExpectedMissingHits1_ = iConfig.getUntrackedParameter<Int_t>("maxNumberOfExpectedMissingHits1", 1);
261  maxNumberOfExpectedMissingHits2_ = iConfig.getUntrackedParameter<Int_t>("maxNumberOfExpectedMissingHits2", 1);
262 
263  // Selection Cuts:
264  //
265 
266  /* Electron 1 */
267  trackIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIso1_EB", 1000.0);
268  trackIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIso1_EE", 1000.0);
269  ecalIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIso1_EB", 1000.0);
270  ecalIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIso1_EE", 1000.0);
271  hcalIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIso1_EB", 1000.0);
272  hcalIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIso1_EE", 1000.0);
273 
274  sihih1_EB_ = iConfig.getUntrackedParameter<Double_t>("sihih1_EB");
275  sihih1_EE_ = iConfig.getUntrackedParameter<Double_t>("sihih1_EE");
276  dphi1_EB_ = iConfig.getUntrackedParameter<Double_t>("dphi1_EB");
277  dphi1_EE_ = iConfig.getUntrackedParameter<Double_t>("dphi1_EE");
278  deta1_EB_ = iConfig.getUntrackedParameter<Double_t>("deta1_EB");
279  deta1_EE_ = iConfig.getUntrackedParameter<Double_t>("deta1_EE");
280  hoe1_EB_ = iConfig.getUntrackedParameter<Double_t>("hoe1_EB");
281  hoe1_EE_ = iConfig.getUntrackedParameter<Double_t>("hoe1_EE");
282  cIso1_EB_ = iConfig.getUntrackedParameter<Double_t>("cIso1_EB", 1000.0);
283  cIso1_EE_ = iConfig.getUntrackedParameter<Double_t>("cIso1_EE", 1000.0);
284  tip_bspot1_EB_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot1_EB", 1000.0);
285  tip_bspot1_EE_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot1_EE", 1000.0);
286  eop1_EB_ = iConfig.getUntrackedParameter<Double_t>("eop1_EB", 1000.0);
287  eop1_EE_ = iConfig.getUntrackedParameter<Double_t>("eop1_EE", 1000.0);
288 
289  trackIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser1_EB", 1000.0);
290  trackIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser1_EE", 1000.0);
291  ecalIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser1_EB", 1000.0);
292  ecalIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser1_EE", 1000.0);
293  hcalIsoUser1_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser1_EB", 1000.0);
294  hcalIsoUser1_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser1_EE", 1000.0);
295  // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
296  trackIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso1_EB_inv", false);
297  trackIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso1_EE_inv", false);
298  ecalIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso1_EB_inv", false);
299  ecalIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso1_EE_inv", false);
300  hcalIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso1_EB_inv", false);
301  hcalIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso1_EE_inv", false);
302 
303  sihih1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("sihih1_EB_inv", false);
304  sihih1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("sihih1_EE_inv", false);
305  dphi1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("dphi1_EB_inv", false);
306  dphi1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("dphi1_EE_inv", false);
307  deta1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("deta1_EB_inv", false);
308  deta1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("deta1_EE_inv", false);
309  hoe1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hoe1_EB_inv", false);
310  hoe1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hoe1_EE_inv", false);
311  cIso1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("cIso1_EB_inv", false);
312  cIso1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("cIso1_EE_inv", false);
313  tip_bspot1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot1_EB_inv", false);
314  tip_bspot1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot1_EE_inv", false);
315  eop1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("eop1_EB_inv", false);
316  eop1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("eop1_EE_inv", false);
317 
318  trackIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser1_EB_inv", false);
319  trackIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser1_EE_inv", false);
320  ecalIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser1_EB_inv", false);
321  ecalIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser1_EE_inv", false);
322  hcalIsoUser1_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser1_EB_inv", false);
323  hcalIsoUser1_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser1_EE_inv", false);
324 
325  /* Electron 2 */
326  trackIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIso2_EB", 1000.0);
327  trackIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIso2_EE", 1000.0);
328  ecalIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIso2_EB", 1000.0);
329  ecalIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIso2_EE", 1000.0);
330  hcalIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIso2_EB", 1000.0);
331  hcalIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIso2_EE", 1000.0);
332 
333  sihih2_EB_ = iConfig.getUntrackedParameter<Double_t>("sihih2_EB");
334  sihih2_EE_ = iConfig.getUntrackedParameter<Double_t>("sihih2_EE");
335  dphi2_EB_ = iConfig.getUntrackedParameter<Double_t>("dphi2_EB");
336  dphi2_EE_ = iConfig.getUntrackedParameter<Double_t>("dphi2_EE");
337  deta2_EB_ = iConfig.getUntrackedParameter<Double_t>("deta2_EB");
338  deta2_EE_ = iConfig.getUntrackedParameter<Double_t>("deta2_EE");
339  hoe2_EB_ = iConfig.getUntrackedParameter<Double_t>("hoe2_EB");
340  hoe2_EE_ = iConfig.getUntrackedParameter<Double_t>("hoe2_EE");
341  cIso2_EB_ = iConfig.getUntrackedParameter<Double_t>("cIso2_EB", 1000.0);
342  cIso2_EE_ = iConfig.getUntrackedParameter<Double_t>("cIso2_EE", 1000.0);
343  tip_bspot2_EB_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot2_EB", 1000.0);
344  tip_bspot2_EE_ = iConfig.getUntrackedParameter<Double_t>("tip_bspot2_EE", 1000.0);
345  eop2_EB_ = iConfig.getUntrackedParameter<Double_t>("eop2_EB", 1000.0);
346  eop2_EE_ = iConfig.getUntrackedParameter<Double_t>("eop2_EE", 1000.0);
347 
348  trackIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser2_EB", 1000.0);
349  trackIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("trackIsoUser2_EE", 1000.0);
350  ecalIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser2_EB", 1000.0);
351  ecalIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("ecalIsoUser2_EE", 1000.0);
352  hcalIsoUser2_EB_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser2_EB", 1000.0);
353  hcalIsoUser2_EE_ = iConfig.getUntrackedParameter<Double_t>("hcalIsoUser2_EE", 1000.0);
354  // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
355  trackIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso2_EB_inv", false);
356  trackIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIso2_EE_inv", false);
357  ecalIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso2_EB_inv", false);
358  ecalIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIso2_EE_inv", false);
359  hcalIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso2_EB_inv", false);
360  hcalIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIso2_EE_inv", false);
361 
362  sihih2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("sihih2_EB_inv", false);
363  sihih2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("sihih2_EE_inv", false);
364  dphi2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("dphi2_EB_inv", false);
365  dphi2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("dphi2_EE_inv", false);
366  deta2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("deta2_EB_inv", false);
367  deta2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("deta2_EE_inv", false);
368  hoe2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hoe2_EB_inv", false);
369  hoe2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hoe2_EE_inv", false);
370  cIso2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("cIso2_EB_inv", false);
371  cIso2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("cIso2_EE_inv", false);
372  tip_bspot2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot2_EB_inv", false);
373  tip_bspot2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("tip_bspot2_EE_inv", false);
374  eop2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("eop2_EB_inv", false);
375  eop2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("eop2_EE_inv", false);
376 
377  trackIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser2_EB_inv", false);
378  trackIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("trackIsoUser2_EE_inv", false);
379  ecalIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser2_EB_inv", false);
380  ecalIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("ecalIsoUser2_EE_inv", false);
381  hcalIsoUser2_EB_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser2_EB_inv", false);
382  hcalIsoUser2_EE_inv = iConfig.getUntrackedParameter<Bool_t>("hcalIsoUser2_EE_inv", false);
383  }
384 
387 
388  // Display Massages
389  //
390  if (useValidFirstPXBHit1_) {
391  std::cout << "ZeePlots: Warning: you have demanded ValidFirstPXBHit on 1st electron" << std::endl;
392  }
393  if (useValidFirstPXBHit2_) {
394  std::cout << "ZeePlots: Warning: you have demanded ValidFirstPXBHit on 2nd electron" << std::endl;
395  }
397  std::cout << "ZeePlots: Warning: you have demanded Conversion Rejection on 1st electron" << std::endl;
398  }
400  std::cout << "ZeePlots: Warning: you have demanded Conversion Rejection on 2nd electron" << std::endl;
401  }
403  std::cout << "ZeePlots: Warning: you have demanded Expected Missing Hits on 1st electron no more than "
404  << maxNumberOfExpectedMissingHits1_ << std::endl;
405  }
407  std::cout << "ZeePlots: Warning: you have demanded Expected Missing Hits on 2nd electron no more than "
408  << maxNumberOfExpectedMissingHits2_ << std::endl;
409  }
410 
411  // JETS
412  //
413  includeJetInformationInNtuples_ = iConfig.getUntrackedParameter<Bool_t>("includeJetInformationInNtuples", false);
414 
417  mayConsume<reco::CaloJetCollection>(iConfig.getUntrackedParameter<edm::InputTag>("caloJetCollectionTag"));
419  mayConsume<reco::PFJetCollection>(iConfig.getUntrackedParameter<edm::InputTag>("pfJetCollectionTag"));
420  DRJetFromElectron_ = iConfig.getUntrackedParameter<Double_t>("DRJetFromElectron");
421  }
422 }
Double_t trackIsoUser2_EB_
Definition: ZeePlots.h:253
Bool_t trackIso2_EE_inv
Definition: ZeePlots.h:261
Double_t hcalIsoUser1_EB_
Definition: ZeePlots.h:198
Double_t sihih1_EB_
Definition: ZeePlots.h:179
Double_t tip_bspot1_EE_
Definition: ZeePlots.h:190
T getUntrackedParameter(std::string const &, T const &) const
Double_t cIso2_EB_
Definition: ZeePlots.h:246
std::string usePrecalcIDSign2_
Definition: ZeePlots.h:77
Double_t deta2_EB_
Definition: ZeePlots.h:242
Bool_t dphi2_EB_inv
Definition: ZeePlots.h:269
Bool_t useValidFirstPXBHit2_
Definition: ZeePlots.h:89
Double_t trackIsoUser1_EE_
Definition: ZeePlots.h:195
Bool_t ecalIso2_EE_inv
Definition: ZeePlots.h:263
edm::EDGetTokenT< pat::CompositeCandidateCollection > zeeCollectionToken_
Definition: ZeePlots.h:96
Bool_t deta1_EE_inv
Definition: ZeePlots.h:213
Bool_t hcalIso2_EE_inv
Definition: ZeePlots.h:265
Int_t DatasetTag_
Definition: ZeePlots.h:355
Bool_t ecalIsoUser2_EB_inv
Definition: ZeePlots.h:284
Bool_t trackIsoUser1_EE_inv
Definition: ZeePlots.h:224
std::string usePrecalcIDSign1_
Definition: ZeePlots.h:72
Double_t usePrecalcIDValue1_
Definition: ZeePlots.h:74
Bool_t maxNumberOfExpectedMissingHits1_
Definition: ZeePlots.h:86
Bool_t hoe2_EB_inv
Definition: ZeePlots.h:273
Double_t hcalIsoUser2_EE_
Definition: ZeePlots.h:258
Bool_t sihih1_EB_inv
Definition: ZeePlots.h:208
Bool_t useSameSelectionOnBothElectrons_
Definition: ZeePlots.h:68
edm::EDGetTokenT< reco::CaloJetCollection > caloJetCollectionToken_
Definition: ZeePlots.h:97
Double_t tip_bspot1_EB_
Definition: ZeePlots.h:189
Bool_t hcalIso1_EE_inv
Definition: ZeePlots.h:206
Bool_t sihih2_EB_inv
Definition: ZeePlots.h:267
Bool_t eop1_EB_inv
Definition: ZeePlots.h:220
Double_t deta1_EE_
Definition: ZeePlots.h:184
Double_t eop2_EE_
Definition: ZeePlots.h:251
Double_t tip_bspot2_EB_
Definition: ZeePlots.h:248
Bool_t eop2_EB_inv
Definition: ZeePlots.h:279
Bool_t tip_bspot2_EB_inv
Definition: ZeePlots.h:277
Bool_t ecalIsoUser1_EE_inv
Definition: ZeePlots.h:226
edm::EDGetTokenT< reco::PFJetCollection > pfJetCollectionToken_
Definition: ZeePlots.h:98
Bool_t hcalIsoUser2_EE_inv
Definition: ZeePlots.h:287
Bool_t deta2_EB_inv
Definition: ZeePlots.h:271
Double_t hcalIsoUser2_EB_
Definition: ZeePlots.h:257
Bool_t trackIso1_EE_inv
Definition: ZeePlots.h:202
Double_t ecalIsoUser2_EE_
Definition: ZeePlots.h:256
Double_t ecalIsoUser1_EE_
Definition: ZeePlots.h:197
Bool_t deta1_EB_inv
Definition: ZeePlots.h:212
Double_t usePrecalcIDValue2_
Definition: ZeePlots.h:79
Double_t hcalIsoUser1_EE_
Definition: ZeePlots.h:199
Bool_t useExpectedMissingHits2_
Definition: ZeePlots.h:91
Double_t cIso2_EE_
Definition: ZeePlots.h:247
Double_t sihih2_EB_
Definition: ZeePlots.h:238
Double_t dphi1_EB_
Definition: ZeePlots.h:181
std::string outputFile_
Definition: ZeePlots.h:95
Double_t ecalIsoUser1_EB_
Definition: ZeePlots.h:196
Bool_t hcalIsoUser2_EB_inv
Definition: ZeePlots.h:286
Bool_t hcalIso2_EB_inv
Definition: ZeePlots.h:264
Double_t tip_bspot2_EE_
Definition: ZeePlots.h:249
Double_t hcalIso2_EB_
Definition: ZeePlots.h:235
Double_t hoe2_EB_
Definition: ZeePlots.h:244
Bool_t ecalIsoUser2_EE_inv
Definition: ZeePlots.h:285
Bool_t hcalIsoUser1_EE_inv
Definition: ZeePlots.h:228
std::string ZEE_VBTFpreseleFileName_
Definition: ZeePlots.h:351
Bool_t usePrecalcID2_
Definition: ZeePlots.h:76
Bool_t useConversionRejection1_
Definition: ZeePlots.h:84
Double_t eop2_EB_
Definition: ZeePlots.h:250
Bool_t tip_bspot1_EB_inv
Definition: ZeePlots.h:218
Double_t trackIso1_EB_
Definition: ZeePlots.h:172
Double_t ecalIsoUser2_EB_
Definition: ZeePlots.h:255
Double_t trackIso2_EB_
Definition: ZeePlots.h:231
Bool_t cIso1_EB_inv
Definition: ZeePlots.h:216
Bool_t tip_bspot2_EE_inv
Definition: ZeePlots.h:278
Bool_t hcalIso1_EB_inv
Definition: ZeePlots.h:205
Bool_t hoe2_EE_inv
Definition: ZeePlots.h:274
Double_t trackIso1_EE_
Definition: ZeePlots.h:173
Bool_t trackIso1_EB_inv
Definition: ZeePlots.h:201
Double_t trackIso2_EE_
Definition: ZeePlots.h:232
Bool_t cIso2_EE_inv
Definition: ZeePlots.h:276
Bool_t eop2_EE_inv
Definition: ZeePlots.h:280
Bool_t hoe1_EB_inv
Definition: ZeePlots.h:214
Bool_t ecalIsoUser1_EB_inv
Definition: ZeePlots.h:225
Bool_t maxNumberOfExpectedMissingHits2_
Definition: ZeePlots.h:92
Bool_t sihih2_EE_inv
Definition: ZeePlots.h:268
Bool_t trackIsoUser1_EB_inv
Definition: ZeePlots.h:223
std::string usePrecalcIDType1_
Definition: ZeePlots.h:73
Double_t hcalIso2_EE_
Definition: ZeePlots.h:236
Bool_t usePreselection2_
Definition: ZeePlots.h:88
Bool_t hcalIsoUser1_EB_inv
Definition: ZeePlots.h:227
Bool_t hoe1_EE_inv
Definition: ZeePlots.h:215
Double_t deta2_EE_
Definition: ZeePlots.h:243
Double_t eop1_EE_
Definition: ZeePlots.h:192
Double_t DRJetFromElectron_
Definition: ZeePlots.h:354
Double_t trackIsoUser1_EB_
Definition: ZeePlots.h:194
Bool_t useValidFirstPXBHit1_
Definition: ZeePlots.h:83
Bool_t dphi2_EE_inv
Definition: ZeePlots.h:270
Double_t hoe2_EE_
Definition: ZeePlots.h:245
Bool_t eop1_EE_inv
Definition: ZeePlots.h:221
std::string ZEE_VBTFselectionFileName_
Definition: ZeePlots.h:350
Bool_t ecalIso2_EB_inv
Definition: ZeePlots.h:262
Double_t hcalIso1_EB_
Definition: ZeePlots.h:176
Bool_t tip_bspot1_EE_inv
Definition: ZeePlots.h:219
Double_t ecalIso2_EE_
Definition: ZeePlots.h:234
Bool_t cIso2_EB_inv
Definition: ZeePlots.h:275
Bool_t usePreselection1_
Definition: ZeePlots.h:82
Double_t ecalIso1_EE_
Definition: ZeePlots.h:175
Double_t dphi2_EE_
Definition: ZeePlots.h:241
Bool_t trackIsoUser2_EE_inv
Definition: ZeePlots.h:283
Double_t hoe1_EB_
Definition: ZeePlots.h:185
Bool_t useExpectedMissingHits1_
Definition: ZeePlots.h:85
std::string usePrecalcIDType2_
Definition: ZeePlots.h:78
Double_t cIso1_EE_
Definition: ZeePlots.h:188
Double_t sihih1_EE_
Definition: ZeePlots.h:180
Double_t cIso1_EB_
Definition: ZeePlots.h:187
Bool_t includeJetInformationInNtuples_
Definition: ZeePlots.h:353
Double_t hoe1_EE_
Definition: ZeePlots.h:186
Double_t sihih2_EE_
Definition: ZeePlots.h:239
Bool_t usePrecalcID1_
Definition: ZeePlots.h:71
Double_t eop1_EB_
Definition: ZeePlots.h:191
Bool_t ecalIso1_EB_inv
Definition: ZeePlots.h:203
Double_t ecalIso2_EB_
Definition: ZeePlots.h:233
Bool_t trackIso2_EB_inv
Definition: ZeePlots.h:260
Bool_t dphi1_EE_inv
Definition: ZeePlots.h:211
Double_t hcalIso1_EE_
Definition: ZeePlots.h:177
Bool_t ecalIso1_EE_inv
Definition: ZeePlots.h:204
Bool_t sihih1_EE_inv
Definition: ZeePlots.h:209
Double_t deta1_EB_
Definition: ZeePlots.h:183
Bool_t deta2_EE_inv
Definition: ZeePlots.h:272
Double_t trackIsoUser2_EE_
Definition: ZeePlots.h:254
Double_t ecalIso1_EB_
Definition: ZeePlots.h:174
Bool_t cIso1_EE_inv
Definition: ZeePlots.h:217
Bool_t trackIsoUser2_EB_inv
Definition: ZeePlots.h:282
Bool_t useConversionRejection2_
Definition: ZeePlots.h:90
Bool_t dphi1_EB_inv
Definition: ZeePlots.h:210
Double_t dphi2_EB_
Definition: ZeePlots.h:240
Double_t dphi1_EE_
Definition: ZeePlots.h:182
ZeePlots::~ZeePlots ( )
override

Member Function Documentation

void ZeePlots::analyze ( const edm::Event iEvent,
const edm::EventSetup es 
)
overrideprivate

Definition at line 434 of file ZeePlots.cc.

References Abs(), calojet_et, calojet_eta, calojet_phi, caloJetCollectionToken_, isolatedTracks_cfi::caloJets, reco::GsfElectron::chargeInfo(), CheckCuts1(), CheckCuts2(), pat::Electron::closestCtfTrackRef(), counter, gather_cfg::cout, DatasetTag_, reco::CompositeCandidate::daughter(), pat::Electron::dB(), reco::GsfElectron::deltaEtaSuperClusterTrackAtVtx(), reco::GsfElectron::deltaPhiSuperClusterTrackAtVtx(), reco::deltaR(), reco::GsfElectron::dr03IsolationVariables(), DRJetFromElectron_, StorageManager_cfg::e1, reco::GsfElectron::IsolationVariables::ecalRecHitSumEt, ele1_cand_et, ele1_cand_eta, ele1_cand_phi, ele1_cr_dcot, ele1_cr_dist, ele1_cr_mhitsinner, ele1_ctfCharge, ele1_eop, ele1_gsfCharge, ele1_id_deta, ele1_id_dphi, ele1_id_hoe, ele1_id_sihih, ele1_iso_ecal, ele1_iso_hcal, ele1_iso_track, ele1_sc_energy, ele1_sc_eta, ele1_sc_gsf_et, ele1_sc_phi, ele1_scPixCharge, ele1_tip_bs, ele1_tip_pv, ele1_vx, ele1_vy, ele1_vz, ele2_cand_et, ele2_cand_eta, ele2_cand_phi, ele2_cr_dcot, ele2_cr_dist, ele2_cr_mhitsinner, ele2_ctfCharge, ele2_eop, ele2_gsfCharge, ele2_id_deta, ele2_id_dphi, ele2_id_hoe, ele2_id_sihih, ele2_iso_ecal, ele2_iso_hcal, ele2_iso_track, ele2_sc_energy, ele2_sc_eta, ele2_sc_gsf_et, ele2_sc_phi, ele2_scPixCharge, ele2_tip_bs, ele2_tip_pv, ele2_vx, ele2_vy, ele2_vz, reco::GsfElectron::eSuperClusterOverP(), reco::LeafCandidate::et(), reco::LeafCandidate::eta(), edm::EventAuxiliary::event(), event_caloMET, event_caloMET_phi, event_datasetTag, event_Mee, event_pfMET, event_pfMET_phi, event_tcMET, event_tcMET_phi, edm::Event::eventAuxiliary(), eventNumber, edm::Event::getByToken(), pat::Electron::gsfTrack(), h_e_ETA, h_e_PHI, h_e_PT, h_EB_deta, h_EB_dphi, h_EB_ecaliso, h_EB_hcaliso, h_EB_HoE, h_EB_sIetaIeta, h_EB_trkiso, h_EE_deta, h_EE_dphi, h_EE_ecaliso, h_EE_hcaliso, h_EE_HoE, h_EE_sIetaIeta, h_EE_trkiso, h_mee, h_mee_EBEB, h_mee_EBEE, h_mee_EEEE, h_Zcand_PT, h_Zcand_Y, reco::GsfElectron::hadronicOverEm(), reco::GsfElectron::IsolationVariables::hcalDepth1TowerSumEt, reco::GsfElectron::IsolationVariables::hcalDepth2TowerSumEt, mps_fire::i, includeJetInformationInNtuples_, edm::Ref< C, T, F >::isNonnull(), edm::HandleBase::isValid(), edm::EventBase::luminosityBlock(), lumiSection, reco::HitPattern::MISSING_INNER_HITS, objects.IsoTrackAnalyzer::myMet, PassPreselectionCriteria1(), PassPreselectionCriteria2(), pfjet_et, pfjet_eta, pfjet_phi, pfJetCollectionToken_, pfJetBenchmark_cfi::pfJets, reco::LeafCandidate::phi(), edm::Handle< T >::product(), pv_x1, pv_x2, pv_y1, pv_y2, pv_z1, pv_z2, ReturnCandVar(), edm::Event::run(), runNumber, reco::GsfElectron::ChargeInfo::scPixCharge, reco::GsfElectron::scSigmaIEtaIEta(), reco::GsfElectron::sigmaIetaIeta(), pat::Electron::superCluster(), reco::GsfElectron::IsolationVariables::tkSumPt, usePreselection1_, usePreselection2_, pat::PATObject< ObjectType >::userFloat(), vbtfPresele_tree, vbtfSele_tree, reco::LeafCandidate::vx(), reco::LeafCandidate::vy(), reco::LeafCandidate::vz(), DOFs::Z, and zeeCollectionToken_.

434  {
435  using namespace std;
436  //
437  // Get the collections here
438  //
440  iEvent.getByToken(zeeCollectionToken_, ZeeCands);
441 
442  if (!ZeeCands.isValid()) {
443  std::cout << "Warning: No valid Zee candidates in this event..." << std::endl;
444  return;
445  }
446 
447  const pat::CompositeCandidateCollection *zcands = ZeeCands.product();
448  const pat::CompositeCandidateCollection::const_iterator zeeIter = zcands->begin();
449  const pat::CompositeCandidate zee = *zeeIter;
450 
451  // get the parts of the composite candidate:
452  const pat::Electron *myElec1 = dynamic_cast<const pat::Electron *>(zee.daughter("electron1"));
453  const pat::Electron *myElec2 = dynamic_cast<const pat::Electron *>(zee.daughter("electron2"));
454 
455  const pat::MET *myMet = dynamic_cast<const pat::MET *>(zee.daughter("met"));
456  const pat::MET *myPfMet = dynamic_cast<const pat::MET *>(zee.daughter("pfmet"));
457  const pat::MET *myTcMet = dynamic_cast<const pat::MET *>(zee.daughter("tcmet"));
458 
459  // _______________________________________________________________________
460  //
461  // VBTF Root tuple production --------------------------------------------
462  // _______________________________________________________________________
463  //
464  // .......................................................................
465  // vbtf produces 2 root tuples: one that contains the highest pT electrons
466  // that passes a user defined selection and one other with only the
467  // preselection criteria applied
468  // .......................................................................
469  //
470 
471  // fill the tree variables
472  runNumber = iEvent.run();
473  eventNumber = (Long64_t)(iEvent.eventAuxiliary().event());
474  lumiSection = (Int_t)iEvent.luminosityBlock();
475 
476  ele1_sc_eta = (Float_t)(myElec1->superCluster()->eta());
477  ele1_sc_phi = (Float_t)(myElec1->superCluster()->phi());
478  ele1_sc_energy = (Float_t)(myElec1->superCluster()->energy());
479  ele1_sc_gsf_et = (Float_t)(myElec1->superCluster()->energy() / TMath::CosH(myElec1->gsfTrack()->eta()));
480  ele1_cand_eta = (Float_t)(myElec1->eta());
481  ele1_cand_phi = (Float_t)(myElec1->phi());
482  ele1_cand_et = (Float_t)(myElec1->et());
483 
484  ele1_iso_track = (Float_t)(myElec1->dr03IsolationVariables().tkSumPt / ele1_cand_et);
488  ele1_cand_et);
489 
490  ele1_id_sihih = (Float_t)(myElec1->sigmaIetaIeta());
491  ele1_id_deta = (Float_t)(myElec1->deltaEtaSuperClusterTrackAtVtx());
492  ele1_id_dphi = (Float_t)(myElec1->deltaPhiSuperClusterTrackAtVtx());
493  ele1_id_hoe = (Float_t)(myElec1->hadronicOverEm());
494 
496  (Float_t)(myElec1->gsfTrack()->hitPattern().numberOfLostHits(reco::HitPattern::MISSING_INNER_HITS));
497  ele1_cr_dcot = (Float_t)(myElec1->userFloat("Dcot"));
498  ele1_cr_dist = (Float_t)(myElec1->userFloat("Dist"));
499 
500  ele1_vx = (Float_t)(myElec1->vx());
501  ele1_vy = (Float_t)(myElec1->vy());
502  ele1_vz = (Float_t)(myElec1->vz());
503 
504  pv_x1 = (Float_t)(myElec1->userFloat("pv_x"));
505  pv_y1 = (Float_t)(myElec1->userFloat("pv_y"));
506  pv_z1 = (Float_t)(myElec1->userFloat("pv_z"));
507 
508  ele1_gsfCharge = (Int_t)(myElec1->gsfTrack()->charge());
510  (Int_t)(myElec1->closestCtfTrackRef().isNonnull() ? (myElec1->closestCtfTrackRef()->charge()) : -9999);
511  ele1_scPixCharge = (Int_t)(myElec1->chargeInfo().scPixCharge);
512  ele1_eop = (Float_t)(myElec1->eSuperClusterOverP());
513  ele1_tip_bs = (Float_t)((-1.0) * myElec1->dB());
514  ele1_tip_pv = (Float_t)(myElec1->userFloat("ele_tip_pv"));
515 
516  ele2_sc_eta = (Float_t)(myElec2->superCluster()->eta());
517  ele2_sc_phi = (Float_t)(myElec2->superCluster()->phi());
518  ele2_sc_energy = (Float_t)(myElec2->superCluster()->energy());
519  ele2_sc_gsf_et = (Float_t)(myElec2->superCluster()->energy() / TMath::CosH(myElec2->gsfTrack()->eta()));
520  ele2_cand_eta = (Float_t)(myElec2->eta());
521  ele2_cand_phi = (Float_t)(myElec2->phi());
522  ele2_cand_et = (Float_t)(myElec2->et());
523 
524  ele2_iso_track = (Float_t)(myElec2->dr03IsolationVariables().tkSumPt / ele2_cand_et);
528  ele2_cand_et);
529 
530  ele2_id_sihih = (Float_t)(myElec2->sigmaIetaIeta());
531  ele2_id_deta = (Float_t)(myElec2->deltaEtaSuperClusterTrackAtVtx());
532  ele2_id_dphi = (Float_t)(myElec2->deltaPhiSuperClusterTrackAtVtx());
533  ele2_id_hoe = (Float_t)(myElec2->hadronicOverEm());
534 
536  (Float_t)(myElec2->gsfTrack()->hitPattern().numberOfLostHits(reco::HitPattern::MISSING_INNER_HITS));
537  ele2_cr_dcot = (Float_t)(myElec2->userFloat("Dcot"));
538  ele2_cr_dist = (Float_t)(myElec2->userFloat("Dist"));
539 
540  ele2_vx = (Float_t)(myElec2->vx());
541  ele2_vy = (Float_t)(myElec2->vy());
542  ele2_vz = (Float_t)(myElec2->vz());
543 
544  pv_x2 = (Float_t)(myElec2->userFloat("pv_x"));
545  pv_y2 = (Float_t)(myElec2->userFloat("pv_y"));
546  pv_z2 = (Float_t)(myElec2->userFloat("pv_z"));
547 
548  ele2_gsfCharge = (Int_t)(myElec2->gsfTrack()->charge());
550  (Int_t)(myElec2->closestCtfTrackRef().isNonnull() ? (myElec2->closestCtfTrackRef()->charge()) : -9999);
551  ele2_scPixCharge = (Int_t)(myElec2->chargeInfo().scPixCharge);
552  ele2_eop = (Float_t)(myElec2->eSuperClusterOverP());
553  ele2_tip_bs = (Float_t)((-1.0) * myElec2->dB());
554  ele2_tip_pv = (Float_t)(myElec2->userFloat("ele_tip_pv"));
555 
556  event_caloMET = (Float_t)(myMet->et());
557  event_pfMET = (Float_t)(myPfMet->et());
558  event_tcMET = (Float_t)(myTcMet->et());
559 
560  event_caloMET_phi = (Float_t)(myMet->phi());
561  event_pfMET_phi = (Float_t)(myPfMet->phi());
562  event_tcMET_phi = (Float_t)(myTcMet->phi());
563 
564  TLorentzVector p4e1;
565  TLorentzVector p4e2;
566 
567  p4e1.SetPtEtaPhiM(ele1_sc_gsf_et, ele1_cand_eta, ele1_cand_phi, 0.000511);
568  p4e2.SetPtEtaPhiM(ele2_sc_gsf_et, ele2_cand_eta, ele2_cand_phi, 0.000511);
569 
570  TLorentzVector Zp4 = p4e1 + p4e2;
571 
572  event_Mee = (Float_t)(Zp4.M());
573 
575 
576  // jet information - only if the user asks for it
577  // keep the 5 highest et jets of the event that are further than DR > DRJetFromElectron_
578 
580  // initialize the array of the jet information
581 
582  for (Int_t i = 0; i < 5; ++i) {
583  calojet_et[i] = -999999;
584  calojet_eta[i] = -999999;
585  calojet_phi[i] = -999999;
586 
587  pfjet_et[i] = -999999;
588  pfjet_eta[i] = -999999;
589  pfjet_phi[i] = -999999;
590  }
591 
592  // get hold of the jet collections
594  iEvent.getByToken(caloJetCollectionToken_, pCaloJets);
595 
597  iEvent.getByToken(pfJetCollectionToken_, pPfJets);
598 
599  // calo jets now:
600  if (pCaloJets.isValid()) {
601  const reco::CaloJetCollection *caloJets = pCaloJets.product();
602  Int_t nCaloJets = (Int_t)(caloJets->size());
603 
604  if (nCaloJets > 0) {
605  Float_t *nCaloET = new Float_t[nCaloJets];
606  Float_t *nCaloEta = new Float_t[nCaloJets];
607  Float_t *nCaloPhi = new Float_t[nCaloJets];
608 
609  // reco::CaloJetCollection::const_iterator cjet = caloJets->begin();
610 
611  Int_t counter = 0;
612 
613  for (reco::CaloJetCollection::const_iterator cjet = caloJets->begin(); cjet != caloJets->end(); ++cjet) {
614  // store them only if they are far enough from the electron
615  Double_t DR1 = reco::deltaR(cjet->eta(), cjet->phi(), myElec1->gsfTrack()->eta(), ele1_sc_phi);
616  Double_t DR2 = reco::deltaR(cjet->eta(), cjet->phi(), myElec2->gsfTrack()->eta(), ele2_sc_phi);
617 
618  if ((DR1 > DRJetFromElectron_) && (DR2 > DRJetFromElectron_)) {
619  nCaloET[counter] = cjet->et();
620  nCaloEta[counter] = cjet->eta();
621  nCaloPhi[counter] = cjet->phi();
622  ++counter;
623  }
624  }
625 
626  Int_t *caloJetSorted = new Int_t[nCaloJets];
627 
628  TMath::Sort(nCaloJets, nCaloET, caloJetSorted, true);
629 
630  for (Int_t i = 0; i < nCaloJets; ++i) {
631  if (i >= 5) {
632  break;
633  }
634 
635  calojet_et[i] = nCaloET[caloJetSorted[i]];
636  calojet_eta[i] = nCaloEta[caloJetSorted[i]];
637  calojet_phi[i] = nCaloPhi[caloJetSorted[i]];
638  }
639 
640  delete[] caloJetSorted;
641  delete[] nCaloET;
642  delete[] nCaloEta;
643  delete[] nCaloPhi;
644  }
645  }
646 
647  // pf jets now:
648  if (pPfJets.isValid()) {
649  const reco::PFJetCollection *pfJets = pPfJets.product();
650  Int_t nPfJets = (Int_t)pfJets->size();
651 
652  if (nPfJets > 0) {
653  Float_t *nPfET = new Float_t[nPfJets];
654  Float_t *nPfEta = new Float_t[nPfJets];
655  Float_t *nPfPhi = new Float_t[nPfJets];
656 
657  // reco::PFJetCollection::const_iterator pjet = pfJets->begin();
658 
659  Int_t counter = 0;
660 
661  for (reco::PFJetCollection::const_iterator pjet = pfJets->begin(); pjet != pfJets->end(); ++pjet) {
662  // store them only if they are far enough from the electron
663 
664  Double_t DR1 = reco::deltaR(pjet->eta(), pjet->phi(), myElec1->gsfTrack()->eta(), ele1_sc_phi);
665  Double_t DR2 = reco::deltaR(pjet->eta(), pjet->phi(), myElec2->gsfTrack()->eta(), ele2_sc_phi);
666 
667  if ((DR1 > DRJetFromElectron_) && (DR2 > DRJetFromElectron_)) {
668  nPfET[counter] = pjet->et();
669  nPfEta[counter] = pjet->eta();
670  nPfPhi[counter] = pjet->phi();
671  ++counter;
672  }
673  }
674 
675  Int_t *pfJetSorted = new Int_t[nPfJets];
676 
677  TMath::Sort(nPfJets, nPfET, pfJetSorted, true);
678 
679  for (Int_t i = 0; i < nPfJets; ++i) {
680  if (i >= 5) {
681  break;
682  }
683 
684  pfjet_et[i] = nPfET[pfJetSorted[i]];
685  pfjet_eta[i] = nPfEta[pfJetSorted[i]];
686  pfjet_phi[i] = nPfPhi[pfJetSorted[i]];
687  }
688 
689  delete[] pfJetSorted;
690  delete[] nPfET;
691  delete[] nPfEta;
692  delete[] nPfPhi;
693  }
694  }
695  }
696 
697  // if the electrons pass the selection
698  // it is meant to be a precalculated selection here, in order to include
699  // conversion rejection too
700  if (CheckCuts1(myElec1) && CheckCuts2(myElec2)) {
701  vbtfSele_tree->Fill();
702  }
703 
704  vbtfPresele_tree->Fill();
705 
706  //
707  // _______________________________________________________________________
708  //
709  // histogram production --------------------------------------------------
710  // _______________________________________________________________________
711  //
712  // if you want some preselection: Conv rejection, hit pattern
713 
714  // if ( usePreselection_ ) {
715  //
716  // Bool_t a1 = PassPreselectionCriteria1(myElec1);
717  // Bool_t a2 = PassPreselectionCriteria2(myElec2);
718  //
719  // if ( ! (a1 && a2) ) {
720  // return ;
721  // }
722  // }
723 
724  Bool_t passPre1 = (usePreselection1_) ? PassPreselectionCriteria1(myElec1) : true;
725  Bool_t passPre2 = (usePreselection2_) ? PassPreselectionCriteria2(myElec2) : true;
726 
727  if (!(passPre1 && passPre2)) {
728  std::cout << "At least one electron fails preselection: Electron #1 = " << passPre1
729  << " - Electron #2 = " << passPre2 << std::endl;
730 
731  return;
732  }
733 
734  TLorentzVector e1;
735  TLorentzVector e2;
736 
737  // math::XYZVector p1 = myElec1->trackMomentumAtVtx();
738  // math::XYZVector p2 = myElec2->trackMomentumAtVtx();
739  // e1.SetPxPyPzE(p1.X(), p1.Y(), p1.Z(), myElec1->caloEnergy());
740  // e2.SetPxPyPzE(p2.X(), p2.Y(), p2.Z(), myElec2->caloEnergy());
741 
742  // Use directly the et,eta,phi from pat::Electron; assume e mass = 0.000511 GeV
743  e1.SetPtEtaPhiM(myElec1->et(), myElec1->eta(), myElec1->phi(), 0.000511);
744  e2.SetPtEtaPhiM(myElec2->et(), myElec2->eta(), myElec2->phi(), 0.000511);
745 
746  TLorentzVector Z = e1 + e2;
747 
748  Double_t mee = Z.M();
749 
750  // the selection plots:
751  Bool_t pass = (CheckCuts1(myElec1) && CheckCuts2(myElec2));
752 
753  //cout << "This event passes? " << pass << ", mee is: " << mee
754  // << " and the histo is filled." << endl;
755 
756  if (!pass) {
757  return;
758  }
759 
760  h_mee->Fill(mee);
761 
762  if (TMath::Abs(e1.Eta()) < 1.479 && TMath::Abs(e2.Eta()) < 1.479) {
763  h_mee_EBEB->Fill(mee);
764  }
765  if (TMath::Abs(e1.Eta()) < 1.479 && TMath::Abs(e2.Eta()) > 1.479) {
766  h_mee_EBEE->Fill(mee);
767  }
768  if (TMath::Abs(e1.Eta()) > 1.479 && TMath::Abs(e2.Eta()) < 1.479) {
769  h_mee_EBEE->Fill(mee);
770  }
771  if (TMath::Abs(e1.Eta()) > 1.479 && TMath::Abs(e2.Eta()) > 1.479) {
772  h_mee_EEEE->Fill(mee);
773  }
774 
775  h_Zcand_PT->Fill(Z.Pt());
776  h_Zcand_Y->Fill(Z.Rapidity());
777 
778  h_e_PT->Fill(e1.Pt());
779  h_e_PT->Fill(e2.Pt());
780  h_e_ETA->Fill(e1.Eta());
781  h_e_ETA->Fill(e2.Eta());
782  h_e_PHI->Fill(e1.Phi());
783  h_e_PHI->Fill(e2.Phi());
784 
785  if (TMath::Abs(myElec1->eta()) < 1.479) {
786  h_EB_trkiso->Fill(ReturnCandVar(myElec1, 0));
787  h_EB_ecaliso->Fill(ReturnCandVar(myElec1, 1));
788  h_EB_hcaliso->Fill(ReturnCandVar(myElec1, 2));
789  h_EB_sIetaIeta->Fill(myElec1->scSigmaIEtaIEta());
790  h_EB_dphi->Fill(myElec1->deltaPhiSuperClusterTrackAtVtx());
791  h_EB_deta->Fill(myElec1->deltaEtaSuperClusterTrackAtVtx());
792  h_EB_HoE->Fill(myElec1->hadronicOverEm());
793  } else {
794  h_EE_trkiso->Fill(ReturnCandVar(myElec1, 0));
795  h_EE_ecaliso->Fill(ReturnCandVar(myElec1, 1));
796  h_EE_hcaliso->Fill(ReturnCandVar(myElec1, 2));
797  h_EE_sIetaIeta->Fill(myElec1->scSigmaIEtaIEta());
798  h_EE_dphi->Fill(myElec1->deltaPhiSuperClusterTrackAtVtx());
799  h_EE_deta->Fill(myElec1->deltaEtaSuperClusterTrackAtVtx());
800  h_EE_HoE->Fill(myElec1->hadronicOverEm());
801  }
802 
803  if (TMath::Abs(myElec2->eta()) < 1.479) {
804  h_EB_trkiso->Fill(ReturnCandVar(myElec2, 0));
805  h_EB_ecaliso->Fill(ReturnCandVar(myElec2, 1));
806  h_EB_hcaliso->Fill(ReturnCandVar(myElec2, 2));
807  h_EB_sIetaIeta->Fill(myElec2->scSigmaIEtaIEta());
808  h_EB_dphi->Fill(myElec2->deltaPhiSuperClusterTrackAtVtx());
809  h_EB_deta->Fill(myElec2->deltaEtaSuperClusterTrackAtVtx());
810  h_EB_HoE->Fill(myElec2->hadronicOverEm());
811  } else {
812  h_EE_trkiso->Fill(ReturnCandVar(myElec2, 0));
813  h_EE_ecaliso->Fill(ReturnCandVar(myElec2, 1));
814  h_EE_hcaliso->Fill(ReturnCandVar(myElec2, 2));
815  h_EE_sIetaIeta->Fill(myElec2->scSigmaIEtaIEta());
816  h_EE_dphi->Fill(myElec2->deltaPhiSuperClusterTrackAtVtx());
817  h_EE_deta->Fill(myElec2->deltaEtaSuperClusterTrackAtVtx());
818  h_EE_HoE->Fill(myElec2->hadronicOverEm());
819  }
820 
821  //Double_tscEta=myElec->superCluster()->eta();
822  //Double_tscPhi=myElec->superCluster()->phi();
823  //Double_tscEt=myElec->superCluster()->energy()/cosh(scEta);
824 }
Float_t ele2_cr_dcot
Definition: ZeePlots.h:322
Analysis-level particle class.
Float_t ele1_sc_energy
Definition: ZeePlots.h:304
TH1F * h_mee
Definition: ZeePlots.h:103
Analysis-level MET class.
Definition: MET.h:40
Float_t ele2_sc_gsf_et
Definition: ZeePlots.h:318
Float_t ele2_id_sihih
Definition: ZeePlots.h:321
Float_t ele2_iso_hcal
Definition: ZeePlots.h:320
Float_t pv_x1
Definition: ZeePlots.h:312
Float_t ele1_cand_eta
Definition: ZeePlots.h:306
EventAuxiliary const & eventAuxiliary() const override
Definition: Event.h:93
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:238
double eta() const final
momentum pseudorapidity
TH1F * h_Zcand_Y
Definition: ZeePlots.h:108
Float_t pv_y2
Definition: ZeePlots.h:325
Float_t calojet_phi[5]
Definition: ZeePlots.h:337
Float_t ele2_id_hoe
Definition: ZeePlots.h:321
float eSuperClusterOverP() const
Definition: GsfElectron.h:221
edm::EDGetTokenT< pat::CompositeCandidateCollection > zeeCollectionToken_
Definition: ZeePlots.h:96
Float_t event_pfMET_phi
Definition: ZeePlots.h:331
TH1F * h_EE_hcaliso
Definition: ZeePlots.h:124
double vy() const override
y coordinate of vertex position
Float_t ele1_id_dphi
Definition: ZeePlots.h:308
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
Float_t ele1_vz
Definition: ZeePlots.h:310
Float_t ele2_id_dphi
Definition: ZeePlots.h:321
Int_t DatasetTag_
Definition: ZeePlots.h:355
TH1F * h_EE_deta
Definition: ZeePlots.h:127
Float_t ele2_iso_track
Definition: ZeePlots.h:320
Float_t ele2_vy
Definition: ZeePlots.h:323
TH1F * h_EB_trkiso
Definition: ZeePlots.h:114
Int_t ele2_gsfCharge
Definition: ZeePlots.h:327
Float_t ele2_cand_phi
Definition: ZeePlots.h:319
Float_t event_tcMET_phi
Definition: ZeePlots.h:331
edm::EDGetTokenT< reco::CaloJetCollection > caloJetCollectionToken_
Definition: ZeePlots.h:97
TH1F * h_EB_sIetaIeta
Definition: ZeePlots.h:117
Float_t pfjet_eta[5]
Definition: ZeePlots.h:339
Float_t ele1_sc_eta
Definition: ZeePlots.h:304
edm::LuminosityBlockNumber_t luminosityBlock() const
Definition: EventBase.h:61
Float_t ele1_id_hoe
Definition: ZeePlots.h:308
Float_t event_Mee
Definition: ZeePlots.h:333
Float_t ele1_iso_ecal
Definition: ZeePlots.h:307
Int_t ele1_ctfCharge
Definition: ZeePlots.h:314
edm::EDGetTokenT< reco::PFJetCollection > pfJetCollectionToken_
Definition: ZeePlots.h:98
Float_t ele2_cr_dist
Definition: ZeePlots.h:322
TH1F * h_EB_HoE
Definition: ZeePlots.h:120
Float_t pv_x2
Definition: ZeePlots.h:325
Float_t ele1_cand_phi
Definition: ZeePlots.h:306
Float_t pfjet_et[5]
Definition: ZeePlots.h:338
Float_t ele1_sc_phi
Definition: ZeePlots.h:304
float userFloat(const std::string &key) const
Definition: PATObject.h:876
Float_t ele1_cr_dist
Definition: ZeePlots.h:309
Int_t ele1_gsfCharge
Definition: ZeePlots.h:314
TH1F * h_mee_EBEE
Definition: ZeePlots.h:105
Bool_t CheckCuts1(const pat::Electron *)
Definition: ZeePlots.cc:841
Float_t ele2_sc_energy
Definition: ZeePlots.h:317
TH1F * h_EE_sIetaIeta
Definition: ZeePlots.h:125
Float_t calojet_eta[5]
Definition: ZeePlots.h:336
float deltaEtaSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:225
float sigmaIetaIeta() const
Definition: GsfElectron.h:411
float hadronicOverEm() const
Definition: GsfElectron.h:468
Float_t ele1_vy
Definition: ZeePlots.h:310
Float_t pfjet_phi[5]
Definition: ZeePlots.h:340
Long64_t eventNumber
Definition: ZeePlots.h:302
TH1F * h_EE_ecaliso
Definition: ZeePlots.h:123
double et() const final
transverse energy
Float_t ele1_id_deta
Definition: ZeePlots.h:308
Int_t ele1_scPixCharge
Definition: ZeePlots.h:314
Int_t ele2_scPixCharge
Definition: ZeePlots.h:327
TH1F * h_mee_EEEE
Definition: ZeePlots.h:106
Float_t event_caloMET_phi
Definition: ZeePlots.h:331
float deltaPhiSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:228
TH1F * h_e_PT
Definition: ZeePlots.h:110
T Abs(T a)
Definition: MathUtil.h:49
Int_t lumiSection
Definition: ZeePlots.h:300
RunNumber_t run() const
Definition: Event.h:107
Float_t ele2_vz
Definition: ZeePlots.h:323
Float_t ele2_iso_ecal
Definition: ZeePlots.h:320
Float_t calojet_et[5]
Definition: ZeePlots.h:335
Float_t pv_y1
Definition: ZeePlots.h:312
TH1F * h_EE_trkiso
Definition: ZeePlots.h:122
Float_t ele2_sc_phi
Definition: ZeePlots.h:317
Float_t ele1_sc_gsf_et
Definition: ZeePlots.h:305
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
Float_t ele1_cr_mhitsinner
Definition: ZeePlots.h:309
bool isValid() const
Definition: HandleBase.h:70
Float_t event_tcMET
Definition: ZeePlots.h:330
Float_t ele2_vx
Definition: ZeePlots.h:323
Float_t ele2_sc_eta
Definition: ZeePlots.h:317
Bool_t PassPreselectionCriteria2(const pat::Electron *)
Definition: ZeePlots.cc:1104
float scSigmaIEtaIEta() const
Definition: GsfElectron.h:464
Float_t ele1_iso_track
Definition: ZeePlots.h:307
Bool_t usePreselection2_
Definition: ZeePlots.h:88
TH1F * h_EB_deta
Definition: ZeePlots.h:119
double vz() const override
z coordinate of vertex position
myMet
store a preIso track event.preIsoTrack.append(track)
constexpr auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
Definition: deltaR.h:30
TTree * vbtfPresele_tree
Definition: ZeePlots.h:348
TH1F * h_EE_dphi
Definition: ZeePlots.h:126
TH1F * h_EB_ecaliso
Definition: ZeePlots.h:115
Int_t ele2_ctfCharge
Definition: ZeePlots.h:327
Double_t DRJetFromElectron_
Definition: ZeePlots.h:354
const ChargeInfo & chargeInfo() const
Definition: GsfElectron.h:131
std::vector< CompositeCandidate > CompositeCandidateCollection
T const * product() const
Definition: Handle.h:69
Float_t ele2_tip_bs
Definition: ZeePlots.h:328
TH1F * h_EB_hcaliso
Definition: ZeePlots.h:116
Float_t ele2_id_deta
Definition: ZeePlots.h:321
Bool_t PassPreselectionCriteria1(const pat::Electron *)
Definition: ZeePlots.cc:1057
Analysis-level electron class.
Definition: Electron.h:51
reco::TrackRef closestCtfTrackRef() const override
override the reco::GsfElectron::closestCtfTrackRef method, to access the internal storage of the trac...
Float_t ele2_cand_eta
Definition: ZeePlots.h:319
TH1F * h_e_ETA
Definition: ZeePlots.h:111
Float_t ele2_tip_pv
Definition: ZeePlots.h:328
Float_t event_caloMET
Definition: ZeePlots.h:330
TH1F * h_EE_HoE
Definition: ZeePlots.h:128
Bool_t usePreselection1_
Definition: ZeePlots.h:82
Float_t ele1_id_sihih
Definition: ZeePlots.h:308
Float_t event_pfMET
Definition: ZeePlots.h:330
Double_t ReturnCandVar(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:1005
double dB(IPTYPE type) const
Impact parameter wrt primary vertex or beamspot.
Float_t ele2_cand_et
Definition: ZeePlots.h:319
std::vector< PFJet > PFJetCollection
collection of PFJet objects
const IsolationVariables & dr03IsolationVariables() const
Definition: GsfElectron.h:530
Int_t event_datasetTag
Definition: ZeePlots.h:342
static std::atomic< unsigned int > counter
Int_t runNumber
Definition: ZeePlots.h:300
Float_t ele1_eop
Definition: ZeePlots.h:315
Bool_t includeJetInformationInNtuples_
Definition: ZeePlots.h:353
Float_t ele1_cand_et
Definition: ZeePlots.h:306
TH1F * h_e_PHI
Definition: ZeePlots.h:112
TTree * vbtfSele_tree
Definition: ZeePlots.h:347
TH1F * h_EB_dphi
Definition: ZeePlots.h:118
Float_t ele1_iso_hcal
Definition: ZeePlots.h:307
reco::GsfTrackRef gsfTrack() const override
override the reco::GsfElectron::gsfTrack method, to access the internal storage of the supercluster ...
Float_t pv_z1
Definition: ZeePlots.h:312
Float_t ele1_tip_bs
Definition: ZeePlots.h:315
Float_t ele1_vx
Definition: ZeePlots.h:310
TH1F * h_Zcand_PT
Definition: ZeePlots.h:107
Bool_t CheckCuts2(const pat::Electron *)
Definition: ZeePlots.cc:869
double phi() const final
momentum azimuthal angle
TH1F * h_mee_EBEB
Definition: ZeePlots.h:104
reco::SuperClusterRef superCluster() const override
override the reco::GsfElectron::superCluster method, to access the internal storage of the superclust...
Float_t ele2_eop
Definition: ZeePlots.h:328
EventNumber_t event() const
Float_t pv_z2
Definition: ZeePlots.h:325
Float_t ele1_tip_pv
Definition: ZeePlots.h:315
double vx() const override
x coordinate of vertex position
Float_t ele1_cr_dcot
Definition: ZeePlots.h:309
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
Float_t ele2_cr_mhitsinner
Definition: ZeePlots.h:322
void ZeePlots::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 1153 of file ZeePlots.cc.

References calojet_et, calojet_eta, calojet_phi, cIso1_EB_, cIso1_EB_inv, cIso1_EE_, cIso1_EE_inv, cIso2_EB_, cIso2_EB_inv, cIso2_EE_, cIso2_EE_inv, CutVars1_, CutVars2_, deta1_EB_, deta1_EB_inv, deta1_EE_, deta1_EE_inv, deta2_EB_, deta2_EB_inv, deta2_EE_, deta2_EE_inv, dphi1_EB_, dphi1_EB_inv, dphi1_EE_, dphi1_EE_inv, dphi2_EB_, dphi2_EB_inv, dphi2_EE_, dphi2_EE_inv, ecalIso1_EB_, ecalIso1_EB_inv, ecalIso1_EE_, ecalIso1_EE_inv, ecalIso2_EB_, ecalIso2_EB_inv, ecalIso2_EE_, ecalIso2_EE_inv, ecalIsoUser1_EB_, ecalIsoUser1_EB_inv, ecalIsoUser1_EE_, ecalIsoUser1_EE_inv, ecalIsoUser2_EB_, ecalIsoUser2_EB_inv, ecalIsoUser2_EE_, ecalIsoUser2_EE_inv, ele1_cand_et, ele1_cand_eta, ele1_cand_phi, ele1_cr_dcot, ele1_cr_dist, ele1_cr_mhitsinner, ele1_ctfCharge, ele1_eop, ele1_gsfCharge, ele1_id_deta, ele1_id_dphi, ele1_id_hoe, ele1_id_sihih, ele1_iso_ecal, ele1_iso_hcal, ele1_iso_track, ele1_sc_energy, ele1_sc_eta, ele1_sc_gsf_et, ele1_sc_phi, ele1_scPixCharge, ele1_tip_bs, ele1_tip_pv, ele1_vx, ele1_vy, ele1_vz, ele2_cand_et, ele2_cand_eta, ele2_cand_phi, ele2_cr_dcot, ele2_cr_dist, ele2_cr_mhitsinner, ele2_ctfCharge, ele2_eop, ele2_gsfCharge, ele2_id_deta, ele2_id_dphi, ele2_id_hoe, ele2_id_sihih, ele2_iso_ecal, ele2_iso_hcal, ele2_iso_track, ele2_sc_energy, ele2_sc_eta, ele2_sc_gsf_et, ele2_sc_phi, ele2_scPixCharge, ele2_tip_bs, ele2_tip_pv, ele2_vx, ele2_vy, ele2_vz, eop1_EB_, eop1_EB_inv, eop1_EE_, eop1_EE_inv, eop2_EB_, eop2_EB_inv, eop2_EE_, eop2_EE_inv, event_caloMET, event_caloMET_phi, event_datasetTag, event_Mee, event_pfMET, event_pfMET_phi, event_tcMET, event_tcMET_phi, eventNumber, h_e_ETA, h_e_PHI, h_e_PT, h_EB_deta, h_EB_dphi, h_EB_ecaliso, h_EB_hcaliso, h_EB_HoE, h_EB_sIetaIeta, h_EB_trkiso, h_EE_deta, h_EE_dphi, h_EE_ecaliso, h_EE_hcaliso, h_EE_HoE, h_EE_sIetaIeta, h_EE_trkiso, h_mee, h_mee_EBEB, h_mee_EBEE, h_mee_EEEE, h_Zcand_PT, h_Zcand_Y, hcalIso1_EB_, hcalIso1_EB_inv, hcalIso1_EE_, hcalIso1_EE_inv, hcalIso2_EB_, hcalIso2_EB_inv, hcalIso2_EE_, hcalIso2_EE_inv, hcalIsoUser1_EB_, hcalIsoUser1_EB_inv, hcalIsoUser1_EE_, hcalIsoUser1_EE_inv, hcalIsoUser2_EB_, hcalIsoUser2_EB_inv, hcalIsoUser2_EE_, hcalIsoUser2_EE_inv, hoe1_EB_, hoe1_EB_inv, hoe1_EE_, hoe1_EE_inv, hoe2_EB_, hoe2_EB_inv, hoe2_EE_, hoe2_EE_inv, includeJetInformationInNtuples_, InvVars1_, InvVars2_, lumiSection, nBarrelVars_, pfjet_et, pfjet_eta, pfjet_phi, pv_x1, pv_x2, pv_y1, pv_y2, pv_z1, pv_z2, runNumber, sihih1_EB_, sihih1_EB_inv, sihih1_EE_, sihih1_EE_inv, sihih2_EB_, sihih2_EB_inv, sihih2_EE_, sihih2_EE_inv, tip_bspot1_EB_, tip_bspot1_EB_inv, tip_bspot1_EE_, tip_bspot1_EE_inv, tip_bspot2_EB_, tip_bspot2_EB_inv, tip_bspot2_EE_, tip_bspot2_EE_inv, trackIso1_EB_, trackIso1_EB_inv, trackIso1_EE_, trackIso1_EE_inv, trackIso2_EB_, trackIso2_EB_inv, trackIso2_EE_, trackIso2_EE_inv, trackIsoUser1_EB_, trackIsoUser1_EB_inv, trackIsoUser1_EE_, trackIsoUser1_EE_inv, trackIsoUser2_EB_, trackIsoUser2_EB_inv, trackIsoUser2_EE_, trackIsoUser2_EE_inv, vbtfPresele_tree, vbtfSele_tree, ZEE_VBTFpreseleFile_, ZEE_VBTFpreseleFileName_, ZEE_VBTFselectionFile_, and ZEE_VBTFselectionFileName_.

1153  {
1154  //std::cout << "In beginJob()" << std::endl;
1155 
1156  h_mee = new TH1F("h_mee", "h_mee", 200, 0.0, 200.0);
1157  h_mee_EBEB = new TH1F("h_mee_EBEB", "h_mee_EBEB", 200, 0.0, 200.0);
1158  h_mee_EBEE = new TH1F("h_mee_EBEE", "h_mee_EBEE", 200, 0.0, 200.0);
1159  h_mee_EEEE = new TH1F("h_mee_EEEE", "h_mee_EEEE", 200, 0.0, 200.0);
1160  h_Zcand_PT = new TH1F("h_Zcand_PT", "h_Zcand_PT", 200, 0.0, 100.0);
1161  h_Zcand_Y = new TH1F("h_Zcand_Y", "h_Zcand_Y", 200, -5.0, 5.0);
1162  h_e_PT = new TH1F("h_e_PT", "h_e_PT", 200, 0.0, 100.0);
1163  h_e_ETA = new TH1F("h_e_ETA", "h_e_ETA", 200, -3.0, 3.0);
1164  h_e_PHI = new TH1F("h_e_PHI", "h_e_PHI", 200, -4.0, 4.0);
1165 
1166  //VALIDATION PLOTS
1167  // EB
1168  h_EB_trkiso = new TH1F("h_EB_trkiso", "h_EB_trkiso", 200, 0.00, 9.00);
1169  h_EB_ecaliso = new TH1F("h_EB_ecaliso", "h_EB_ecaliso", 200, 0.00, 9.00);
1170  h_EB_hcaliso = new TH1F("h_EB_hcaliso", "h_EB_hcaliso", 200, 0.00, 9.00);
1171  h_EB_sIetaIeta = new TH1F("h_EB_sIetaIeta", "h_EB_sIetaIeta", 200, 0.00, 0.02);
1172  h_EB_dphi = new TH1F("h_EB_dphi", "h_EB_dphi", 200, -0.03, 0.03);
1173  h_EB_deta = new TH1F("h_EB_deta", "h_EB_deta", 200, -0.01, 0.01);
1174  h_EB_HoE = new TH1F("h_EB_HoE", "h_EB_HoE", 200, 0.00, 0.20);
1175  // EE
1176  h_EE_trkiso = new TH1F("h_EE_trkiso", "h_EE_trkiso", 200, 0.00, 9.00);
1177  h_EE_ecaliso = new TH1F("h_EE_ecaliso", "h_EE_ecaliso", 200, 0.00, 9.00);
1178  h_EE_hcaliso = new TH1F("h_EE_hcaliso", "h_EE_hcaliso", 200, 0.00, 9.00);
1179  h_EE_sIetaIeta = new TH1F("h_EE_sIetaIeta", "h_EE_sIetaIeta", 200, 0.00, 0.10);
1180  h_EE_dphi = new TH1F("h_EE_dphi", "h_EE_dphi", 200, -0.03, 0.03);
1181  h_EE_deta = new TH1F("h_EE_deta", "h_EE_deta", 200, -0.01, 0.01);
1182  h_EE_HoE = new TH1F("h_EE_HoE", "h_EE_HoE", 200, 0.00, 0.20);
1183 
1184  // if you add some new variable change the nBarrelVars_ accordingly
1185  // reminder: in the current implementation you must have the same number
1186  // of vars in both barrel and endcaps
1187 
1188  nBarrelVars_ = 13;
1189 
1190  //
1191  // Put EB variables together and EE variables together
1192  // number of barrel variables = number of endcap variable
1193  // if you don't want to use some variable put a very high cut
1194 
1195  // 1st Leg variables
1196  CutVars1_.push_back(trackIso1_EB_); // 0
1197  CutVars1_.push_back(ecalIso1_EB_); // 1
1198  CutVars1_.push_back(hcalIso1_EB_); // 2
1199  CutVars1_.push_back(sihih1_EB_); // 3
1200  CutVars1_.push_back(dphi1_EB_); // 4
1201  CutVars1_.push_back(deta1_EB_); // 5
1202  CutVars1_.push_back(hoe1_EB_); // 6
1203  CutVars1_.push_back(cIso1_EB_); // 7
1204  CutVars1_.push_back(tip_bspot1_EB_); // 8
1205  CutVars1_.push_back(eop1_EB_); // 9
1206  CutVars1_.push_back(trackIsoUser1_EB_); // 10
1207  CutVars1_.push_back(ecalIsoUser1_EB_); // 11
1208  CutVars1_.push_back(hcalIsoUser1_EB_); // 12
1209 
1210  CutVars1_.push_back(trackIso1_EE_); // 0
1211  CutVars1_.push_back(ecalIso1_EE_); // 1
1212  CutVars1_.push_back(hcalIso1_EE_); // 2
1213  CutVars1_.push_back(sihih1_EE_); // 3
1214  CutVars1_.push_back(dphi1_EE_); // 4
1215  CutVars1_.push_back(deta1_EE_); // 5
1216  CutVars1_.push_back(hoe1_EE_); // 6
1217  CutVars1_.push_back(cIso1_EE_); // 7
1218  CutVars1_.push_back(tip_bspot1_EE_); // 8
1219  CutVars1_.push_back(eop1_EE_); // 9
1220  CutVars1_.push_back(trackIsoUser1_EE_); // 10
1221  CutVars1_.push_back(ecalIsoUser1_EE_); // 11
1222  CutVars1_.push_back(hcalIsoUser1_EE_); // 12
1223 
1224  InvVars1_.push_back(trackIso1_EB_inv); // 0
1225  InvVars1_.push_back(ecalIso1_EB_inv); // 1
1226  InvVars1_.push_back(hcalIso1_EB_inv); // 2
1227  InvVars1_.push_back(sihih1_EB_inv); // 3
1228  InvVars1_.push_back(dphi1_EB_inv); // 4
1229  InvVars1_.push_back(deta1_EB_inv); // 5
1230  InvVars1_.push_back(hoe1_EB_inv); // 6
1231  InvVars1_.push_back(cIso1_EB_inv); // 7
1232  InvVars1_.push_back(tip_bspot1_EB_inv); // 8
1233  InvVars1_.push_back(eop1_EB_inv); // 9
1234  InvVars1_.push_back(trackIsoUser1_EB_inv); // 10
1235  InvVars1_.push_back(ecalIsoUser1_EB_inv); // 11
1236  InvVars1_.push_back(hcalIsoUser1_EB_inv); // 12
1237 
1238  InvVars1_.push_back(trackIso1_EE_inv); // 0
1239  InvVars1_.push_back(ecalIso1_EE_inv); // 1
1240  InvVars1_.push_back(hcalIso1_EE_inv); // 2
1241  InvVars1_.push_back(sihih1_EE_inv); // 3
1242  InvVars1_.push_back(dphi1_EE_inv); // 4
1243  InvVars1_.push_back(deta1_EE_inv); // 5
1244  InvVars1_.push_back(hoe1_EE_inv); // 6
1245  InvVars1_.push_back(cIso1_EE_inv); // 7
1246  InvVars1_.push_back(tip_bspot1_EE_inv); // 8
1247  InvVars1_.push_back(eop1_EE_inv); // 9
1248  InvVars1_.push_back(trackIsoUser1_EE_inv); // 10
1249  InvVars1_.push_back(ecalIsoUser1_EE_inv); // 11
1250  InvVars1_.push_back(hcalIsoUser1_EE_inv); // 12
1251 
1252  // 2nd Leg variables
1253  CutVars2_.push_back(trackIso2_EB_); // 0
1254  CutVars2_.push_back(ecalIso2_EB_); // 1
1255  CutVars2_.push_back(hcalIso2_EB_); // 2
1256  CutVars2_.push_back(sihih2_EB_); // 3
1257  CutVars2_.push_back(dphi2_EB_); // 4
1258  CutVars2_.push_back(deta2_EB_); // 5
1259  CutVars2_.push_back(hoe2_EB_); // 6
1260  CutVars2_.push_back(cIso2_EB_); // 7
1261  CutVars2_.push_back(tip_bspot2_EB_); // 8
1262  CutVars2_.push_back(eop2_EB_); // 9
1263  CutVars2_.push_back(trackIsoUser2_EB_); // 10
1264  CutVars2_.push_back(ecalIsoUser2_EB_); // 11
1265  CutVars2_.push_back(hcalIsoUser2_EB_); // 12
1266 
1267  CutVars2_.push_back(trackIso2_EE_); // 0
1268  CutVars2_.push_back(ecalIso2_EE_); // 1
1269  CutVars2_.push_back(hcalIso2_EE_); // 2
1270  CutVars2_.push_back(sihih2_EE_); // 3
1271  CutVars2_.push_back(dphi2_EE_); // 4
1272  CutVars2_.push_back(deta2_EE_); // 5
1273  CutVars2_.push_back(hoe2_EE_); // 6
1274  CutVars2_.push_back(cIso2_EE_); // 7
1275  CutVars2_.push_back(tip_bspot2_EE_); // 8
1276  CutVars2_.push_back(eop2_EE_); // 9
1277  CutVars2_.push_back(trackIsoUser2_EE_); // 10
1278  CutVars2_.push_back(ecalIsoUser2_EE_); // 11
1279  CutVars2_.push_back(hcalIsoUser2_EE_); // 12
1280 
1281  InvVars2_.push_back(trackIso2_EB_inv); // 0
1282  InvVars2_.push_back(ecalIso2_EB_inv); // 1
1283  InvVars2_.push_back(hcalIso2_EB_inv); // 2
1284  InvVars2_.push_back(sihih2_EB_inv); // 3
1285  InvVars2_.push_back(dphi2_EB_inv); // 4
1286  InvVars2_.push_back(deta2_EB_inv); // 5
1287  InvVars2_.push_back(hoe2_EB_inv); // 6
1288  InvVars2_.push_back(cIso2_EB_inv); // 7
1289  InvVars2_.push_back(tip_bspot2_EB_inv); // 8
1290  InvVars2_.push_back(eop2_EB_inv); // 9
1291  InvVars2_.push_back(trackIsoUser2_EB_inv); // 10
1292  InvVars2_.push_back(ecalIsoUser2_EB_inv); // 11
1293  InvVars2_.push_back(hcalIsoUser2_EB_inv); // 12
1294 
1295  InvVars2_.push_back(trackIso2_EE_inv); // 0
1296  InvVars2_.push_back(ecalIso2_EE_inv); // 1
1297  InvVars2_.push_back(hcalIso2_EE_inv); // 2
1298  InvVars2_.push_back(sihih2_EE_inv); // 3
1299  InvVars2_.push_back(dphi2_EE_inv); // 4
1300  InvVars2_.push_back(deta2_EE_inv); // 5
1301  InvVars2_.push_back(hoe2_EE_inv); // 6
1302  InvVars2_.push_back(cIso2_EE_inv); // 7
1303  InvVars2_.push_back(tip_bspot2_EE_inv); // 8
1304  InvVars2_.push_back(eop2_EE_inv); // 9
1305  InvVars2_.push_back(trackIsoUser2_EE_inv); // 10
1306  InvVars2_.push_back(ecalIsoUser2_EE_inv); // 11
1307  InvVars2_.push_back(hcalIsoUser2_EE_inv); // 12
1308 
1309  // ________________________________________________________________________
1310  //
1311  // The VBTF Root Tuples ---------------------------------------------------
1312  // ________________________________________________________________________
1313  //
1314  ZEE_VBTFselectionFile_ = new TFile(TString(ZEE_VBTFselectionFileName_), "RECREATE");
1315 
1316  vbtfSele_tree = new TTree("vbtfSele_tree", "Tree to store the Z Candidates that pass the VBTF selection");
1317 
1318  vbtfSele_tree->Branch("runNumber", &runNumber, "runNumber/I");
1319  vbtfSele_tree->Branch("eventNumber", &eventNumber, "eventNumber/L");
1320  vbtfSele_tree->Branch("lumiSection", &lumiSection, "lumiSection/I");
1321 
1322  // for ele 1
1323  vbtfSele_tree->Branch("ele1_sc_gsf_et", &ele1_sc_gsf_et, "ele1_sc_gsf_et/F");
1324  vbtfSele_tree->Branch("ele1_sc_energy", &ele1_sc_energy, "ele1_sc_energy/F");
1325  vbtfSele_tree->Branch("ele1_sc_eta", &ele1_sc_eta, "ele1_sc_eta/F");
1326  vbtfSele_tree->Branch("ele1_sc_phi", &ele1_sc_phi, "ele1_sc_phi/F");
1327  vbtfSele_tree->Branch("ele1_cand_et", &ele1_cand_et, "ele1_cand_et/F");
1328  vbtfSele_tree->Branch("ele1_cand_eta", &ele1_cand_eta, "ele1_cand_eta/F");
1329  vbtfSele_tree->Branch("ele1_cand_phi", &ele1_cand_phi, "ele1_cand_phi/F");
1330  vbtfSele_tree->Branch("ele1_iso_track", &ele1_iso_track, "ele1_iso_track/F");
1331  vbtfSele_tree->Branch("ele1_iso_ecal", &ele1_iso_ecal, "ele1_iso_ecal/F");
1332  vbtfSele_tree->Branch("ele1_iso_hcal", &ele1_iso_hcal, "ele1_iso_hcal/F");
1333  vbtfSele_tree->Branch("ele1_id_sihih", &ele1_id_sihih, "ele1_id_sihih/F");
1334  vbtfSele_tree->Branch("ele1_id_deta", &ele1_id_deta, "ele1_id_deta/F");
1335  vbtfSele_tree->Branch("ele1_id_dphi", &ele1_id_dphi, "ele1_id_dphi/F");
1336  vbtfSele_tree->Branch("ele1_id_hoe", &ele1_id_hoe, "ele1_id_hoe/F");
1337  vbtfSele_tree->Branch("ele1_cr_mhitsinner", &ele1_cr_mhitsinner, "ele1_cr_mhitsinner/I");
1338  vbtfSele_tree->Branch("ele1_cr_dcot", &ele1_cr_dcot, "ele1_cr_dcot/F");
1339  vbtfSele_tree->Branch("ele1_cr_dist", &ele1_cr_dist, "ele1_cr_dist/F");
1340  vbtfSele_tree->Branch("ele1_vx", &ele1_vx, "ele1_vx/F");
1341  vbtfSele_tree->Branch("ele1_vy", &ele1_vy, "ele1_vy/F");
1342  vbtfSele_tree->Branch("ele1_vz", &ele1_vz, "ele1_vz/F");
1343  vbtfSele_tree->Branch("ele1_gsfCharge", &ele1_gsfCharge, "ele1_gsfCharge/I");
1344  vbtfSele_tree->Branch("ele1_ctfCharge", &ele1_ctfCharge, "ele1_ctfCharge/I");
1345  vbtfSele_tree->Branch("ele1_scPixCharge", &ele1_scPixCharge, "ele1_scPixCharge/I");
1346  vbtfSele_tree->Branch("ele1_eop", &ele1_eop, "ele1_eop/F");
1347  vbtfSele_tree->Branch("ele1_tip_bs", &ele1_tip_bs, "ele1_tip_bs/F");
1348  vbtfSele_tree->Branch("ele1_tip_pv", &ele1_tip_pv, "ele1_tip_pv/F");
1349 
1350  // for ele 2
1351  vbtfSele_tree->Branch("ele2_sc_gsf_et", &ele2_sc_gsf_et, "ele2_sc_gsf_et/F");
1352  vbtfSele_tree->Branch("ele2_sc_energy", &ele2_sc_energy, "ele2_sc_energy/F");
1353  vbtfSele_tree->Branch("ele2_sc_eta", &ele2_sc_eta, "ele2_sc_eta/F");
1354  vbtfSele_tree->Branch("ele2_sc_phi", &ele2_sc_phi, "ele2_sc_phi/F");
1355  vbtfSele_tree->Branch("ele2_cand_et", &ele2_cand_et, "ele2_cand_et/F");
1356  vbtfSele_tree->Branch("ele2_cand_eta", &ele2_cand_eta, "ele2_cand_eta/F");
1357  vbtfSele_tree->Branch("ele2_cand_phi", &ele2_cand_phi, "ele2_cand_phi/F");
1358  vbtfSele_tree->Branch("ele2_iso_track", &ele2_iso_track, "ele2_iso_track/F");
1359  vbtfSele_tree->Branch("ele2_iso_ecal", &ele2_iso_ecal, "ele2_iso_ecal/F");
1360  vbtfSele_tree->Branch("ele2_iso_hcal", &ele2_iso_hcal, "ele2_iso_hcal/F");
1361  vbtfSele_tree->Branch("ele2_id_sihih", &ele2_id_sihih, "ele2_id_sihih/F");
1362  vbtfSele_tree->Branch("ele2_id_deta", &ele2_id_deta, "ele2_id_deta/F");
1363  vbtfSele_tree->Branch("ele2_id_dphi", &ele2_id_dphi, "ele2_id_dphi/F");
1364  vbtfSele_tree->Branch("ele2_id_hoe", &ele2_id_hoe, "ele2_id_hoe/F");
1365  vbtfSele_tree->Branch("ele2_cr_mhitsinner", &ele2_cr_mhitsinner, "ele2_cr_mhitsinner/I");
1366  vbtfSele_tree->Branch("ele2_cr_dcot", &ele2_cr_dcot, "ele2_cr_dcot/F");
1367  vbtfSele_tree->Branch("ele2_cr_dist", &ele2_cr_dist, "ele2_cr_dist/F");
1368  vbtfSele_tree->Branch("ele2_vx", &ele2_vx, "ele2_vx/F");
1369  vbtfSele_tree->Branch("ele2_vy", &ele2_vy, "ele2_vy/F");
1370  vbtfSele_tree->Branch("ele2_vz", &ele2_vz, "ele2_vz/F");
1371  vbtfSele_tree->Branch("ele2_gsfCharge", &ele2_gsfCharge, "ele2_gsfCharge/I");
1372  vbtfSele_tree->Branch("ele2_ctfCharge", &ele2_ctfCharge, "ele2_ctfCharge/I");
1373  vbtfSele_tree->Branch("ele2_scPixCharge", &ele2_scPixCharge, "ele2_scPixCharge/I");
1374  vbtfSele_tree->Branch("ele2_eop", &ele2_eop, "ele2_eop/F");
1375  vbtfSele_tree->Branch("ele2_tip_bs", &ele2_tip_bs, "ele2_tip_bs/F");
1376  vbtfSele_tree->Branch("ele2_tip_pv", &ele2_tip_pv, "ele2_tip_pv/F");
1377  //
1378  vbtfSele_tree->Branch("pv_x1", &pv_x1, "pv_x1/F");
1379  vbtfSele_tree->Branch("pv_y1", &pv_y1, "pv_y1/F");
1380  vbtfSele_tree->Branch("pv_z1", &pv_z1, "pv_z1/F");
1381  //
1382  vbtfSele_tree->Branch("pv_x2", &pv_x2, "pv_x2/F");
1383  vbtfSele_tree->Branch("pv_y2", &pv_y2, "pv_y2/F");
1384  vbtfSele_tree->Branch("pv_z2", &pv_z2, "pv_z2/F");
1385  //
1386  vbtfSele_tree->Branch("event_caloMET", &event_caloMET, "event_caloMET/F");
1387  vbtfSele_tree->Branch("event_pfMET", &event_pfMET, "event_pfMET/F");
1388  vbtfSele_tree->Branch("event_tcMET", &event_tcMET, "event_tcMET/F");
1389  vbtfSele_tree->Branch("event_caloMET_phi", &event_caloMET_phi, "event_caloMET_phi/F");
1390  vbtfSele_tree->Branch("event_pfMET_phi", &event_pfMET_phi, "event_pfMET_phi/F");
1391  vbtfSele_tree->Branch("event_tcMET_phi", &event_tcMET_phi, "event_tcMET_phi/F");
1392 
1393  vbtfSele_tree->Branch("event_Mee", &event_Mee, "event_Mee/F");
1394 
1395  //
1396  // the extra jet variables:
1398  vbtfSele_tree->Branch("calojet_et", calojet_et, "calojet_et[5]/F");
1399  vbtfSele_tree->Branch("calojet_eta", calojet_eta, "calojet_eta[5]/F");
1400  vbtfSele_tree->Branch("calojet_phi", calojet_phi, "calojet_phi[5]/F");
1401  vbtfSele_tree->Branch("pfjet_et", pfjet_et, "pfjet_et[5]/F");
1402  vbtfSele_tree->Branch("pfjet_eta", pfjet_eta, "pfjet_eta[5]/F");
1403  vbtfSele_tree->Branch("pfjet_phi", pfjet_phi, "pfjet_phi[5]/F");
1404  }
1405 
1406  vbtfSele_tree->Branch("event_datasetTag", &event_datasetTag, "event_dataSetTag/I");
1407 
1408  // everything after preselection
1409  ZEE_VBTFpreseleFile_ = new TFile(TString(ZEE_VBTFpreseleFileName_), "RECREATE");
1410 
1411  vbtfPresele_tree = new TTree("vbtfPresele_tree", "Tree to store the Z Candidates that pass the VBTF preselection");
1412 
1413  vbtfPresele_tree->Branch("runNumber", &runNumber, "runNumber/I");
1414  vbtfPresele_tree->Branch("eventNumber", &eventNumber, "eventNumber/L");
1415  vbtfPresele_tree->Branch("lumiSection", &lumiSection, "lumiSection/I");
1416 
1417  // for ele 1
1418  vbtfPresele_tree->Branch("ele1_sc_gsf_et", &ele1_sc_gsf_et, "ele1_sc_gsf_et/F");
1419  vbtfPresele_tree->Branch("ele1_sc_energy", &ele1_sc_energy, "ele1_sc_energy/F");
1420  vbtfPresele_tree->Branch("ele1_sc_eta", &ele1_sc_eta, "ele1_sc_eta/F");
1421  vbtfPresele_tree->Branch("ele1_sc_phi", &ele1_sc_phi, "ele1_sc_phi/F");
1422  vbtfPresele_tree->Branch("ele1_cand_et", &ele1_cand_et, "ele1_cand_et/F");
1423  vbtfPresele_tree->Branch("ele1_cand_eta", &ele1_cand_eta, "ele1_cand_eta/F");
1424  vbtfPresele_tree->Branch("ele1_cand_phi", &ele1_cand_phi, "ele1_cand_phi/F");
1425  vbtfPresele_tree->Branch("ele1_iso_track", &ele1_iso_track, "ele1_iso_track/F");
1426  vbtfPresele_tree->Branch("ele1_iso_ecal", &ele1_iso_ecal, "ele1_iso_ecal/F");
1427  vbtfPresele_tree->Branch("ele1_iso_hcal", &ele1_iso_hcal, "ele1_iso_hcal/F");
1428  vbtfPresele_tree->Branch("ele1_id_sihih", &ele1_id_sihih, "ele1_id_sihih/F");
1429  vbtfPresele_tree->Branch("ele1_id_deta", &ele1_id_deta, "ele1_id_deta/F");
1430  vbtfPresele_tree->Branch("ele1_id_dphi", &ele1_id_dphi, "ele1_id_dphi/F");
1431  vbtfPresele_tree->Branch("ele1_id_hoe", &ele1_id_hoe, "ele1_id_hoe/F");
1432  vbtfPresele_tree->Branch("ele1_cr_mhitsinner", &ele1_cr_mhitsinner, "ele1_cr_mhitsinner/I");
1433  vbtfPresele_tree->Branch("ele1_cr_dcot", &ele1_cr_dcot, "ele1_cr_dcot/F");
1434  vbtfPresele_tree->Branch("ele1_cr_dist", &ele1_cr_dist, "ele1_cr_dist/F");
1435  vbtfPresele_tree->Branch("ele1_vx", &ele1_vx, "ele1_vx/F");
1436  vbtfPresele_tree->Branch("ele1_vy", &ele1_vy, "ele1_vy/F");
1437  vbtfPresele_tree->Branch("ele1_vz", &ele1_vz, "ele1_vz/F");
1438  vbtfPresele_tree->Branch("ele1_gsfCharge", &ele1_gsfCharge, "ele1_gsfCharge/I");
1439  vbtfPresele_tree->Branch("ele1_ctfCharge", &ele1_ctfCharge, "ele1_ctfCharge/I");
1440  vbtfPresele_tree->Branch("ele1_scPixCharge", &ele1_scPixCharge, "ele1_scPixCharge/I");
1441  vbtfPresele_tree->Branch("ele1_eop", &ele1_eop, "ele1_eop/F");
1442  vbtfPresele_tree->Branch("ele1_tip_bs", &ele1_tip_bs, "ele1_tip_bs/F");
1443  vbtfPresele_tree->Branch("ele1_tip_pv", &ele1_tip_pv, "ele1_tip_pv/F");
1444 
1445  // for ele 2
1446  vbtfPresele_tree->Branch("ele2_sc_gsf_et", &ele2_sc_gsf_et, "ele2_sc_gsf_et/F");
1447  vbtfPresele_tree->Branch("ele2_sc_energy", &ele2_sc_energy, "ele2_sc_energy/F");
1448  vbtfPresele_tree->Branch("ele2_sc_eta", &ele2_sc_eta, "ele2_sc_eta/F");
1449  vbtfPresele_tree->Branch("ele2_sc_phi", &ele2_sc_phi, "ele2_sc_phi/F");
1450  vbtfPresele_tree->Branch("ele2_cand_et", &ele2_cand_et, "ele2_cand_et/F");
1451  vbtfPresele_tree->Branch("ele2_cand_eta", &ele2_cand_eta, "ele2_cand_eta/F");
1452  vbtfPresele_tree->Branch("ele2_cand_phi", &ele2_cand_phi, "ele2_cand_phi/F");
1453  vbtfPresele_tree->Branch("ele2_iso_track", &ele2_iso_track, "ele2_iso_track/F");
1454  vbtfPresele_tree->Branch("ele2_iso_ecal", &ele2_iso_ecal, "ele2_iso_ecal/F");
1455  vbtfPresele_tree->Branch("ele2_iso_hcal", &ele2_iso_hcal, "ele2_iso_hcal/F");
1456  vbtfPresele_tree->Branch("ele2_id_sihih", &ele2_id_sihih, "ele2_id_sihih/F");
1457  vbtfPresele_tree->Branch("ele2_id_deta", &ele2_id_deta, "ele2_id_deta/F");
1458  vbtfPresele_tree->Branch("ele2_id_dphi", &ele2_id_dphi, "ele2_id_dphi/F");
1459  vbtfPresele_tree->Branch("ele2_id_hoe", &ele2_id_hoe, "ele2_id_hoe/F");
1460  vbtfPresele_tree->Branch("ele2_cr_mhitsinner", &ele2_cr_mhitsinner, "ele2_cr_mhitsinner/I");
1461  vbtfPresele_tree->Branch("ele2_cr_dcot", &ele2_cr_dcot, "ele2_cr_dcot/F");
1462  vbtfPresele_tree->Branch("ele2_cr_dist", &ele2_cr_dist, "ele2_cr_dist/F");
1463  vbtfPresele_tree->Branch("ele2_vx", &ele2_vx, "ele2_vx/F");
1464  vbtfPresele_tree->Branch("ele2_vy", &ele2_vy, "ele2_vy/F");
1465  vbtfPresele_tree->Branch("ele2_vz", &ele2_vz, "ele2_vz/F");
1466  vbtfPresele_tree->Branch("ele2_gsfCharge", &ele2_gsfCharge, "ele2_gsfCharge/I");
1467  vbtfPresele_tree->Branch("ele2_ctfCharge", &ele2_ctfCharge, "ele2_ctfCharge/I");
1468  vbtfPresele_tree->Branch("ele2_scPixCharge", &ele2_scPixCharge, "ele2_scPixCharge/I");
1469  vbtfPresele_tree->Branch("ele2_eop", &ele2_eop, "ele2_eop/F");
1470  vbtfPresele_tree->Branch("ele2_tip_bs", &ele2_tip_bs, "ele2_tip_bs/F");
1471  vbtfPresele_tree->Branch("ele2_tip_pv", &ele2_tip_pv, "ele2_tip_pv/F");
1472 
1473  vbtfPresele_tree->Branch("pv_x1", &pv_x1, "pv_x1/F");
1474  vbtfPresele_tree->Branch("pv_y1", &pv_y1, "pv_y1/F");
1475  vbtfPresele_tree->Branch("pv_z1", &pv_z1, "pv_z1/F");
1476 
1477  vbtfPresele_tree->Branch("pv_x2", &pv_x2, "pv_x2/F");
1478  vbtfPresele_tree->Branch("pv_y2", &pv_y2, "pv_y2/F");
1479  vbtfPresele_tree->Branch("pv_z2", &pv_z2, "pv_z2/F");
1480 
1481  vbtfPresele_tree->Branch("event_caloMET", &event_caloMET, "event_caloMET/F");
1482  vbtfPresele_tree->Branch("event_pfMET", &event_pfMET, "event_pfMET/F");
1483  vbtfPresele_tree->Branch("event_tcMET", &event_tcMET, "event_tcMET/F");
1484  vbtfPresele_tree->Branch("event_caloMET_phi", &event_caloMET_phi, "event_caloMET_phi/F");
1485  vbtfPresele_tree->Branch("event_pfMET_phi", &event_pfMET_phi, "event_pfMET_phi/F");
1486  vbtfPresele_tree->Branch("event_tcMET_phi", &event_tcMET_phi, "event_tcMET_phi/F");
1487 
1488  vbtfPresele_tree->Branch("event_Mee", &event_Mee, "event_Mee/F");
1489 
1490  //
1491  // the extra jet variables:
1493  vbtfPresele_tree->Branch("calojet_et", calojet_et, "calojet_et[5]/F");
1494  vbtfPresele_tree->Branch("calojet_eta", calojet_eta, "calojet_eta[5]/F");
1495  vbtfPresele_tree->Branch("calojet_phi", calojet_phi, "calojet_phi[5]/F");
1496  vbtfPresele_tree->Branch("pfjet_et", pfjet_et, "pfjet_et[5]/F");
1497  vbtfPresele_tree->Branch("pfjet_eta", pfjet_eta, "pfjet_eta[5]/F");
1498  vbtfPresele_tree->Branch("pfjet_phi", pfjet_phi, "pfjet_phi[5]/F");
1499  }
1500 
1501  vbtfPresele_tree->Branch("event_datasetTag", &event_datasetTag, "event_dataSetTag/I");
1502 
1503  // _________________________________________________________________________
1504  //
1505 }
Double_t trackIsoUser2_EB_
Definition: ZeePlots.h:253
Float_t ele2_cr_dcot
Definition: ZeePlots.h:322
Float_t ele1_sc_energy
Definition: ZeePlots.h:304
TH1F * h_mee
Definition: ZeePlots.h:103
Bool_t trackIso2_EE_inv
Definition: ZeePlots.h:261
Double_t hcalIsoUser1_EB_
Definition: ZeePlots.h:198
Double_t sihih1_EB_
Definition: ZeePlots.h:179
Float_t ele2_sc_gsf_et
Definition: ZeePlots.h:318
Double_t tip_bspot1_EE_
Definition: ZeePlots.h:190
Float_t ele2_id_sihih
Definition: ZeePlots.h:321
Float_t ele2_iso_hcal
Definition: ZeePlots.h:320
Float_t pv_x1
Definition: ZeePlots.h:312
Float_t ele1_cand_eta
Definition: ZeePlots.h:306
Double_t cIso2_EB_
Definition: ZeePlots.h:246
Double_t deta2_EB_
Definition: ZeePlots.h:242
Bool_t dphi2_EB_inv
Definition: ZeePlots.h:269
TH1F * h_Zcand_Y
Definition: ZeePlots.h:108
Float_t pv_y2
Definition: ZeePlots.h:325
Float_t calojet_phi[5]
Definition: ZeePlots.h:337
Float_t ele2_id_hoe
Definition: ZeePlots.h:321
Double_t trackIsoUser1_EE_
Definition: ZeePlots.h:195
Bool_t ecalIso2_EE_inv
Definition: ZeePlots.h:263
Bool_t deta1_EE_inv
Definition: ZeePlots.h:213
Float_t event_pfMET_phi
Definition: ZeePlots.h:331
TH1F * h_EE_hcaliso
Definition: ZeePlots.h:124
Bool_t hcalIso2_EE_inv
Definition: ZeePlots.h:265
Float_t ele1_id_dphi
Definition: ZeePlots.h:308
Float_t ele1_vz
Definition: ZeePlots.h:310
Float_t ele2_id_dphi
Definition: ZeePlots.h:321
Bool_t ecalIsoUser2_EB_inv
Definition: ZeePlots.h:284
TH1F * h_EE_deta
Definition: ZeePlots.h:127
Bool_t trackIsoUser1_EE_inv
Definition: ZeePlots.h:224
Float_t ele2_iso_track
Definition: ZeePlots.h:320
Float_t ele2_vy
Definition: ZeePlots.h:323
TH1F * h_EB_trkiso
Definition: ZeePlots.h:114
Bool_t hoe2_EB_inv
Definition: ZeePlots.h:273
Double_t hcalIsoUser2_EE_
Definition: ZeePlots.h:258
Int_t ele2_gsfCharge
Definition: ZeePlots.h:327
Float_t ele2_cand_phi
Definition: ZeePlots.h:319
Bool_t sihih1_EB_inv
Definition: ZeePlots.h:208
Float_t event_tcMET_phi
Definition: ZeePlots.h:331
TH1F * h_EB_sIetaIeta
Definition: ZeePlots.h:117
Float_t pfjet_eta[5]
Definition: ZeePlots.h:339
Double_t tip_bspot1_EB_
Definition: ZeePlots.h:189
Float_t ele1_sc_eta
Definition: ZeePlots.h:304
Bool_t hcalIso1_EE_inv
Definition: ZeePlots.h:206
Bool_t sihih2_EB_inv
Definition: ZeePlots.h:267
Bool_t eop1_EB_inv
Definition: ZeePlots.h:220
Double_t deta1_EE_
Definition: ZeePlots.h:184
Float_t ele1_id_hoe
Definition: ZeePlots.h:308
Double_t eop2_EE_
Definition: ZeePlots.h:251
Float_t event_Mee
Definition: ZeePlots.h:333
Float_t ele1_iso_ecal
Definition: ZeePlots.h:307
Double_t tip_bspot2_EB_
Definition: ZeePlots.h:248
Bool_t eop2_EB_inv
Definition: ZeePlots.h:279
Bool_t tip_bspot2_EB_inv
Definition: ZeePlots.h:277
Int_t ele1_ctfCharge
Definition: ZeePlots.h:314
Bool_t ecalIsoUser1_EE_inv
Definition: ZeePlots.h:226
Bool_t hcalIsoUser2_EE_inv
Definition: ZeePlots.h:287
Float_t ele2_cr_dist
Definition: ZeePlots.h:322
TH1F * h_EB_HoE
Definition: ZeePlots.h:120
Bool_t deta2_EB_inv
Definition: ZeePlots.h:271
Double_t hcalIsoUser2_EB_
Definition: ZeePlots.h:257
Bool_t trackIso1_EE_inv
Definition: ZeePlots.h:202
Double_t ecalIsoUser2_EE_
Definition: ZeePlots.h:256
Float_t pv_x2
Definition: ZeePlots.h:325
Double_t ecalIsoUser1_EE_
Definition: ZeePlots.h:197
Bool_t deta1_EB_inv
Definition: ZeePlots.h:212
Float_t ele1_cand_phi
Definition: ZeePlots.h:306
Float_t pfjet_et[5]
Definition: ZeePlots.h:338
Double_t hcalIsoUser1_EE_
Definition: ZeePlots.h:199
Float_t ele1_sc_phi
Definition: ZeePlots.h:304
Float_t ele1_cr_dist
Definition: ZeePlots.h:309
Int_t ele1_gsfCharge
Definition: ZeePlots.h:314
TH1F * h_mee_EBEE
Definition: ZeePlots.h:105
Double_t cIso2_EE_
Definition: ZeePlots.h:247
Double_t sihih2_EB_
Definition: ZeePlots.h:238
Double_t dphi1_EB_
Definition: ZeePlots.h:181
Double_t ecalIsoUser1_EB_
Definition: ZeePlots.h:196
Bool_t hcalIsoUser2_EB_inv
Definition: ZeePlots.h:286
Bool_t hcalIso2_EB_inv
Definition: ZeePlots.h:264
Float_t ele2_sc_energy
Definition: ZeePlots.h:317
Double_t tip_bspot2_EE_
Definition: ZeePlots.h:249
Double_t hcalIso2_EB_
Definition: ZeePlots.h:235
TH1F * h_EE_sIetaIeta
Definition: ZeePlots.h:125
Float_t calojet_eta[5]
Definition: ZeePlots.h:336
TFile * ZEE_VBTFpreseleFile_
Definition: ZeePlots.h:344
Double_t hoe2_EB_
Definition: ZeePlots.h:244
Bool_t ecalIsoUser2_EE_inv
Definition: ZeePlots.h:285
Bool_t hcalIsoUser1_EE_inv
Definition: ZeePlots.h:228
std::string ZEE_VBTFpreseleFileName_
Definition: ZeePlots.h:351
Float_t ele1_vy
Definition: ZeePlots.h:310
Float_t pfjet_phi[5]
Definition: ZeePlots.h:340
Double_t eop2_EB_
Definition: ZeePlots.h:250
Long64_t eventNumber
Definition: ZeePlots.h:302
Bool_t tip_bspot1_EB_inv
Definition: ZeePlots.h:218
Double_t trackIso1_EB_
Definition: ZeePlots.h:172
Double_t ecalIsoUser2_EB_
Definition: ZeePlots.h:255
TH1F * h_EE_ecaliso
Definition: ZeePlots.h:123
Double_t trackIso2_EB_
Definition: ZeePlots.h:231
Bool_t cIso1_EB_inv
Definition: ZeePlots.h:216
Float_t ele1_id_deta
Definition: ZeePlots.h:308
Int_t ele1_scPixCharge
Definition: ZeePlots.h:314
Bool_t tip_bspot2_EE_inv
Definition: ZeePlots.h:278
Int_t ele2_scPixCharge
Definition: ZeePlots.h:327
TH1F * h_mee_EEEE
Definition: ZeePlots.h:106
Float_t event_caloMET_phi
Definition: ZeePlots.h:331
TH1F * h_e_PT
Definition: ZeePlots.h:110
std::vector< Double_t > CutVars1_
Definition: ZeePlots.h:291
Int_t lumiSection
Definition: ZeePlots.h:300
Bool_t hcalIso1_EB_inv
Definition: ZeePlots.h:205
Float_t ele2_vz
Definition: ZeePlots.h:323
Bool_t hoe2_EE_inv
Definition: ZeePlots.h:274
Float_t ele2_iso_ecal
Definition: ZeePlots.h:320
Float_t calojet_et[5]
Definition: ZeePlots.h:335
Float_t pv_y1
Definition: ZeePlots.h:312
TH1F * h_EE_trkiso
Definition: ZeePlots.h:122
Double_t trackIso1_EE_
Definition: ZeePlots.h:173
Bool_t trackIso1_EB_inv
Definition: ZeePlots.h:201
Double_t trackIso2_EE_
Definition: ZeePlots.h:232
Float_t ele2_sc_phi
Definition: ZeePlots.h:317
Float_t ele1_sc_gsf_et
Definition: ZeePlots.h:305
Bool_t cIso2_EE_inv
Definition: ZeePlots.h:276
Bool_t eop2_EE_inv
Definition: ZeePlots.h:280
Bool_t hoe1_EB_inv
Definition: ZeePlots.h:214
Float_t ele1_cr_mhitsinner
Definition: ZeePlots.h:309
Bool_t ecalIsoUser1_EB_inv
Definition: ZeePlots.h:225
Bool_t sihih2_EE_inv
Definition: ZeePlots.h:268
Float_t event_tcMET
Definition: ZeePlots.h:330
Bool_t trackIsoUser1_EB_inv
Definition: ZeePlots.h:223
Float_t ele2_vx
Definition: ZeePlots.h:323
Float_t ele2_sc_eta
Definition: ZeePlots.h:317
TFile * ZEE_VBTFselectionFile_
Definition: ZeePlots.h:345
Float_t ele1_iso_track
Definition: ZeePlots.h:307
Double_t hcalIso2_EE_
Definition: ZeePlots.h:236
TH1F * h_EB_deta
Definition: ZeePlots.h:119
Bool_t hcalIsoUser1_EB_inv
Definition: ZeePlots.h:227
Bool_t hoe1_EE_inv
Definition: ZeePlots.h:215
TTree * vbtfPresele_tree
Definition: ZeePlots.h:348
TH1F * h_EE_dphi
Definition: ZeePlots.h:126
Double_t deta2_EE_
Definition: ZeePlots.h:243
Double_t eop1_EE_
Definition: ZeePlots.h:192
TH1F * h_EB_ecaliso
Definition: ZeePlots.h:115
Int_t ele2_ctfCharge
Definition: ZeePlots.h:327
Double_t trackIsoUser1_EB_
Definition: ZeePlots.h:194
Bool_t dphi2_EE_inv
Definition: ZeePlots.h:270
Float_t ele2_tip_bs
Definition: ZeePlots.h:328
Double_t hoe2_EE_
Definition: ZeePlots.h:245
TH1F * h_EB_hcaliso
Definition: ZeePlots.h:116
Float_t ele2_id_deta
Definition: ZeePlots.h:321
Bool_t eop1_EE_inv
Definition: ZeePlots.h:221
std::string ZEE_VBTFselectionFileName_
Definition: ZeePlots.h:350
Bool_t ecalIso2_EB_inv
Definition: ZeePlots.h:262
Double_t hcalIso1_EB_
Definition: ZeePlots.h:176
Float_t ele2_cand_eta
Definition: ZeePlots.h:319
TH1F * h_e_ETA
Definition: ZeePlots.h:111
Bool_t tip_bspot1_EE_inv
Definition: ZeePlots.h:219
Double_t ecalIso2_EE_
Definition: ZeePlots.h:234
Float_t ele2_tip_pv
Definition: ZeePlots.h:328
Float_t event_caloMET
Definition: ZeePlots.h:330
TH1F * h_EE_HoE
Definition: ZeePlots.h:128
Bool_t cIso2_EB_inv
Definition: ZeePlots.h:275
Float_t ele1_id_sihih
Definition: ZeePlots.h:308
Float_t event_pfMET
Definition: ZeePlots.h:330
Double_t ecalIso1_EE_
Definition: ZeePlots.h:175
Double_t dphi2_EE_
Definition: ZeePlots.h:241
Bool_t trackIsoUser2_EE_inv
Definition: ZeePlots.h:283
Double_t hoe1_EB_
Definition: ZeePlots.h:185
Float_t ele2_cand_et
Definition: ZeePlots.h:319
Int_t nBarrelVars_
Definition: ZeePlots.h:289
Double_t cIso1_EE_
Definition: ZeePlots.h:188
Int_t event_datasetTag
Definition: ZeePlots.h:342
Double_t sihih1_EE_
Definition: ZeePlots.h:180
Double_t cIso1_EB_
Definition: ZeePlots.h:187
Int_t runNumber
Definition: ZeePlots.h:300
Float_t ele1_eop
Definition: ZeePlots.h:315
Bool_t includeJetInformationInNtuples_
Definition: ZeePlots.h:353
Double_t hoe1_EE_
Definition: ZeePlots.h:186
Float_t ele1_cand_et
Definition: ZeePlots.h:306
TH1F * h_e_PHI
Definition: ZeePlots.h:112
Double_t sihih2_EE_
Definition: ZeePlots.h:239
TTree * vbtfSele_tree
Definition: ZeePlots.h:347
Double_t eop1_EB_
Definition: ZeePlots.h:191
TH1F * h_EB_dphi
Definition: ZeePlots.h:118
Float_t ele1_iso_hcal
Definition: ZeePlots.h:307
Bool_t ecalIso1_EB_inv
Definition: ZeePlots.h:203
Double_t ecalIso2_EB_
Definition: ZeePlots.h:233
Float_t pv_z1
Definition: ZeePlots.h:312
Bool_t trackIso2_EB_inv
Definition: ZeePlots.h:260
Bool_t dphi1_EE_inv
Definition: ZeePlots.h:211
Double_t hcalIso1_EE_
Definition: ZeePlots.h:177
Bool_t ecalIso1_EE_inv
Definition: ZeePlots.h:204
Float_t ele1_tip_bs
Definition: ZeePlots.h:315
Bool_t sihih1_EE_inv
Definition: ZeePlots.h:209
std::vector< Bool_t > InvVars2_
Definition: ZeePlots.h:295
Float_t ele1_vx
Definition: ZeePlots.h:310
TH1F * h_Zcand_PT
Definition: ZeePlots.h:107
Double_t deta1_EB_
Definition: ZeePlots.h:183
Bool_t deta2_EE_inv
Definition: ZeePlots.h:272
std::vector< Double_t > CutVars2_
Definition: ZeePlots.h:292
Double_t trackIsoUser2_EE_
Definition: ZeePlots.h:254
TH1F * h_mee_EBEB
Definition: ZeePlots.h:104
Double_t ecalIso1_EB_
Definition: ZeePlots.h:174
Float_t ele2_eop
Definition: ZeePlots.h:328
Bool_t cIso1_EE_inv
Definition: ZeePlots.h:217
Float_t pv_z2
Definition: ZeePlots.h:325
std::vector< Bool_t > InvVars1_
Definition: ZeePlots.h:294
Float_t ele1_tip_pv
Definition: ZeePlots.h:315
Bool_t trackIsoUser2_EB_inv
Definition: ZeePlots.h:282
Float_t ele1_cr_dcot
Definition: ZeePlots.h:309
Float_t ele2_cr_mhitsinner
Definition: ZeePlots.h:322
Bool_t dphi1_EB_inv
Definition: ZeePlots.h:210
Double_t dphi2_EB_
Definition: ZeePlots.h:240
Double_t dphi1_EE_
Definition: ZeePlots.h:182
void ZeePlots::bookEleClassesPlots ( )

Definition at line 366 of file ZeePlots.cc.

References file_, h1_occupancyVsEtaCrack_, h1_occupancyVsEtaGold_, h1_occupancyVsEtaShower_, and h1_occupancyVsEtaSilver_.

366  {
367  file_->cd();
368 
369  h1_occupancyVsEtaGold_ = new TH1F("occupancyVsEtaGold", "occupancyVsEtaGold", 200, -4., 4.);
370  h1_occupancyVsEtaGold_->SetYTitle("Electron statistics");
371  h1_occupancyVsEtaGold_->SetXTitle("Eta channel");
372 
373  h1_occupancyVsEtaSilver_ = new TH1F("occupancyVsEtaSilver", "occupancyVsEtaSilver", 200, -4., 4.);
374  h1_occupancyVsEtaSilver_->SetYTitle("Electron statistics");
375  h1_occupancyVsEtaSilver_->SetXTitle("Eta channel");
376 
377  h1_occupancyVsEtaShower_ = new TH1F("occupancyVsEtaShower", "occupancyVsEtaShower", 200, -4., 4.);
378  h1_occupancyVsEtaShower_->SetYTitle("Electron statistics");
379  h1_occupancyVsEtaShower_->SetXTitle("Eta channel");
380 
381  h1_occupancyVsEtaCrack_ = new TH1F("occupancyVsEtaCrack", "occupancyVsEtaCrack", 200, -4., 4.);
382  h1_occupancyVsEtaCrack_->SetYTitle("Electron statistics");
383  h1_occupancyVsEtaCrack_->SetXTitle("Eta channel");
384 }
TH1F * h1_occupancyVsEtaShower_
Definition: ZeePlots.h:118
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_occupancyVsEtaGold_
Definition: ZeePlots.h:115
TH1F * h1_occupancyVsEtaCrack_
Definition: ZeePlots.h:117
TH1F * h1_occupancyVsEtaSilver_
Definition: ZeePlots.h:116
void ZeePlots::bookEleHistograms ( )

Definition at line 195 of file ZeePlots.cc.

References file_, h1_nEleReco_, h1_recoEleEnergy_, h1_recoEleEta_, h1_recoElePhi_, and h1_recoElePt_.

Referenced by ZeeCalibration::bookHistograms().

195  {
196  file_->cd();
197 
198  h1_nEleReco_ = new TH1F("h1_nEleReco", "h1_nEleReco", 20, 0, 20);
199  h1_nEleReco_->SetXTitle("Num. of reco electrons");
200 
201  h1_recoEleEnergy_ = new TH1F("recoEleEnergy", "EleEnergy from SC", 300, 0., 300.);
202  h1_recoEleEnergy_->SetXTitle("eleSCEnergy(GeV)");
203  h1_recoEleEnergy_->SetYTitle("events");
204 
205  h1_recoElePt_ = new TH1F("recoElePt", "p_{T} of reco electrons", 300, 0., 300.);
206  h1_recoElePt_->SetXTitle("p_{T}(GeV/c)");
207  h1_recoElePt_->SetYTitle("events");
208 
209  h1_recoEleEta_ = new TH1F("recoEleEta", "Eta of reco electrons", 100, -4., 4.);
210  h1_recoEleEta_->SetXTitle("#eta");
211  h1_recoEleEta_->SetYTitle("events");
212 
213  h1_recoElePhi_ = new TH1F("recoElePhi", "Phi of reco electrons", 100, -4., 4.);
214  h1_recoElePhi_->SetXTitle("#phi");
215  h1_recoElePhi_->SetYTitle("events");
216 }
TH1F * h1_recoEleEnergy_
Definition: ZeePlots.h:103
TH1F * h1_recoElePhi_
Definition: ZeePlots.h:106
TH1F * h1_nEleReco_
Definition: ZeePlots.h:107
TH1F * h1_recoEleEta_
Definition: ZeePlots.h:105
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_recoElePt_
Definition: ZeePlots.h:104
void ZeePlots::bookEleMCHistograms ( )

Definition at line 156 of file ZeePlots.cc.

References file_, h1_mcEle_Energy_, h1_mcEleEta_, h1_mcElePhi_, and h1_mcElePt_.

Referenced by ZeeCalibration::bookHistograms().

156  {
157  file_->cd();
158 
159  h1_mcEle_Energy_ = new TH1F("mcEleEnergy", "mc EleEnergy", 300, 0., 300.);
160  h1_mcEle_Energy_->SetXTitle("E (GeV)");
161  h1_mcEle_Energy_->SetYTitle("events");
162 
163  h1_mcElePt_ = new TH1F("mcElePt", "p_{T} of MC electrons", 300, 0., 300.);
164  h1_mcElePt_->SetXTitle("p_{T}(GeV/c)");
165  h1_mcElePt_->SetYTitle("events");
166 
167  h1_mcEleEta_ = new TH1F("mcEleEta", "Eta of MC electrons", 100, -4., 4.);
168  h1_mcEleEta_->SetXTitle("#eta");
169  h1_mcEleEta_->SetYTitle("events");
170 
171  h1_mcElePhi_ = new TH1F("mcElePhi", "Phi of MC electrons", 100, -4., 4.);
172  h1_mcElePhi_->SetXTitle("#phi");
173  h1_mcElePhi_->SetYTitle("events");
174 }
TH1F * h1_mcElePhi_
Definition: ZeePlots.h:101
TH1F * h1_mcEle_Energy_
Definition: ZeePlots.h:98
TH1F * h1_mcElePt_
Definition: ZeePlots.h:99
TH1F * h1_mcEleEta_
Definition: ZeePlots.h:100
TFile * file_
Definition: ZeePlots.h:79
void ZeePlots::bookHLTHistograms ( )

Definition at line 270 of file ZeePlots.cc.

References file_, h1_FiredTriggers_, h1_HLT1Electron_FiredEvents_, h1_HLT1Electron_HLT2Electron_FiredEvents_, h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT2Electron_FiredEvents_, h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT2ElectronRelaxed_FiredEvents_, and h1_HLTVisitedEvents_.

Referenced by ZeeCalibration::bookHistograms().

270  {
271  file_->cd();
272 
273  h1_FiredTriggers_ = new TH1F("h1_FiredTriggers", "h1_FiredTriggers", 5, 0, 5);
274 
275  h1_HLTVisitedEvents_ = new TH1F("h1_HLTVisitedEvents", "h1_HLTVisitedEvents", 5, 0, 5);
276 
277  h1_HLT1Electron_FiredEvents_ = new TH1F("h1_HLT1Electron_FiredEvents", "h1_HLT1Electron_FiredEvents", 5, 0, 5);
278  h1_HLT2Electron_FiredEvents_ = new TH1F("h1_HLT2Electron_FiredEvents", "h1_HLT2Electron_FiredEvents", 5, 0, 5);
280  new TH1F("h1_HLT2ElectronRelaxed_FiredEvents", "h1_HLT2ElectronRelaxed_FiredEvents", 5, 0, 5);
281 
283  new TH1F("h1_HLT1Electron_HLT2Electron_FiredEvents", "h1_HLT1Electron_HLT2Electron_FiredEvents", 5, 0, 5);
285  "h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents", "h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents", 5, 0, 5);
287  "h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents", "h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents", 5, 0, 5);
288 
290  new TH1F("h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents",
291  "h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents",
292  5,
293  0,
294  5);
295 }
TH1F * h1_HLTVisitedEvents_
Definition: ZeePlots.h:96
TH1F * h1_HLT1Electron_HLT2Electron_FiredEvents_
Definition: ZeePlots.h:92
TH1F * h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:93
TH1F * h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:94
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_HLT1Electron_FiredEvents_
Definition: ZeePlots.h:89
TH1F * h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:95
TH1F * h1_HLT2Electron_FiredEvents_
Definition: ZeePlots.h:90
TH1F * h1_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:91
TH1F * h1_FiredTriggers_
Definition: ZeePlots.h:88
void ZeePlots::bookZHistograms ( )

Definition at line 74 of file ZeePlots.cc.

References file_, h1_reco_ZEta_, h1_reco_ZPhi_, h1_reco_ZPt_, h1_reco_ZRapidity_, and h1_reco_ZTheta_.

Referenced by ZeeCalibration::bookHistograms().

74  {
75  file_->cd();
76 
77  h1_reco_ZEta_ = new TH1F("reco_ZEta", "Eta of reco Z", 200, -6., 6.);
78  h1_reco_ZEta_->SetXTitle("#eta");
79  h1_reco_ZEta_->SetYTitle("events");
80 
81  h1_reco_ZTheta_ = new TH1F("reco_ZTheta", "Theta of reco Z", 200, 0., 4.);
82  h1_reco_ZTheta_->SetXTitle("#theta");
83  h1_reco_ZTheta_->SetYTitle("events");
84 
85  h1_reco_ZRapidity_ = new TH1F("reco_ZRapidity", "Rapidity of reco Z", 200, -6., 6.);
86  h1_reco_ZRapidity_->SetXTitle("Y");
87  h1_reco_ZRapidity_->SetYTitle("events");
88 
89  h1_reco_ZPhi_ = new TH1F("reco_ZPhi", "Phi of reco Z", 100, -4., 4.);
90  h1_reco_ZPhi_->SetXTitle("#phi");
91  h1_reco_ZPhi_->SetYTitle("events");
92 
93  h1_reco_ZPt_ = new TH1F("reco_ZPt", "Pt of reco Z", 200, 0., 100.);
94  h1_reco_ZPt_->SetXTitle("p_{T} (GeV/c)");
95  h1_reco_ZPt_->SetYTitle("events");
96 }
TH1F * h1_reco_ZPt_
Definition: ZeePlots.h:113
TH1F * h1_reco_ZTheta_
Definition: ZeePlots.h:110
TH1F * h1_reco_ZRapidity_
Definition: ZeePlots.h:111
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_reco_ZEta_
Definition: ZeePlots.h:109
TH1F * h1_reco_ZPhi_
Definition: ZeePlots.h:112
void ZeePlots::bookZMCHistograms ( )

Definition at line 50 of file ZeePlots.cc.

References file_, h1_gen_ZEta_, h1_gen_ZMass_, h1_gen_ZPhi_, h1_gen_ZPt_, and h1_gen_ZRapidity_.

Referenced by ZeeCalibration::bookHistograms().

50  {
51  file_->cd();
52 
53  h1_gen_ZMass_ = new TH1F("gen_ZMass", "Generated Z mass", 200, 0., 150.);
54  h1_gen_ZMass_->SetXTitle("gen_ZMass (GeV)");
55  h1_gen_ZMass_->SetYTitle("events");
56 
57  h1_gen_ZEta_ = new TH1F("gen_ZEta", "Eta of gen Z", 200, -6., 6.);
58  h1_gen_ZEta_->SetXTitle("#eta");
59  h1_gen_ZEta_->SetYTitle("events");
60 
61  h1_gen_ZPhi_ = new TH1F("gen_ZPhi", "Phi of gen Z", 200, -4., 4.);
62  h1_gen_ZPhi_->SetXTitle("#phi");
63  h1_gen_ZPhi_->SetYTitle("events");
64 
65  h1_gen_ZRapidity_ = new TH1F("gen_ZRapidity", "Rapidity of gen Z", 200, -6., 6.);
66  h1_gen_ZRapidity_->SetXTitle("Y");
67  h1_gen_ZRapidity_->SetYTitle("events");
68 
69  h1_gen_ZPt_ = new TH1F("gen_ZPt", "Pt of gen Z", 200, 0., 100.);
70  h1_gen_ZPt_->SetXTitle("p_{T} (GeV/c)");
71  h1_gen_ZPt_->SetYTitle("events");
72 }
TH1F * h1_gen_ZPt_
Definition: ZeePlots.h:86
TH1F * h1_gen_ZRapidity_
Definition: ZeePlots.h:83
TH1F * h1_gen_ZMass_
Definition: ZeePlots.h:82
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_gen_ZEta_
Definition: ZeePlots.h:84
TH1F * h1_gen_ZPhi_
Definition: ZeePlots.h:85
Bool_t ZeePlots::CheckCut1 ( const pat::Electron ele,
Int_t  i 
)
private

Definition at line 945 of file ZeePlots.cc.

References Abs(), CutVars1_, mps_fire::i, nBarrelVars_, ReturnCandVar(), and pat::Electron::superCluster().

Referenced by CheckCuts1(), and CheckCuts1NminusOne().

945  {
946  Double_t fabseta = TMath::Abs(ele->superCluster()->eta());
947 
948  if (fabseta < 1.479) {
949  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars1_[i]);
950  }
951 
952  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars1_[i + nBarrelVars_]);
953 }
std::vector< Double_t > CutVars1_
Definition: ZeePlots.h:291
T Abs(T a)
Definition: MathUtil.h:49
Double_t ReturnCandVar(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:1005
Int_t nBarrelVars_
Definition: ZeePlots.h:289
reco::SuperClusterRef superCluster() const override
override the reco::GsfElectron::superCluster method, to access the internal storage of the superclust...
Bool_t ZeePlots::CheckCut1Inv ( const pat::Electron ele,
Int_t  i 
)
private

Definition at line 965 of file ZeePlots.cc.

References Abs(), CutVars1_, mps_fire::i, InvVars1_, nBarrelVars_, ReturnCandVar(), and pat::Electron::superCluster().

Referenced by CheckCuts1Inverse().

965  {
966  Double_t fabseta = TMath::Abs(ele->superCluster()->eta());
967 
968  if (fabseta < 1.479) {
969  if (InvVars1_[i]) {
970  return (TMath::Abs(ReturnCandVar(ele, i)) > CutVars1_[i]);
971  }
972 
973  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars1_[i]);
974  }
975 
976  if (InvVars1_[i + nBarrelVars_]) {
977  if (InvVars1_[i]) {
978  return (TMath::Abs(ReturnCandVar(ele, i)) > CutVars1_[i + nBarrelVars_]);
979  }
980  }
981 
982  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars1_[i + nBarrelVars_]);
983 }
std::vector< Double_t > CutVars1_
Definition: ZeePlots.h:291
T Abs(T a)
Definition: MathUtil.h:49
Double_t ReturnCandVar(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:1005
Int_t nBarrelVars_
Definition: ZeePlots.h:289
reco::SuperClusterRef superCluster() const override
override the reco::GsfElectron::superCluster method, to access the internal storage of the superclust...
std::vector< Bool_t > InvVars1_
Definition: ZeePlots.h:294
Bool_t ZeePlots::CheckCut2 ( const pat::Electron ele,
Int_t  i 
)
private

Definition at line 955 of file ZeePlots.cc.

References Abs(), CutVars2_, mps_fire::i, nBarrelVars_, ReturnCandVar(), and pat::Electron::superCluster().

Referenced by CheckCuts2(), and CheckCuts2NminusOne().

955  {
956  Double_t fabseta = TMath::Abs(ele->superCluster()->eta());
957 
958  if (fabseta < 1.479) {
959  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars2_[i]);
960  }
961 
962  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars2_[i + nBarrelVars_]);
963 }
T Abs(T a)
Definition: MathUtil.h:49
Double_t ReturnCandVar(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:1005
Int_t nBarrelVars_
Definition: ZeePlots.h:289
std::vector< Double_t > CutVars2_
Definition: ZeePlots.h:292
reco::SuperClusterRef superCluster() const override
override the reco::GsfElectron::superCluster method, to access the internal storage of the superclust...
Bool_t ZeePlots::CheckCut2Inv ( const pat::Electron ele,
Int_t  i 
)
private

Definition at line 985 of file ZeePlots.cc.

References Abs(), CutVars2_, mps_fire::i, InvVars2_, nBarrelVars_, ReturnCandVar(), and pat::Electron::superCluster().

Referenced by CheckCuts2Inverse().

985  {
986  Double_t fabseta = TMath::Abs(ele->superCluster()->eta());
987 
988  if (fabseta < 1.479) {
989  if (InvVars2_[i]) {
990  return (TMath::Abs(ReturnCandVar(ele, i)) > CutVars2_[i]);
991  }
992 
993  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars2_[i]);
994  }
995 
996  if (InvVars2_[i + nBarrelVars_]) {
997  if (InvVars2_[i]) {
998  return (TMath::Abs(ReturnCandVar(ele, i)) > CutVars2_[i + nBarrelVars_]);
999  }
1000  }
1001 
1002  return (TMath::Abs(ReturnCandVar(ele, i)) < CutVars2_[i + nBarrelVars_]);
1003 }
T Abs(T a)
Definition: MathUtil.h:49
Double_t ReturnCandVar(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:1005
Int_t nBarrelVars_
Definition: ZeePlots.h:289
std::vector< Bool_t > InvVars2_
Definition: ZeePlots.h:295
std::vector< Double_t > CutVars2_
Definition: ZeePlots.h:292
reco::SuperClusterRef superCluster() const override
override the reco::GsfElectron::superCluster method, to access the internal storage of the superclust...
Bool_t ZeePlots::CheckCuts1 ( const pat::Electron ele)
private

Definition at line 841 of file ZeePlots.cc.

References Abs(), CheckCut1(), gather_cfg::cout, pat::Electron::electronID(), mps_fire::i, pat::Electron::isElectronIDAvailable(), nBarrelVars_, usePrecalcID1_, usePrecalcIDSign1_, usePrecalcIDType1_, usePrecalcIDValue1_, and heppy_batch::val.

Referenced by analyze().

841  {
842  if (usePrecalcID1_) {
844  std::cout << "Error! not existing ID with name: " << usePrecalcIDType1_ << " function will return true!"
845  << std::endl;
846  return true;
847  }
848 
849  Double_t val = ele->electronID(usePrecalcIDType1_);
850 
851  if (usePrecalcIDSign1_ == "<") {
852  return (val < usePrecalcIDValue1_);
853  } else if (usePrecalcIDSign1_ == ">") {
854  return (val > usePrecalcIDValue1_);
855  } else { // equality: it returns 0,1,2,3 but as Float_t
856  return (TMath::Abs(val - usePrecalcIDValue1_) < 0.1);
857  }
858  } else {
859  for (Int_t i = 0; i < nBarrelVars_; ++i) {
860  if (!CheckCut1(ele, i)) {
861  return false;
862  }
863  }
864 
865  return true;
866  }
867 }
bool isElectronIDAvailable(const std::string &name) const
Returns true if a specific ID is available in this pat::Electron.
std::string usePrecalcIDSign1_
Definition: ZeePlots.h:72
Double_t usePrecalcIDValue1_
Definition: ZeePlots.h:74
Bool_t CheckCut1(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:945
T Abs(T a)
Definition: MathUtil.h:49
float electronID(const std::string &name) const
Returns a specific electron ID associated to the pat::Electron given its name.
std::string usePrecalcIDType1_
Definition: ZeePlots.h:73
Int_t nBarrelVars_
Definition: ZeePlots.h:289
Bool_t usePrecalcID1_
Definition: ZeePlots.h:71
Bool_t ZeePlots::CheckCuts1Inverse ( const pat::Electron ele)
private

Definition at line 897 of file ZeePlots.cc.

References CheckCut1Inv(), mps_fire::i, and nBarrelVars_.

897  {
898  for (Int_t i = 0; i < nBarrelVars_; ++i) {
899  if (CheckCut1Inv(ele, i) == false) {
900  return false;
901  }
902  }
903 
904  return true;
905 }
Bool_t CheckCut1Inv(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:965
Int_t nBarrelVars_
Definition: ZeePlots.h:289
Bool_t ZeePlots::CheckCuts1NminusOne ( const pat::Electron ele,
Int_t  jj 
)
private

Definition at line 917 of file ZeePlots.cc.

References CheckCut1(), mps_fire::i, and nBarrelVars_.

917  {
918  for (Int_t i = 0; i < nBarrelVars_; ++i) {
919  if (i == jj) {
920  continue;
921  }
922 
923  if (CheckCut1(ele, i) == false) {
924  return false;
925  }
926  }
927 
928  return true;
929 }
Bool_t CheckCut1(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:945
Int_t nBarrelVars_
Definition: ZeePlots.h:289
Bool_t ZeePlots::CheckCuts2 ( const pat::Electron ele)
private

Definition at line 869 of file ZeePlots.cc.

References Abs(), CheckCut2(), gather_cfg::cout, pat::Electron::electronID(), mps_fire::i, pat::Electron::isElectronIDAvailable(), nBarrelVars_, usePrecalcID2_, usePrecalcIDSign2_, usePrecalcIDType2_, usePrecalcIDValue2_, and heppy_batch::val.

Referenced by analyze().

869  {
870  if (usePrecalcID2_) {
872  std::cout << "Error! not existing ID with name: " << usePrecalcIDType2_ << " function will return true!"
873  << std::endl;
874  return true;
875  }
876 
877  Double_t val = ele->electronID(usePrecalcIDType2_);
878 
879  if (usePrecalcIDSign2_ == "<") {
880  return (val < usePrecalcIDValue2_);
881  } else if (usePrecalcIDSign2_ == ">") {
882  return (val > usePrecalcIDValue2_);
883  } else { // equality: it returns 0,1,2,3 but as Float_t
884  return (TMath::Abs(val - usePrecalcIDValue2_) < 0.1);
885  }
886  } else {
887  for (Int_t i = 0; i < nBarrelVars_; ++i) {
888  if (!CheckCut2(ele, i)) {
889  return false;
890  }
891  }
892 
893  return true;
894  }
895 }
bool isElectronIDAvailable(const std::string &name) const
Returns true if a specific ID is available in this pat::Electron.
std::string usePrecalcIDSign2_
Definition: ZeePlots.h:77
Bool_t CheckCut2(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:955
Double_t usePrecalcIDValue2_
Definition: ZeePlots.h:79
Bool_t usePrecalcID2_
Definition: ZeePlots.h:76
T Abs(T a)
Definition: MathUtil.h:49
float electronID(const std::string &name) const
Returns a specific electron ID associated to the pat::Electron given its name.
Int_t nBarrelVars_
Definition: ZeePlots.h:289
std::string usePrecalcIDType2_
Definition: ZeePlots.h:78
Bool_t ZeePlots::CheckCuts2Inverse ( const pat::Electron ele)
private

Definition at line 907 of file ZeePlots.cc.

References CheckCut2Inv(), mps_fire::i, and nBarrelVars_.

907  {
908  for (Int_t i = 0; i < nBarrelVars_; ++i) {
909  if (CheckCut2Inv(ele, i) == false) {
910  return false;
911  }
912  }
913 
914  return true;
915 }
Int_t nBarrelVars_
Definition: ZeePlots.h:289
Bool_t CheckCut2Inv(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:985
Bool_t ZeePlots::CheckCuts2NminusOne ( const pat::Electron ele,
Int_t  jj 
)
private

Definition at line 931 of file ZeePlots.cc.

References CheckCut2(), mps_fire::i, and nBarrelVars_.

931  {
932  for (Int_t i = 0; i < nBarrelVars_; ++i) {
933  if (i == jj) {
934  continue;
935  }
936 
937  if (CheckCut2(ele, i) == false) {
938  return false;
939  }
940  }
941 
942  return true;
943 }
Bool_t CheckCut2(const pat::Electron *, Int_t)
Definition: ZeePlots.cc:955
Int_t nBarrelVars_
Definition: ZeePlots.h:289
void ZeePlots::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 1508 of file ZeePlots.cc.

References DEFINE_FWK_MODULE, h_e_ETA, h_e_PHI, h_e_PT, h_EB_deta, h_EB_dphi, h_EB_ecaliso, h_EB_hcaliso, h_EB_HoE, h_EB_sIetaIeta, h_EB_trkiso, h_EE_deta, h_EE_dphi, h_EE_ecaliso, h_EE_hcaliso, h_EE_HoE, h_EE_sIetaIeta, h_EE_trkiso, h_mee, h_mee_EBEB, h_mee_EBEE, h_mee_EEEE, h_Zcand_PT, h_Zcand_Y, runonSM::newfile, outputFile_, ZEE_VBTFpreseleFile_, and ZEE_VBTFselectionFile_.

1508  {
1509  TFile *newfile = new TFile(TString(outputFile_), "RECREATE");
1510  //
1511  // for consistency all the plots are in the root file
1512  // even though they may be empty (in the case when
1513  // usePrecalcID_ == true inverted and N-1 are empty)
1514 
1515  h_mee->Write();
1516  h_mee_EBEB->Write();
1517  h_mee_EBEE->Write();
1518  h_mee_EEEE->Write();
1519  h_Zcand_PT->Write();
1520  h_Zcand_Y->Write();
1521 
1522  h_e_PT->Write();
1523  h_e_ETA->Write();
1524  h_e_PHI->Write();
1525 
1526  h_EB_trkiso->Write();
1527  h_EB_ecaliso->Write();
1528  h_EB_hcaliso->Write();
1529  h_EB_sIetaIeta->Write();
1530  h_EB_dphi->Write();
1531  h_EB_deta->Write();
1532  h_EB_HoE->Write();
1533 
1534  h_EE_trkiso->Write();
1535  h_EE_ecaliso->Write();
1536  h_EE_hcaliso->Write();
1537  h_EE_sIetaIeta->Write();
1538  h_EE_dphi->Write();
1539  h_EE_deta->Write();
1540  h_EE_HoE->Write();
1541 
1542  //
1543  newfile->Close();
1544 
1545  // write the VBTF trees
1546  //
1547  ZEE_VBTFpreseleFile_->Write();
1548  ZEE_VBTFpreseleFile_->Close();
1549 
1550  ZEE_VBTFselectionFile_->Write();
1551  ZEE_VBTFselectionFile_->Close();
1552 }
TH1F * h_mee
Definition: ZeePlots.h:103
newfile
Definition: runonSM.py:49
TH1F * h_Zcand_Y
Definition: ZeePlots.h:108
TH1F * h_EE_hcaliso
Definition: ZeePlots.h:124
TH1F * h_EE_deta
Definition: ZeePlots.h:127
TH1F * h_EB_trkiso
Definition: ZeePlots.h:114
TH1F * h_EB_sIetaIeta
Definition: ZeePlots.h:117
TH1F * h_EB_HoE
Definition: ZeePlots.h:120
TH1F * h_mee_EBEE
Definition: ZeePlots.h:105
std::string outputFile_
Definition: ZeePlots.h:95
TH1F * h_EE_sIetaIeta
Definition: ZeePlots.h:125
TFile * ZEE_VBTFpreseleFile_
Definition: ZeePlots.h:344
TH1F * h_EE_ecaliso
Definition: ZeePlots.h:123
TH1F * h_mee_EEEE
Definition: ZeePlots.h:106
TH1F * h_e_PT
Definition: ZeePlots.h:110
TH1F * h_EE_trkiso
Definition: ZeePlots.h:122
TFile * ZEE_VBTFselectionFile_
Definition: ZeePlots.h:345
TH1F * h_EB_deta
Definition: ZeePlots.h:119
TH1F * h_EE_dphi
Definition: ZeePlots.h:126
TH1F * h_EB_ecaliso
Definition: ZeePlots.h:115
TH1F * h_EB_hcaliso
Definition: ZeePlots.h:116
TH1F * h_e_ETA
Definition: ZeePlots.h:111
TH1F * h_EE_HoE
Definition: ZeePlots.h:128
TH1F * h_e_PHI
Definition: ZeePlots.h:112
TH1F * h_EB_dphi
Definition: ZeePlots.h:118
TH1F * h_Zcand_PT
Definition: ZeePlots.h:107
TH1F * h_mee_EBEB
Definition: ZeePlots.h:104
void ZeePlots::fillEleClassesPlots ( calib::CalibElectron myEle)

Definition at line 340 of file ZeePlots.cc.

References reco::GsfElectron::classification(), gather_cfg::cout, reco::LeafCandidate::eta(), calib::CalibElectron::getRecoElectron(), h1_occupancyVsEtaCrack_, h1_occupancyVsEtaGold_, h1_occupancyVsEtaShower_, and h1_occupancyVsEtaSilver_.

340  {
341  int myClass = myEle->getRecoElectron()->classification();
342 
343  float myEta = myEle->getRecoElectron()->eta();
344 
345  if (myClass == 0 || myClass == 100)
346  h1_occupancyVsEtaGold_->Fill(myEta);
347 
348  std::cout << "[ZeePlots::fillEleClassesPlots]Done gold" << std::endl;
349 
350  if (myClass == 40 || myClass == 140)
351  h1_occupancyVsEtaCrack_->Fill(myEta);
352 
353  std::cout << "[ZeePlots::fillEleClassesPlots]Done crack" << std::endl;
354 
355  if ((myClass >= 30 && myClass <= 34) || (myClass >= 130 && myClass <= 134))
356  h1_occupancyVsEtaShower_->Fill(myEta);
357 
358  std::cout << "[ZeePlots::fillEleClassesPlots]Done shower" << std::endl;
359 
360  if (myClass == 10 || myClass == 20 || myClass == 110 || myClass == 120)
361  h1_occupancyVsEtaSilver_->Fill(myEta);
362 
363  std::cout << "[ZeePlots::fillEleClassesPlots]Done" << std::endl;
364 }
double eta() const final
momentum pseudorapidity
TH1F * h1_occupancyVsEtaShower_
Definition: ZeePlots.h:118
Classification classification() const
Definition: GsfElectron.h:722
TH1F * h1_occupancyVsEtaGold_
Definition: ZeePlots.h:115
TH1F * h1_occupancyVsEtaCrack_
Definition: ZeePlots.h:117
const reco::GsfElectron * getRecoElectron()
Definition: CalibElectron.h:24
TH1F * h1_occupancyVsEtaSilver_
Definition: ZeePlots.h:116
void ZeePlots::fillEleInfo ( const reco::GsfElectronCollection electronCollection)

Definition at line 220 of file ZeePlots.cc.

References file_, h1_nEleReco_, h1_recoEleEnergy_, h1_recoEleEta_, h1_recoElePhi_, and h1_recoElePt_.

Referenced by ZeeCalibration::duringLoop().

220  {
221  file_->cd();
222 
223  h1_nEleReco_->Fill(electronCollection->size());
224 
225  for (reco::GsfElectronCollection::const_iterator eleIt = electronCollection->begin();
226  eleIt != electronCollection->end();
227  eleIt++) {
228  file_->cd();
229 
230  h1_recoEleEnergy_->Fill(eleIt->superCluster()->energy());
231  h1_recoElePt_->Fill(eleIt->pt());
232  h1_recoEleEta_->Fill(eleIt->eta());
233  h1_recoElePhi_->Fill(eleIt->phi());
234 
235  } //end loop on electrons
236 }
TH1F * h1_recoEleEnergy_
Definition: ZeePlots.h:103
TH1F * h1_recoElePhi_
Definition: ZeePlots.h:106
TH1F * h1_nEleReco_
Definition: ZeePlots.h:107
TH1F * h1_recoEleEta_
Definition: ZeePlots.h:105
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_recoElePt_
Definition: ZeePlots.h:104
void ZeePlots::fillEleMCInfo ( const HepMC::GenEvent myGenEvent)

Definition at line 178 of file ZeePlots.cc.

References funct::abs(), file_, h1_mcEle_Energy_, h1_mcEleEta_, h1_mcElePhi_, h1_mcElePt_, and AlCaHLTBitMon_ParallelJobs::p.

Referenced by ZeeCalibration::duringLoop().

178  {
179  file_->cd();
180 
181  for (HepMC::GenEvent::particle_const_iterator p = myGenEvent->particles_begin(); p != myGenEvent->particles_end();
182  ++p) {
183  if (abs((*p)->pdg_id()) == 11) {
184  h1_mcEle_Energy_->Fill((*p)->momentum().e());
185  h1_mcElePt_->Fill((*p)->momentum().perp());
186  h1_mcEleEta_->Fill((*p)->momentum().eta());
187  h1_mcElePhi_->Fill((*p)->momentum().phi());
188 
189  } //matches if ( abs( (*p)->pdg_id() ) == 11 )
190 
191  } //end loop over MC particles
192 }
TH1F * h1_mcElePhi_
Definition: ZeePlots.h:101
TH1F * h1_mcEle_Energy_
Definition: ZeePlots.h:98
TH1F * h1_mcElePt_
Definition: ZeePlots.h:99
TH1F * h1_mcEleEta_
Definition: ZeePlots.h:100
TFile * file_
Definition: ZeePlots.h:79
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
void ZeePlots::fillHLTInfo ( edm::Handle< edm::TriggerResults hltTriggerResultHandle)

Definition at line 299 of file ZeePlots.cc.

References edm::HLTGlobalStatus::accept(), file_, h1_FiredTriggers_, h1_HLT1Electron_FiredEvents_, h1_HLT1Electron_HLT2Electron_FiredEvents_, h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT2Electron_FiredEvents_, h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_, h1_HLT2ElectronRelaxed_FiredEvents_, h1_HLTVisitedEvents_, mps_fire::i, and edm::HLTGlobalStatus::size().

Referenced by ZeeCalibration::duringLoop().

299  {
300  file_->cd();
301 
302  int hltCount = hltTriggerResultHandle->size();
303 
304  bool aHLTResults[200] = {false};
305 
306  for (int i = 0; i < hltCount; i++) {
307  aHLTResults[i] = hltTriggerResultHandle->accept(i);
308  if (aHLTResults[i])
309  h1_FiredTriggers_->Fill(i);
310 
311  //HLT bit 32 = HLT1Electron
312  //HLT bit 34 = HLT2Electron
313  //HLT bit 35 = HLT2ElectronRelaxed
314  }
315 
316  h1_HLTVisitedEvents_->Fill(1);
317 
318  if (aHLTResults[32] && !aHLTResults[34] && !aHLTResults[35])
320 
321  if (aHLTResults[34] && !aHLTResults[32] && !aHLTResults[35])
323 
324  if (aHLTResults[35] && !aHLTResults[32] && !aHLTResults[34])
326 
327  if (aHLTResults[32] && aHLTResults[34] && !aHLTResults[35])
329 
330  if (aHLTResults[32] && aHLTResults[35] && !aHLTResults[34])
332 
333  if (aHLTResults[34] && aHLTResults[35] && !aHLTResults[32])
335 
336  if (aHLTResults[32] && aHLTResults[34] && aHLTResults[35])
338 }
TH1F * h1_HLTVisitedEvents_
Definition: ZeePlots.h:96
bool accept() const
Has at least one path accepted the event?
TH1F * h1_HLT1Electron_HLT2Electron_FiredEvents_
Definition: ZeePlots.h:92
TH1F * h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:93
TH1F * h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:94
TFile * file_
Definition: ZeePlots.h:79
unsigned int size() const
Get number of paths stored.
TH1F * h1_HLT1Electron_FiredEvents_
Definition: ZeePlots.h:89
TH1F * h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:95
TH1F * h1_HLT2Electron_FiredEvents_
Definition: ZeePlots.h:90
TH1F * h1_HLT2ElectronRelaxed_FiredEvents_
Definition: ZeePlots.h:91
TH1F * h1_FiredTriggers_
Definition: ZeePlots.h:88
void ZeePlots::fillZInfo ( std::pair< calib::CalibElectron *, calib::CalibElectron * >  myZeeCandidate)

Definition at line 100 of file ZeePlots.cc.

References ZeeKinematicTools::calculateZEta(), ZeeKinematicTools::calculateZPhi(), ZeeKinematicTools::calculateZPt(), ZeeKinematicTools::calculateZRapidity(), ZeeKinematicTools::calculateZTheta(), h1_reco_ZEta_, h1_reco_ZPhi_, h1_reco_ZPt_, h1_reco_ZRapidity_, and h1_reco_ZTheta_.

Referenced by ZeeCalibration::duringLoop().

100  {
101  h1_reco_ZEta_->Fill(ZeeKinematicTools::calculateZEta(myZeeCandidate));
104  h1_reco_ZPhi_->Fill(ZeeKinematicTools::calculateZPhi(myZeeCandidate));
105  h1_reco_ZPt_->Fill(ZeeKinematicTools::calculateZPt(myZeeCandidate));
106 }
TH1F * h1_reco_ZPt_
Definition: ZeePlots.h:113
TH1F * h1_reco_ZTheta_
Definition: ZeePlots.h:110
static float calculateZEta(const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate)
static float calculateZPt(const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate)
TH1F * h1_reco_ZRapidity_
Definition: ZeePlots.h:111
static float calculateZRapidity(const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate)
TH1F * h1_reco_ZEta_
Definition: ZeePlots.h:109
TH1F * h1_reco_ZPhi_
Definition: ZeePlots.h:112
static float calculateZTheta(const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate)
static float calculateZPhi(const std::pair< calib::CalibElectron *, calib::CalibElectron * > &aZCandidate)
void ZeePlots::fillZMCInfo ( const HepMC::GenEvent myGenEvent)

Definition at line 132 of file ZeePlots.cc.

References file_, h1_gen_ZEta_, h1_gen_ZMass_, h1_gen_ZPhi_, h1_gen_ZPt_, h1_gen_ZRapidity_, dqm-mbProfile::log, and AlCaHLTBitMon_ParallelJobs::p.

Referenced by ZeeCalibration::duringLoop().

132  {
133  file_->cd();
134 
135  for (HepMC::GenEvent::particle_const_iterator p = myGenEvent->particles_begin(); p != myGenEvent->particles_end();
136  ++p) { //loop over MC particles
137 
138  if ((*p)->pdg_id() == 23 && (*p)->status() == 2) {
139  h1_gen_ZMass_->Fill((*p)->momentum().m());
140  h1_gen_ZEta_->Fill((*p)->momentum().eta());
141 
142  float genZ_Y =
143  0.5 * log(((*p)->momentum().e() + (*p)->momentum().pz()) / ((*p)->momentum().e() - (*p)->momentum().pz()));
144 
145  h1_gen_ZRapidity_->Fill(genZ_Y);
146  h1_gen_ZPt_->Fill((*p)->momentum().perp());
147  h1_gen_ZPhi_->Fill((*p)->momentum().phi());
148  }
149  } //end loop over MC particles
150 
151  return;
152 }
TH1F * h1_gen_ZPt_
Definition: ZeePlots.h:86
TH1F * h1_gen_ZRapidity_
Definition: ZeePlots.h:83
TH1F * h1_gen_ZMass_
Definition: ZeePlots.h:82
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_gen_ZEta_
Definition: ZeePlots.h:84
TH1F * h1_gen_ZPhi_
Definition: ZeePlots.h:85
void ZeePlots::openFile ( )
Bool_t ZeePlots::PassPreselectionCriteria1 ( const pat::Electron ele)
private

Definition at line 1057 of file ZeePlots.cc.

References gather_cfg::cout, pat::PATObject< ObjectType >::hasUserInt(), maxNumberOfExpectedMissingHits1_, useConversionRejection1_, useExpectedMissingHits1_, pat::PATObject< ObjectType >::userInt(), and useValidFirstPXBHit1_.

Referenced by analyze().

1057  {
1058  Bool_t passConvRej = true;
1059  Bool_t passPXB = true;
1060  Bool_t passEMH = true;
1061 
1063  if (ele->hasUserInt(
1064  "PassConversionRejection")) { //std::cout << "con rej: " << ele->userInt("PassConversionRejection") << std::endl;
1065 
1066  if (!(ele->userInt("PassConversionRejection") == 1)) {
1067  passConvRej = false;
1068  }
1069  } else {
1070  std::cout << "ZeePlots: WARNING: Conversion Rejection Request for electron #1 Disregarded: "
1071  << "you must calculate it before " << std::endl;
1072  }
1073  }
1074 
1075  if (useValidFirstPXBHit1_) {
1076  if (ele->hasUserInt(
1077  "PassValidFirstPXBHit")) { //std::cout << "valid1stPXB: " << ele->userInt("PassValidFirstPXBHit") << std::endl;
1078 
1079  if (!(ele->userInt("PassValidFirstPXBHit") == 1)) {
1080  passPXB = false;
1081  }
1082  } else {
1083  std::cout << "ZeePlots: WARNING: Valid First PXB Hit Request for electron #1 Disregarded: "
1084  << "you must calculate it before " << std::endl;
1085  }
1086  }
1087 
1089  if (ele->hasUserInt(
1090  "NumberOfExpectedMissingHits")) { //std::cout << "missing hits: " << ele->userInt("NumberOfExpectedMissingHits") << std::endl;
1091 
1092  if (!(ele->userInt("NumberOfExpectedMissingHits") <= maxNumberOfExpectedMissingHits1_)) {
1093  passEMH = false;
1094  }
1095  } else {
1096  std::cout << "ZeePlots: WARNING: Number of Expected Missing Hits Request for electron #1 Disregarded: "
1097  << "you must calculate it before " << std::endl;
1098  }
1099  }
1100 
1101  return (passConvRej && passPXB && passEMH);
1102 }
Bool_t maxNumberOfExpectedMissingHits1_
Definition: ZeePlots.h:86
bool hasUserInt(const std::string &key) const
Return true if there is a user-defined int with a given name.
Definition: PATObject.h:395
Bool_t useConversionRejection1_
Definition: ZeePlots.h:84
Bool_t useValidFirstPXBHit1_
Definition: ZeePlots.h:83
int32_t userInt(const std::string &key) const
Definition: PATObject.h:913
Bool_t useExpectedMissingHits1_
Definition: ZeePlots.h:85
Bool_t ZeePlots::PassPreselectionCriteria2 ( const pat::Electron ele)
private

Definition at line 1104 of file ZeePlots.cc.

References gather_cfg::cout, pat::PATObject< ObjectType >::hasUserInt(), maxNumberOfExpectedMissingHits2_, useConversionRejection2_, useExpectedMissingHits2_, pat::PATObject< ObjectType >::userInt(), and useValidFirstPXBHit2_.

Referenced by analyze().

1104  {
1105  Bool_t passConvRej = true;
1106  Bool_t passPXB = true;
1107  Bool_t passEMH = true;
1108 
1110  if (ele->hasUserInt(
1111  "PassConversionRejection")) { //std::cout << "con rej: " << ele->userInt("PassConversionRejection") << std::endl;
1112 
1113  if (!(ele->userInt("PassConversionRejection") == 1)) {
1114  passConvRej = false;
1115  }
1116  } else {
1117  std::cout << "ZeePlots: WARNING: Conversion Rejection Request for electron #2 Disregarded: "
1118  << "you must calculate it before " << std::endl;
1119  }
1120  }
1121 
1122  if (useValidFirstPXBHit2_) {
1123  if (ele->hasUserInt(
1124  "PassValidFirstPXBHit")) { //std::cout << "valid1stPXB: " << ele->userInt("PassValidFirstPXBHit") << std::endl;
1125 
1126  if (!(ele->userInt("PassValidFirstPXBHit") == 1)) {
1127  passPXB = false;
1128  }
1129  } else {
1130  std::cout << "ZeePlots: WARNING: Valid First PXB Hit Request for electron #2 Disregarded: "
1131  << "you must calculate it before " << std::endl;
1132  }
1133  }
1134 
1136  if (ele->hasUserInt(
1137  "NumberOfExpectedMissingHits")) { //std::cout << "missing hits: " << ele->userInt("NumberOfExpectedMissingHits") << std::endl;
1138 
1139  if (!(ele->userInt("NumberOfExpectedMissingHits") <= maxNumberOfExpectedMissingHits2_)) {
1140  passEMH = false;
1141  }
1142  } else {
1143  std::cout << "ZeePlots: WARNING: Number of Expected Missing Hits Request for electron #2 Disregarded: "
1144  << "you must calculate it before " << std::endl;
1145  }
1146  }
1147 
1148  return (passConvRej && passPXB && passEMH);
1149 }
Bool_t useValidFirstPXBHit2_
Definition: ZeePlots.h:89
Bool_t useExpectedMissingHits2_
Definition: ZeePlots.h:91
bool hasUserInt(const std::string &key) const
Return true if there is a user-defined int with a given name.
Definition: PATObject.h:395
Bool_t maxNumberOfExpectedMissingHits2_
Definition: ZeePlots.h:92
int32_t userInt(const std::string &key) const
Definition: PATObject.h:913
Bool_t useConversionRejection2_
Definition: ZeePlots.h:90
Double_t ZeePlots::ReturnCandVar ( const pat::Electron ele,
Int_t  i 
)
private

Definition at line 1005 of file ZeePlots.cc.

References gather_cfg::cout, pat::Electron::dB(), reco::GsfElectron::deltaEtaSuperClusterTrackAtVtx(), reco::GsfElectron::deltaPhiSuperClusterTrackAtVtx(), reco::GsfElectron::dr03EcalRecHitSumEt(), reco::GsfElectron::dr03HcalTowerSumEt(), reco::GsfElectron::dr03TkSumPt(), pat::EcalIso, reco::GsfElectron::eSuperClusterOverP(), reco::GsfElectron::hadronicOverEm(), pat::HcalIso, reco::GsfElectron::isEB(), Max(), reco::GsfElectron::p4(), reco::GsfElectron::scSigmaIEtaIEta(), pat::TrackIso, and pat::Lepton< LeptonType >::userIsolation().

Referenced by analyze(), CheckCut1(), CheckCut1Inv(), CheckCut2(), and CheckCut2Inv().

1005  {
1006  if (i == 0) {
1007  return (ele->dr03TkSumPt() / ele->p4().Pt());
1008  } else if (i == 1) {
1009  return (ele->dr03EcalRecHitSumEt() / ele->p4().Pt());
1010  } else if (i == 2) {
1011  return (ele->dr03HcalTowerSumEt() / ele->p4().Pt());
1012  } else if (i == 3) {
1013  return (ele->scSigmaIEtaIEta());
1014  } else if (i == 4) {
1015  return (ele->deltaPhiSuperClusterTrackAtVtx());
1016  } else if (i == 5) {
1017  return (ele->deltaEtaSuperClusterTrackAtVtx());
1018  } else if (i == 6) {
1019  return (ele->hadronicOverEm());
1020  } else if (i == 7) {
1021  // pedestal subtraction is only in barrel
1022  if (ele->isEB()) {
1023  return ((ele->dr03TkSumPt() + TMath::Max(0.0, ele->dr03EcalRecHitSumEt() - 1.0) + ele->dr03HcalTowerSumEt()) /
1024  ele->p4().Pt());
1025  } else {
1026  return ((ele->dr03TkSumPt() + ele->dr03EcalRecHitSumEt() + ele->dr03HcalTowerSumEt()) / ele->p4().Pt());
1027  }
1028  }
1029  // else if ( i == 8 ) { return ele->gsfTrack()->dxy(bspotPosition_); }
1030  else if (i == 8) {
1031  return (ele->dB());
1032  } else if (i == 9) {
1033  return (ele->eSuperClusterOverP());
1034  } else if (i == 10) {
1035  return (ele->userIsolation(pat::TrackIso));
1036  } else if (i == 11) {
1037  return (ele->userIsolation(pat::EcalIso));
1038  } else if (i == 12) {
1039  return (ele->userIsolation(pat::HcalIso));
1040  }
1041 
1042  std::cout << "Error in ZeePlots::ReturnCandVar" << std::endl;
1043 
1044  return (-1.0);
1045 }
const LorentzVector & p4(P4Kind kind) const
Definition: GsfElectron.cc:211
float eSuperClusterOverP() const
Definition: GsfElectron.h:221
bool isEB() const
Definition: GsfElectron.h:328
float deltaEtaSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:225
float hadronicOverEm() const
Definition: GsfElectron.h:468
float deltaPhiSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:228
float dr03TkSumPt() const
Definition: GsfElectron.h:521
float scSigmaIEtaIEta() const
Definition: GsfElectron.h:464
T Max(T a, T b)
Definition: MathUtil.h:44
float userIsolation(IsolationKeys key) const
Definition: Lepton.h:48
float dr03EcalRecHitSumEt() const
Definition: GsfElectron.h:523
double dB(IPTYPE type) const
Impact parameter wrt primary vertex or beamspot.
float dr03HcalTowerSumEt() const
Definition: GsfElectron.h:526
void ZeePlots::writeEleClassesPlots ( )

Definition at line 386 of file ZeePlots.cc.

References file_, h1_occupancyVsEtaCrack_, h1_occupancyVsEtaGold_, h1_occupancyVsEtaShower_, and h1_occupancyVsEtaSilver_.

386  {
387  file_->cd();
388 
389  h1_occupancyVsEtaGold_->Write();
390  h1_occupancyVsEtaSilver_->Write();
391  h1_occupancyVsEtaShower_->Write();
392  h1_occupancyVsEtaCrack_->Write();
393 }
TH1F * h1_occupancyVsEtaShower_
Definition: ZeePlots.h:118
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_occupancyVsEtaGold_
Definition: ZeePlots.h:115
TH1F * h1_occupancyVsEtaCrack_
Definition: ZeePlots.h:117
TH1F * h1_occupancyVsEtaSilver_
Definition: ZeePlots.h:116
void ZeePlots::writeEleHistograms ( )

Definition at line 240 of file ZeePlots.cc.

References gather_cfg::cout, file_, h1_recoEleEnergy_, h1_recoEleEta_, h1_recoElePhi_, and h1_recoElePt_.

Referenced by ZeeCalibration::endOfJob().

240  {
241  file_->cd();
242 
243  std::cout << "Start with ZeePlots::writeEleHistograms(), done file_->cd(); " << std::endl;
244 
245  h1_recoEleEnergy_->Write();
246  h1_recoElePt_->Write();
247  h1_recoEleEta_->Write();
248  h1_recoElePhi_->Write();
249 
250  std::cout << "Done with ZeePlots::writeEleHistograms() " << std::endl;
251 }
TH1F * h1_recoEleEnergy_
Definition: ZeePlots.h:103
TH1F * h1_recoElePhi_
Definition: ZeePlots.h:106
TH1F * h1_recoEleEta_
Definition: ZeePlots.h:105
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_recoElePt_
Definition: ZeePlots.h:104
void ZeePlots::writeHLTHistograms ( )
void ZeePlots::writeMCEleHistograms ( )

Definition at line 255 of file ZeePlots.cc.

References gather_cfg::cout, file_, h1_mcEle_Energy_, h1_mcEleEta_, h1_mcElePhi_, and h1_mcElePt_.

Referenced by ZeeCalibration::endOfJob().

255  {
256  file_->cd();
257 
258  std::cout << "Start with ZeePlots::writeMCEleHistograms(), done file_->cd(); " << std::endl;
259 
260  h1_mcEle_Energy_->Write();
261  h1_mcElePt_->Write();
262  h1_mcEleEta_->Write();
263  h1_mcElePhi_->Write();
264 
265  std::cout << "Done with ZeePlots::writeMCEleHistograms() " << std::endl;
266 }
TH1F * h1_mcElePhi_
Definition: ZeePlots.h:101
TH1F * h1_mcEle_Energy_
Definition: ZeePlots.h:98
TH1F * h1_mcElePt_
Definition: ZeePlots.h:99
TH1F * h1_mcEleEta_
Definition: ZeePlots.h:100
TFile * file_
Definition: ZeePlots.h:79
void ZeePlots::writeMCZHistograms ( )

Definition at line 122 of file ZeePlots.cc.

References file_, h1_gen_ZPhi_, h1_gen_ZPt_, and h1_gen_ZRapidity_.

Referenced by ZeeCalibration::endOfJob().

122  {
123  file_->cd();
124 
125  h1_gen_ZRapidity_->Write();
126  h1_gen_ZPt_->Write();
127  h1_gen_ZPhi_->Write();
128 }
TH1F * h1_gen_ZPt_
Definition: ZeePlots.h:86
TH1F * h1_gen_ZRapidity_
Definition: ZeePlots.h:83
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_gen_ZPhi_
Definition: ZeePlots.h:85
void ZeePlots::writeZHistograms ( )

Definition at line 110 of file ZeePlots.cc.

References file_, h1_reco_ZEta_, h1_reco_ZPhi_, h1_reco_ZPt_, h1_reco_ZRapidity_, and h1_reco_ZTheta_.

Referenced by ZeeCalibration::endOfJob().

110  {
111  file_->cd();
112 
113  h1_reco_ZEta_->Write();
114  h1_reco_ZTheta_->Write();
115  h1_reco_ZRapidity_->Write();
116  h1_reco_ZPhi_->Write();
117  h1_reco_ZPt_->Write();
118 }
TH1F * h1_reco_ZPt_
Definition: ZeePlots.h:113
TH1F * h1_reco_ZTheta_
Definition: ZeePlots.h:110
TH1F * h1_reco_ZRapidity_
Definition: ZeePlots.h:111
TFile * file_
Definition: ZeePlots.h:79
TH1F * h1_reco_ZEta_
Definition: ZeePlots.h:109
TH1F * h1_reco_ZPhi_
Definition: ZeePlots.h:112

Member Data Documentation

Float_t ZeePlots::calojet_et[5]
private

Definition at line 335 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::calojet_eta[5]
private

Definition at line 336 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::calojet_phi[5]
private

Definition at line 337 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

edm::EDGetTokenT<reco::CaloJetCollection> ZeePlots::caloJetCollectionToken_
private

Definition at line 97 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Double_t ZeePlots::cIso1_EB_
private

Definition at line 187 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::cIso1_EB_inv
private

Definition at line 216 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::cIso1_EE_
private

Definition at line 188 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::cIso1_EE_inv
private

Definition at line 217 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::cIso2_EB_
private

Definition at line 246 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::cIso2_EB_inv
private

Definition at line 275 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::cIso2_EE_
private

Definition at line 247 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::cIso2_EE_inv
private

Definition at line 276 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

std::vector<Double_t> ZeePlots::CutVars1_
private

Definition at line 291 of file ZeePlots.h.

Referenced by beginJob(), CheckCut1(), and CheckCut1Inv().

std::vector<Double_t> ZeePlots::CutVars2_
private

Definition at line 292 of file ZeePlots.h.

Referenced by beginJob(), CheckCut2(), and CheckCut2Inv().

Int_t ZeePlots::DatasetTag_
private

Definition at line 355 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Double_t ZeePlots::deta1_EB_
private

Definition at line 183 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::deta1_EB_inv
private

Definition at line 212 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::deta1_EE_
private

Definition at line 184 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::deta1_EE_inv
private

Definition at line 213 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::deta2_EB_
private

Definition at line 242 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::deta2_EB_inv
private

Definition at line 271 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::deta2_EE_
private

Definition at line 243 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::deta2_EE_inv
private

Definition at line 272 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::dphi1_EB_
private

Definition at line 181 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::dphi1_EB_inv
private

Definition at line 210 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::dphi1_EE_
private

Definition at line 182 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::dphi1_EE_inv
private

Definition at line 211 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::dphi2_EB_
private

Definition at line 240 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::dphi2_EB_inv
private

Definition at line 269 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::dphi2_EE_
private

Definition at line 241 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::dphi2_EE_inv
private

Definition at line 270 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::DRJetFromElectron_
private

Definition at line 354 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Double_t ZeePlots::ecalIso1_EB_
private

Definition at line 174 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIso1_EB_inv
private

Definition at line 203 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIso1_EE_
private

Definition at line 175 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIso1_EE_inv
private

Definition at line 204 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIso2_EB_
private

Definition at line 233 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIso2_EB_inv
private

Definition at line 262 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIso2_EE_
private

Definition at line 234 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIso2_EE_inv
private

Definition at line 263 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIsoUser1_EB_
private

Definition at line 196 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIsoUser1_EB_inv
private

Definition at line 225 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIsoUser1_EE_
private

Definition at line 197 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIsoUser1_EE_inv
private

Definition at line 226 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIsoUser2_EB_
private

Definition at line 255 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIsoUser2_EB_inv
private

Definition at line 284 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::ecalIsoUser2_EE_
private

Definition at line 256 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::ecalIsoUser2_EE_inv
private

Definition at line 285 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Float_t ZeePlots::ele1_cand_et
private

Definition at line 306 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_cand_eta
private

Definition at line 306 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_cand_phi
private

Definition at line 306 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_cr_dcot
private

Definition at line 309 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_cr_dist
private

Definition at line 309 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_cr_mhitsinner
private

Definition at line 309 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele1_ctfCharge
private

Definition at line 314 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_eop
private

Definition at line 315 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele1_gsfCharge
private

Definition at line 314 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_id_deta
private

Definition at line 308 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_id_dphi
private

Definition at line 308 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_id_hoe
private

Definition at line 308 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_id_sihih
private

Definition at line 308 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_iso_ecal
private

Definition at line 307 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_iso_hcal
private

Definition at line 307 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_iso_track
private

Definition at line 307 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_sc_energy
private

Definition at line 304 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_sc_eta
private

Definition at line 304 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_sc_gsf_et
private

Definition at line 305 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_sc_phi
private

Definition at line 304 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele1_scPixCharge
private

Definition at line 314 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_tip_bs
private

Definition at line 315 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_tip_pv
private

Definition at line 315 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_vx
private

Definition at line 310 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_vy
private

Definition at line 310 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele1_vz
private

Definition at line 310 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cand_et
private

Definition at line 319 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cand_eta
private

Definition at line 319 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cand_phi
private

Definition at line 319 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cr_dcot
private

Definition at line 322 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cr_dist
private

Definition at line 322 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_cr_mhitsinner
private

Definition at line 322 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele2_ctfCharge
private

Definition at line 327 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_eop
private

Definition at line 328 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele2_gsfCharge
private

Definition at line 327 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_id_deta
private

Definition at line 321 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_id_dphi
private

Definition at line 321 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_id_hoe
private

Definition at line 321 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_id_sihih
private

Definition at line 321 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_iso_ecal
private

Definition at line 320 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_iso_hcal
private

Definition at line 320 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_iso_track
private

Definition at line 320 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_sc_energy
private

Definition at line 317 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_sc_eta
private

Definition at line 317 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_sc_gsf_et
private

Definition at line 318 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_sc_phi
private

Definition at line 317 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::ele2_scPixCharge
private

Definition at line 327 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_tip_bs
private

Definition at line 328 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_tip_pv
private

Definition at line 328 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_vx
private

Definition at line 323 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_vy
private

Definition at line 323 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::ele2_vz
private

Definition at line 323 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Double_t ZeePlots::eop1_EB_
private

Definition at line 191 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::eop1_EB_inv
private

Definition at line 220 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::eop1_EE_
private

Definition at line 192 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::eop1_EE_inv
private

Definition at line 221 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::eop2_EB_
private

Definition at line 250 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::eop2_EB_inv
private

Definition at line 279 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::eop2_EE_
private

Definition at line 251 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::eop2_EE_inv
private

Definition at line 280 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Float_t ZeePlots::event_caloMET
private

Definition at line 330 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_caloMET_phi
private

Definition at line 331 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::event_datasetTag
private

Definition at line 342 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_Mee
private

Definition at line 333 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_pfMET
private

Definition at line 330 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_pfMET_phi
private

Definition at line 331 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_tcMET
private

Definition at line 330 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::event_tcMET_phi
private

Definition at line 331 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Long64_t ZeePlots::eventNumber
private
TFile* ZeePlots::file_
private
const char* ZeePlots::fileName_
private

Definition at line 80 of file ZeePlots.h.

Referenced by ZeePlots().

TH1F* ZeePlots::h1_FiredTriggers_
private

Definition at line 88 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_gen_ZEta_
private

Definition at line 84 of file ZeePlots.h.

Referenced by bookZMCHistograms(), and fillZMCInfo().

TH1F* ZeePlots::h1_gen_ZMass_
private

Definition at line 82 of file ZeePlots.h.

Referenced by bookZMCHistograms(), and fillZMCInfo().

TH1F* ZeePlots::h1_gen_ZPhi_
private

Definition at line 85 of file ZeePlots.h.

Referenced by bookZMCHistograms(), fillZMCInfo(), and writeMCZHistograms().

TH1F* ZeePlots::h1_gen_ZPt_
private

Definition at line 86 of file ZeePlots.h.

Referenced by bookZMCHistograms(), fillZMCInfo(), and writeMCZHistograms().

TH1F* ZeePlots::h1_gen_ZRapidity_
private

Definition at line 83 of file ZeePlots.h.

Referenced by bookZMCHistograms(), fillZMCInfo(), and writeMCZHistograms().

TH1F* ZeePlots::h1_HLT1Electron_FiredEvents_
private

Definition at line 89 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT1Electron_HLT2Electron_FiredEvents_
private

Definition at line 92 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT1Electron_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
private

Definition at line 95 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT1Electron_HLT2ElectronRelaxed_FiredEvents_
private

Definition at line 93 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT2Electron_FiredEvents_
private

Definition at line 90 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT2Electron_HLT2ElectronRelaxed_FiredEvents_
private

Definition at line 94 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLT2ElectronRelaxed_FiredEvents_
private

Definition at line 91 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_HLTVisitedEvents_
private

Definition at line 96 of file ZeePlots.h.

Referenced by bookHLTHistograms(), and fillHLTInfo().

TH1F* ZeePlots::h1_mcEle_Energy_
private

Definition at line 98 of file ZeePlots.h.

Referenced by bookEleMCHistograms(), fillEleMCInfo(), and writeMCEleHistograms().

TH1F* ZeePlots::h1_mcEleEta_
private

Definition at line 100 of file ZeePlots.h.

Referenced by bookEleMCHistograms(), fillEleMCInfo(), and writeMCEleHistograms().

TH1F* ZeePlots::h1_mcElePhi_
private

Definition at line 101 of file ZeePlots.h.

Referenced by bookEleMCHistograms(), fillEleMCInfo(), and writeMCEleHistograms().

TH1F* ZeePlots::h1_mcElePt_
private

Definition at line 99 of file ZeePlots.h.

Referenced by bookEleMCHistograms(), fillEleMCInfo(), and writeMCEleHistograms().

TH1F* ZeePlots::h1_nEleReco_
private

Definition at line 107 of file ZeePlots.h.

Referenced by bookEleHistograms(), and fillEleInfo().

TH1F* ZeePlots::h1_occupancyVsEtaCrack_
private

Definition at line 117 of file ZeePlots.h.

Referenced by bookEleClassesPlots(), fillEleClassesPlots(), and writeEleClassesPlots().

TH1F* ZeePlots::h1_occupancyVsEtaGold_
private

Definition at line 115 of file ZeePlots.h.

Referenced by bookEleClassesPlots(), fillEleClassesPlots(), and writeEleClassesPlots().

TH1F* ZeePlots::h1_occupancyVsEtaShower_
private

Definition at line 118 of file ZeePlots.h.

Referenced by bookEleClassesPlots(), fillEleClassesPlots(), and writeEleClassesPlots().

TH1F* ZeePlots::h1_occupancyVsEtaSilver_
private

Definition at line 116 of file ZeePlots.h.

Referenced by bookEleClassesPlots(), fillEleClassesPlots(), and writeEleClassesPlots().

TH1F* ZeePlots::h1_reco_ZEta_
private

Definition at line 109 of file ZeePlots.h.

Referenced by bookZHistograms(), fillZInfo(), and writeZHistograms().

TH1F* ZeePlots::h1_reco_ZPhi_
private

Definition at line 112 of file ZeePlots.h.

Referenced by bookZHistograms(), fillZInfo(), and writeZHistograms().

TH1F* ZeePlots::h1_reco_ZPt_
private

Definition at line 113 of file ZeePlots.h.

Referenced by bookZHistograms(), fillZInfo(), and writeZHistograms().

TH1F* ZeePlots::h1_reco_ZRapidity_
private

Definition at line 111 of file ZeePlots.h.

Referenced by bookZHistograms(), fillZInfo(), and writeZHistograms().

TH1F* ZeePlots::h1_reco_ZTheta_
private

Definition at line 110 of file ZeePlots.h.

Referenced by bookZHistograms(), fillZInfo(), and writeZHistograms().

TH1F* ZeePlots::h1_recoEleEnergy_
private

Definition at line 103 of file ZeePlots.h.

Referenced by bookEleHistograms(), fillEleInfo(), and writeEleHistograms().

TH1F* ZeePlots::h1_recoEleEta_
private

Definition at line 105 of file ZeePlots.h.

Referenced by bookEleHistograms(), fillEleInfo(), and writeEleHistograms().

TH1F* ZeePlots::h1_recoElePhi_
private

Definition at line 106 of file ZeePlots.h.

Referenced by bookEleHistograms(), fillEleInfo(), and writeEleHistograms().

TH1F* ZeePlots::h1_recoElePt_
private

Definition at line 104 of file ZeePlots.h.

Referenced by bookEleHistograms(), fillEleInfo(), and writeEleHistograms().

TH1F* ZeePlots::h_e_ETA
private

Definition at line 111 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_e_PHI
private

Definition at line 112 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_e_PT
private

Definition at line 110 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_deta
private

Definition at line 119 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_dphi
private

Definition at line 118 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_ecaliso
private

Definition at line 115 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_hcaliso
private

Definition at line 116 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_HoE
private

Definition at line 120 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_sIetaIeta
private

Definition at line 117 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EB_trkiso
private

Definition at line 114 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_deta
private

Definition at line 127 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_dphi
private

Definition at line 126 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_ecaliso
private

Definition at line 123 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_hcaliso
private

Definition at line 124 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_HoE
private

Definition at line 128 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_sIetaIeta
private

Definition at line 125 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_EE_trkiso
private

Definition at line 122 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_mee
private

Definition at line 103 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_mee_EBEB
private

Definition at line 104 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_mee_EBEE
private

Definition at line 105 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_mee_EEEE
private

Definition at line 106 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_trackIso_eb_NmOne
private

Definition at line 131 of file ZeePlots.h.

TH1F* ZeePlots::h_trackIso_ee_NmOne
private

Definition at line 132 of file ZeePlots.h.

TH1F* ZeePlots::h_Zcand_PT
private

Definition at line 107 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

TH1F* ZeePlots::h_Zcand_Y
private

Definition at line 108 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and endJob().

Double_t ZeePlots::hcalIso1_EB_
private

Definition at line 176 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIso1_EB_inv
private

Definition at line 205 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIso1_EE_
private

Definition at line 177 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIso1_EE_inv
private

Definition at line 206 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIso2_EB_
private

Definition at line 235 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIso2_EB_inv
private

Definition at line 264 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIso2_EE_
private

Definition at line 236 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIso2_EE_inv
private

Definition at line 265 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIsoUser1_EB_
private

Definition at line 198 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIsoUser1_EB_inv
private

Definition at line 227 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIsoUser1_EE_
private

Definition at line 199 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIsoUser1_EE_inv
private

Definition at line 228 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIsoUser2_EB_
private

Definition at line 257 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIsoUser2_EB_inv
private

Definition at line 286 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hcalIsoUser2_EE_
private

Definition at line 258 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hcalIsoUser2_EE_inv
private

Definition at line 287 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

TFile* ZeePlots::histofile
private

Definition at line 100 of file ZeePlots.h.

Double_t ZeePlots::hoe1_EB_
private

Definition at line 185 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hoe1_EB_inv
private

Definition at line 214 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hoe1_EE_
private

Definition at line 186 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hoe1_EE_inv
private

Definition at line 215 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hoe2_EB_
private

Definition at line 244 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hoe2_EB_inv
private

Definition at line 273 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::hoe2_EE_
private

Definition at line 245 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::hoe2_EE_inv
private

Definition at line 274 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::includeJetInformationInNtuples_
private

Definition at line 353 of file ZeePlots.h.

Referenced by analyze(), beginJob(), and ZeePlots().

std::vector<Bool_t> ZeePlots::InvVars1_
private

Definition at line 294 of file ZeePlots.h.

Referenced by beginJob(), and CheckCut1Inv().

std::vector<Bool_t> ZeePlots::InvVars2_
private

Definition at line 295 of file ZeePlots.h.

Referenced by beginJob(), and CheckCut2Inv().

Int_t ZeePlots::lumiSection
private

Definition at line 300 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Bool_t ZeePlots::maxNumberOfExpectedMissingHits1_
private

Definition at line 86 of file ZeePlots.h.

Referenced by PassPreselectionCriteria1(), and ZeePlots().

Bool_t ZeePlots::maxNumberOfExpectedMissingHits2_
private

Definition at line 92 of file ZeePlots.h.

Referenced by PassPreselectionCriteria2(), and ZeePlots().

Int_t ZeePlots::nBarrelVars_
private
std::string ZeePlots::outputFile_
private

Definition at line 95 of file ZeePlots.h.

Referenced by endJob(), and ZeePlots().

Float_t ZeePlots::pfjet_et[5]
private

Definition at line 338 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pfjet_eta[5]
private

Definition at line 339 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pfjet_phi[5]
private

Definition at line 340 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

edm::EDGetTokenT<reco::PFJetCollection> ZeePlots::pfJetCollectionToken_
private

Definition at line 98 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Float_t ZeePlots::pv_x1
private

Definition at line 312 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pv_x2
private

Definition at line 325 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pv_y1
private

Definition at line 312 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pv_y2
private

Definition at line 325 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pv_z1
private

Definition at line 312 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Float_t ZeePlots::pv_z2
private

Definition at line 325 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Int_t ZeePlots::runNumber
private

Definition at line 300 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

Double_t ZeePlots::sihih1_EB_
private

Definition at line 179 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::sihih1_EB_inv
private

Definition at line 208 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::sihih1_EE_
private

Definition at line 180 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::sihih1_EE_inv
private

Definition at line 209 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::sihih2_EB_
private

Definition at line 238 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::sihih2_EB_inv
private

Definition at line 267 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::sihih2_EE_
private

Definition at line 239 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::sihih2_EE_inv
private

Definition at line 268 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::tip_bspot1_EB_
private

Definition at line 189 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::tip_bspot1_EB_inv
private

Definition at line 218 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::tip_bspot1_EE_
private

Definition at line 190 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::tip_bspot1_EE_inv
private

Definition at line 219 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::tip_bspot2_EB_
private

Definition at line 248 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::tip_bspot2_EB_inv
private

Definition at line 277 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::tip_bspot2_EE_
private

Definition at line 249 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::tip_bspot2_EE_inv
private

Definition at line 278 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIso1_EB_
private

Definition at line 172 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIso1_EB_inv
private

Definition at line 201 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIso1_EE_
private

Definition at line 173 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIso1_EE_inv
private

Definition at line 202 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIso2_EB_
private

Definition at line 231 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIso2_EB_inv
private

Definition at line 260 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIso2_EE_
private

Definition at line 232 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIso2_EE_inv
private

Definition at line 261 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIsoUser1_EB_
private

Definition at line 194 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIsoUser1_EB_inv
private

Definition at line 223 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIsoUser1_EE_
private

Definition at line 195 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIsoUser1_EE_inv
private

Definition at line 224 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIsoUser2_EB_
private

Definition at line 253 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIsoUser2_EB_inv
private

Definition at line 282 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Double_t ZeePlots::trackIsoUser2_EE_
private

Definition at line 254 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::trackIsoUser2_EE_inv
private

Definition at line 283 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

Bool_t ZeePlots::useConversionRejection1_
private

Definition at line 84 of file ZeePlots.h.

Referenced by PassPreselectionCriteria1(), and ZeePlots().

Bool_t ZeePlots::useConversionRejection2_
private

Definition at line 90 of file ZeePlots.h.

Referenced by PassPreselectionCriteria2(), and ZeePlots().

Bool_t ZeePlots::useExpectedMissingHits1_
private

Definition at line 85 of file ZeePlots.h.

Referenced by PassPreselectionCriteria1(), and ZeePlots().

Bool_t ZeePlots::useExpectedMissingHits2_
private

Definition at line 91 of file ZeePlots.h.

Referenced by PassPreselectionCriteria2(), and ZeePlots().

Bool_t ZeePlots::usePrecalcID1_
private

Definition at line 71 of file ZeePlots.h.

Referenced by CheckCuts1(), and ZeePlots().

Bool_t ZeePlots::usePrecalcID2_
private

Definition at line 76 of file ZeePlots.h.

Referenced by CheckCuts2(), and ZeePlots().

std::string ZeePlots::usePrecalcIDSign1_
private

Definition at line 72 of file ZeePlots.h.

Referenced by CheckCuts1(), and ZeePlots().

std::string ZeePlots::usePrecalcIDSign2_
private

Definition at line 77 of file ZeePlots.h.

Referenced by CheckCuts2(), and ZeePlots().

std::string ZeePlots::usePrecalcIDType1_
private

Definition at line 73 of file ZeePlots.h.

Referenced by CheckCuts1(), and ZeePlots().

std::string ZeePlots::usePrecalcIDType2_
private

Definition at line 78 of file ZeePlots.h.

Referenced by CheckCuts2(), and ZeePlots().

Double_t ZeePlots::usePrecalcIDValue1_
private

Definition at line 74 of file ZeePlots.h.

Referenced by CheckCuts1(), and ZeePlots().

Double_t ZeePlots::usePrecalcIDValue2_
private

Definition at line 79 of file ZeePlots.h.

Referenced by CheckCuts2(), and ZeePlots().

Bool_t ZeePlots::usePreselection1_
private

Definition at line 82 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Bool_t ZeePlots::usePreselection2_
private

Definition at line 88 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().

Bool_t ZeePlots::useSameSelectionOnBothElectrons_
private

Definition at line 68 of file ZeePlots.h.

Referenced by ZeePlots().

Bool_t ZeePlots::useValidFirstPXBHit1_
private

Definition at line 83 of file ZeePlots.h.

Referenced by PassPreselectionCriteria1(), and ZeePlots().

Bool_t ZeePlots::useValidFirstPXBHit2_
private

Definition at line 89 of file ZeePlots.h.

Referenced by PassPreselectionCriteria2(), and ZeePlots().

TTree* ZeePlots::vbtfPresele_tree
private

Definition at line 348 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

TTree* ZeePlots::vbtfSele_tree
private

Definition at line 347 of file ZeePlots.h.

Referenced by analyze(), and beginJob().

TFile* ZeePlots::ZEE_VBTFpreseleFile_
private

Definition at line 344 of file ZeePlots.h.

Referenced by beginJob(), and endJob().

std::string ZeePlots::ZEE_VBTFpreseleFileName_
private

Definition at line 351 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

TFile* ZeePlots::ZEE_VBTFselectionFile_
private

Definition at line 345 of file ZeePlots.h.

Referenced by beginJob(), and endJob().

std::string ZeePlots::ZEE_VBTFselectionFileName_
private

Definition at line 350 of file ZeePlots.h.

Referenced by beginJob(), and ZeePlots().

edm::EDGetTokenT<pat::CompositeCandidateCollection> ZeePlots::zeeCollectionToken_
private

Definition at line 96 of file ZeePlots.h.

Referenced by analyze(), and ZeePlots().