CMS 3D CMS Logo

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

#include <GsfElectronMCFakeAnalyzer.h>

Inheritance diagram for GsfElectronMCFakeAnalyzer:
edm::one::EDAnalyzer<> edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c) override
 
void beginJob () override
 
void endJob () override
 
 GsfElectronMCFakeAnalyzer (const edm::ParameterSet &conf)
 
 ~GsfElectronMCFakeAnalyzer () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer<>
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
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 Attributes

edm::InputTag beamSpot_
 
double deltaR_
 
double detamatchmax
 
double detamatchmin
 
double detamax
 
double detamin
 
double dphimatchmax
 
double dphimatchmin
 
double dphimax
 
double dphimin
 
edm::InputTag electronCollection_
 
double eopmax
 
double eopmaxsht
 
double etamax
 
double etamin
 
double fhitsmax
 
TH1F * h_ele_ambiguousTracks
 
TH2F * h_ele_ambiguousTracksVsEta
 
TH2F * h_ele_ambiguousTracksVsPhi
 
TH2F * h_ele_ambiguousTracksVsPt
 
TH1F * h_ele_charge
 
TH2F * h_ele_chargeVsEta
 
TH2F * h_ele_chargeVsPhi
 
TH2F * h_ele_chargeVsPt
 
TH1F * h_ele_chi2
 
TH1F * h_ele_chi2_barrel
 
TH1F * h_ele_chi2_endcaps
 
TH2F * h_ele_chi2VsEta
 
TH2F * h_ele_chi2VsPhi
 
TH2F * h_ele_chi2VsPt
 
TH1F * h_ele_classes
 
TH1F * h_ele_dEtaCl_propOut
 
TH1F * h_ele_dEtaCl_propOut_all
 
TH1F * h_ele_dEtaCl_propOut_barrel
 
TH1F * h_ele_dEtaCl_propOut_eg
 
TH1F * h_ele_dEtaCl_propOut_eg_barrel
 
TH1F * h_ele_dEtaCl_propOut_eg_endcaps
 
TH1F * h_ele_dEtaCl_propOut_endcaps
 
TH2F * h_ele_dEtaClVsEta_propOut
 
TH2F * h_ele_dEtaClVsPhi_propOut
 
TH2F * h_ele_dEtaClVsPt_propOut
 
TH1F * h_ele_dEtaEleCl_propOut
 
TH1F * h_ele_dEtaEleCl_propOut_barrel
 
TH1F * h_ele_dEtaEleCl_propOut_eg
 
TH1F * h_ele_dEtaEleCl_propOut_eg_barrel
 
TH1F * h_ele_dEtaEleCl_propOut_eg_endcaps
 
TH1F * h_ele_dEtaEleCl_propOut_endcaps
 
TH2F * h_ele_dEtaEleClVsEta_propOut
 
TH2F * h_ele_dEtaEleClVsPhi_propOut
 
TH2F * h_ele_dEtaEleClVsPt_propOut
 
TH1F * h_ele_dEtaSc_propVtx
 
TH1F * h_ele_dEtaSc_propVtx_all
 
TH1F * h_ele_dEtaSc_propVtx_barrel
 
TH1F * h_ele_dEtaSc_propVtx_eg
 
TH1F * h_ele_dEtaSc_propVtx_eg_barrel
 
TH1F * h_ele_dEtaSc_propVtx_eg_endcaps
 
TH1F * h_ele_dEtaSc_propVtx_endcaps
 
TH2F * h_ele_dEtaScVsEta_propVtx
 
TH2F * h_ele_dEtaScVsPhi_propVtx
 
TH2F * h_ele_dEtaScVsPt_propVtx
 
TH1F * h_ele_dPhiCl_propOut
 
TH1F * h_ele_dPhiCl_propOut_all
 
TH1F * h_ele_dPhiCl_propOut_barrel
 
TH1F * h_ele_dPhiCl_propOut_eg
 
TH1F * h_ele_dPhiCl_propOut_eg_barrel
 
TH1F * h_ele_dPhiCl_propOut_eg_endcaps
 
TH1F * h_ele_dPhiCl_propOut_endcaps
 
TH2F * h_ele_dPhiClVsEta_propOut
 
TH2F * h_ele_dPhiClVsPhi_propOut
 
TH2F * h_ele_dPhiClVsPt_propOut
 
TH1F * h_ele_dPhiEleCl_propOut
 
TH1F * h_ele_dPhiEleCl_propOut_barrel
 
TH1F * h_ele_dPhiEleCl_propOut_eg
 
TH1F * h_ele_dPhiEleCl_propOut_eg_barrel
 
TH1F * h_ele_dPhiEleCl_propOut_eg_endcaps
 
TH1F * h_ele_dPhiEleCl_propOut_endcaps
 
TH2F * h_ele_dPhiEleClVsEta_propOut
 
TH2F * h_ele_dPhiEleClVsPhi_propOut
 
TH2F * h_ele_dPhiEleClVsPt_propOut
 
TH1F * h_ele_dPhiSc_propVtx
 
TH1F * h_ele_dPhiSc_propVtx_all
 
TH1F * h_ele_dPhiSc_propVtx_barrel
 
TH1F * h_ele_dPhiSc_propVtx_eg
 
TH1F * h_ele_dPhiSc_propVtx_eg_barrel
 
TH1F * h_ele_dPhiSc_propVtx_eg_endcaps
 
TH1F * h_ele_dPhiSc_propVtx_endcaps
 
TH2F * h_ele_dPhiScVsEta_propVtx
 
TH2F * h_ele_dPhiScVsPhi_propVtx
 
TH2F * h_ele_dPhiScVsPt_propVtx
 
TH2F * h_ele_E2mnE1vsMee_all
 
TH2F * h_ele_E2mnE1vsMee_egeg_all
 
TH1F * h_ele_ecalRecHitSumEt_dr03
 
TH1F * h_ele_ecalRecHitSumEt_dr04
 
TH1F * h_ele_EeleOPout
 
TH1F * h_ele_EeleOPout_all
 
TH1F * h_ele_EeleOPout_barrel
 
TH1F * h_ele_EeleOPout_eg
 
TH1F * h_ele_EeleOPout_eg_barrel
 
TH1F * h_ele_EeleOPout_eg_endcaps
 
TH1F * h_ele_EeleOPout_endcaps
 
TH2F * h_ele_EeleOPoutVsE
 
TH2F * h_ele_EeleOPoutVsEta
 
TH2F * h_ele_EeleOPoutVsPhi
 
TH1F * h_ele_EoP
 
TH1F * h_ele_EoP_barrel
 
TH1F * h_ele_EoP_eg
 
TH1F * h_ele_EoP_eg_barrel
 
TH1F * h_ele_EoP_eg_endcaps
 
TH1F * h_ele_EoP_endcaps
 
TH1F * h_ele_EoPout
 
TH1F * h_ele_EoPout_all
 
TH1F * h_ele_EoPout_barrel
 
TH1F * h_ele_EoPout_eg
 
TH1F * h_ele_EoPout_eg_barrel
 
TH1F * h_ele_EoPout_eg_endcaps
 
TH1F * h_ele_EoPout_endcaps
 
TH2F * h_ele_EoPoutVsE
 
TH2F * h_ele_EoPoutVsEta
 
TH2F * h_ele_EoPoutVsPhi
 
TH2F * h_ele_EoPVsE
 
TH2F * h_ele_EoPVsEta
 
TH2F * h_ele_EoPVsPhi
 
TH1F * h_ele_EoverP_all
 
TH1F * h_ele_EseedOP
 
TH1F * h_ele_EseedOP_all
 
TH1F * h_ele_EseedOP_barrel
 
TH1F * h_ele_EseedOP_eg
 
TH1F * h_ele_EseedOP_eg_barrel
 
TH1F * h_ele_EseedOP_eg_endcaps
 
TH1F * h_ele_EseedOP_endcaps
 
TH2F * h_ele_EseedOPVsE
 
TH2F * h_ele_EseedOPVsEta
 
TH2F * h_ele_EseedOPVsPhi
 
TH1F * h_ele_eta
 
TH1F * h_ele_eta_bbrem
 
TH1F * h_ele_eta_golden
 
TH1F * h_ele_eta_narrow
 
TH1F * h_ele_eta_shower
 
TH1F * h_ele_EtaMnEtamatchingObject
 
TH2F * h_ele_EtaMnEtamatchingObjectVsEta
 
TH2F * h_ele_EtaMnEtamatchingObjectVsPhi
 
TH2F * h_ele_EtaMnEtamatchingObjectVsPt
 
TH1F * h_ele_fbrem
 
TProfile * h_ele_fbremVsEta_mean
 
TProfile * h_ele_fbremVsEta_mode
 
TH1F * h_ele_foundHits
 
TH1F * h_ele_foundHits_barrel
 
TH1F * h_ele_foundHits_endcaps
 
TH2F * h_ele_foundHitsVsEta
 
TH2F * h_ele_foundHitsVsPhi
 
TH2F * h_ele_foundHitsVsPt
 
TH1F * h_ele_hcalDepth1TowerSumEt_dr03
 
TH1F * h_ele_hcalDepth1TowerSumEt_dr04
 
TH1F * h_ele_hcalDepth2TowerSumEt_dr03
 
TH1F * h_ele_hcalDepth2TowerSumEt_dr04
 
TH1F * h_ele_HoE
 
TH1F * h_ele_HoE_all
 
TH1F * h_ele_HoE_barrel
 
TH1F * h_ele_HoE_eg
 
TH1F * h_ele_HoE_eg_barrel
 
TH1F * h_ele_HoE_eg_endcaps
 
TH1F * h_ele_HoE_endcaps
 
TH1F * h_ele_HoE_fiducial
 
TH2F * h_ele_HoEVsE
 
TH2F * h_ele_HoEVsEta
 
TH2F * h_ele_HoEVsPhi
 
TH1F * h_ele_lostHits
 
TH1F * h_ele_lostHits_barrel
 
TH1F * h_ele_lostHits_endcaps
 
TH2F * h_ele_lostHitsVsEta
 
TH2F * h_ele_lostHitsVsPhi
 
TH2F * h_ele_lostHitsVsPt
 
TH1F * h_ele_matchingObjectAbsEta_matched
 
TH1F * h_ele_matchingObjectEta_matched
 
TH1F * h_ele_matchingObjectPhi_matched
 
TH1F * h_ele_matchingObjectPt_matched
 
TH1F * h_ele_matchingObjectZ_matched
 
TH1F * h_ele_mee_all
 
TH1F * h_ele_mee_os
 
TH1F * h_ele_mva
 
TH1F * h_ele_outerP
 
TH1F * h_ele_outerP_mode
 
TH1F * h_ele_outerPt
 
TH1F * h_ele_outerPt_mode
 
TH2F * h_ele_outerPtVsEta_mode
 
TH2F * h_ele_outerPtVsPhi_mode
 
TH2F * h_ele_outerPtVsPt_mode
 
TH2F * h_ele_outerPVsEta_mode
 
TH1F * h_ele_PhiMnPhimatchingObject
 
TH1F * h_ele_PhiMnPhimatchingObject2
 
TH2F * h_ele_PhiMnPhimatchingObjectVsEta
 
TH2F * h_ele_PhiMnPhimatchingObjectVsPhi
 
TH2F * h_ele_PhiMnPhimatchingObjectVsPt
 
TH1F * h_ele_PinMnPout
 
TH1F * h_ele_PinMnPout_mode
 
TH2F * h_ele_PinMnPoutVsChi2_mode
 
TH2F * h_ele_PinMnPoutVsE_mode
 
TH2F * h_ele_PinMnPoutVsEta_mode
 
TH2F * h_ele_PinMnPoutVsPhi_mode
 
TH2F * h_ele_PinMnPoutVsPt_mode
 
TH2F * h_ele_PinVsPoutGolden_mean
 
TH2F * h_ele_PinVsPoutGolden_mode
 
TH2F * h_ele_PinVsPoutShowering_mean
 
TH2F * h_ele_PinVsPoutShowering_mode
 
TH1F * h_ele_PoPmatchingObject
 
TH1F * h_ele_PoPmatchingObject_barrel
 
TH1F * h_ele_PoPmatchingObject_endcaps
 
TH2F * h_ele_PoPmatchingObjectVsEta
 
TH2F * h_ele_PoPmatchingObjectVsPhi
 
TH2F * h_ele_PoPmatchingObjectVsPt
 
TH1F * h_ele_provenance
 
TH2F * h_ele_PtinVsPtoutGolden_mean
 
TH2F * h_ele_PtinVsPtoutGolden_mode
 
TH2F * h_ele_PtinVsPtoutShowering_mean
 
TH2F * h_ele_PtinVsPtoutShowering_mode
 
TH1F * h_ele_seed_dphi2_
 
TH2F * h_ele_seed_dphi2VsEta_
 
TH2F * h_ele_seed_dphi2VsPt_
 
TH1F * h_ele_seed_drz2_
 
TH2F * h_ele_seed_drz2VsEta_
 
TH2F * h_ele_seed_drz2VsPt_
 
TH1F * h_ele_seed_subdet2_
 
TH1F * h_ele_TIP_all
 
TH1F * h_ele_tkSumPt_dr03
 
TH1F * h_ele_tkSumPt_dr04
 
TH1F * h_ele_vertexAbsEta
 
TH1F * h_ele_vertexEta
 
TH1F * h_ele_vertexEta_all
 
TH2F * h_ele_vertexEtaVsPhi
 
TH1F * h_ele_vertexP
 
TH1F * h_ele_vertexPhi
 
TH1F * h_ele_vertexPt
 
TH1F * h_ele_vertexPt_all
 
TH2F * h_ele_vertexPtVsEta
 
TH2F * h_ele_vertexPtVsPhi
 
TH1F * h_ele_vertexTIP
 
TH2F * h_ele_vertexTIPVsEta
 
TH2F * h_ele_vertexTIPVsPhi
 
TH2F * h_ele_vertexTIPVsPt
 
TH1F * h_ele_vertexX
 
TH1F * h_ele_vertexY
 
TH1F * h_ele_vertexZ
 
TH1F * h_matchingObjectAbsEta
 
TH1F * h_matchingObjectEta
 
TH1F * h_matchingObjectNum
 
TH1F * h_matchingObjectP
 
TH1F * h_matchingObjectPhi
 
TH1F * h_matchingObjectPt
 
TH1F * h_matchingObjectZ
 
TFile * histfile_
 
TH1F * histNum_
 
TH1F * histSclE1x5_
 
TH1F * histSclE1x5_barrel_
 
TH1F * histSclE1x5_endcaps_
 
TH1F * histSclE2x5max_
 
TH1F * histSclE2x5max_barrel_
 
TH1F * histSclE2x5max_endcaps_
 
TH1F * histSclE5x5_
 
TH1F * histSclE5x5_barrel_
 
TH1F * histSclE5x5_endcaps_
 
TH1F * histSclEn_
 
TH1F * histSclEoEmatchingObject_barrel
 
TH1F * histSclEoEmatchingObject_endcaps
 
TH1F * histSclEoEmatchingObjectGolden_barrel
 
TH1F * histSclEoEmatchingObjectGolden_endcaps
 
TH1F * histSclEoEmatchingObjectShowering_barrel
 
TH1F * histSclEoEmatchingObjectShowering_endcaps
 
TH1F * histSclEt_
 
TH1F * histSclEta_
 
TH2F * histSclEtaVsPhi_
 
TH2F * histSclEtVsEta_
 
TH2F * histSclEtVsPhi_
 
TH1F * histSclPhi_
 
TH1F * histSclSigEtaEta_
 
TH1F * histSclSigEtaEta_barrel_
 
TH1F * histSclSigEtaEta_endcaps_
 
TH1F * histSclSigIEtaIEta_
 
TH1F * histSclSigIEtaIEta_barrel_
 
TH1F * histSclSigIEtaIEta_endcaps_
 
double hoemax
 
double hoemin
 
double lhitsmax
 
edm::InputTag matchingObjectCollection_
 
double maxAbsEta_
 
double maxPt_
 
float mcEnergy [10]
 
float mcEta [10]
 
float mcPhi [10]
 
float mcPt [10]
 
float mcQ [10]
 
double meemax
 
double meemin
 
int nbindeta
 
int nbindetamatch
 
int nbindetamatch2D
 
int nbindphi
 
int nbindphimatch
 
int nbindphimatch2D
 
int nbineop
 
int nbineop2D
 
int nbineta
 
int nbineta2D
 
int nbinfhits
 
int nbinhoe
 
int nbinlhits
 
int nbinmee
 
int nbinp
 
int nbinp2D
 
int nbinphi
 
int nbinphi2D
 
int nbinpt
 
int nbinpt2D
 
int nbinpteff
 
int nbinxyz
 
std::string outputFile_
 
edm::ESHandle< TrackerGeometrypDD
 
double phimax
 
double phimin
 
double pmax
 
double ptmax
 
bool readAOD_
 
float seedEta [10]
 
float seedMomentum [10]
 
float seedPhi [10]
 
float seedPt [10]
 
float seedQ [10]
 
float superclusterEnergy [10]
 
float superclusterEt [10]
 
float superclusterEta [10]
 
float superclusterPhi [10]
 
edm::ESHandle< MagneticFieldtheMagField
 
TrajectoryStateTransform transformer_
 
TTree * tree_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- 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

Description: GsfElectrons fake electrons analyzer using mc info

Implementation: <Notes on="" implementation>="">

Definition at line 36 of file GsfElectronMCFakeAnalyzer.h.

Constructor & Destructor Documentation

GsfElectronMCFakeAnalyzer::GsfElectronMCFakeAnalyzer ( const edm::ParameterSet conf)
explicit

Definition at line 51 of file GsfElectronMCFakeAnalyzer.cc.

References deltaR_, detamatchmax, detamatchmin, detamax, detamin, dphimatchmax, dphimatchmin, dphimax, dphimin, electronCollection_, eopmax, eopmaxsht, etamax, etamin, fhitsmax, edm::ParameterSet::getParameter(), histfile_, hoemax, hoemin, lhitsmax, matchingObjectCollection_, maxAbsEta_, maxPt_, meemax, meemin, nbindeta, nbindetamatch, nbindetamatch2D, nbindphi, nbindphimatch, nbindphimatch2D, nbineop, nbineop2D, nbineta, nbineta2D, nbinfhits, nbinhoe, nbinlhits, nbinmee, nbinp, nbinp2D, nbinphi, nbinphi2D, nbinpt, nbinpt2D, nbinpteff, nbinxyz, outputFile_, phimax, phimin, pmax, muonDTDigis_cfi::pset, ptmax, readAOD_, and AlCaHLTBitMon_QueryRunRegistry::string.

51  :
52  beamSpot_(conf.getParameter<edm::InputTag>("beamSpot"))
53 {
54 
55  outputFile_ = conf.getParameter<std::string>("outputFile");
56  histfile_ = new TFile(outputFile_.c_str(),"RECREATE");
57  electronCollection_=conf.getParameter<edm::InputTag>("electronCollection");
58  matchingObjectCollection_ = conf.getParameter<edm::InputTag>("matchingObjectCollection");
59  readAOD_ = conf.getParameter<bool>("readAOD");
60  maxPt_ = conf.getParameter<double>("MaxPt");
61  maxAbsEta_ = conf.getParameter<double>("MaxAbsEta");
62  deltaR_ = conf.getParameter<double>("DeltaR");
63 
65  conf.getParameter<edm::ParameterSet>("HistosConfigurationFake") ;
66 
67  etamin=pset.getParameter<double>("Etamin");
68  etamax=pset.getParameter<double>("Etamax");
69  phimin=pset.getParameter<double>("Phimin");
70  phimax=pset.getParameter<double>("Phimax");
71  ptmax=pset.getParameter<double>("Ptmax");
72  pmax=pset.getParameter<double>("Pmax");
73  eopmax=pset.getParameter<double>("Eopmax");
74  eopmaxsht=pset.getParameter<double>("Eopmaxsht");
75  detamin=pset.getParameter<double>("Detamin");
76  detamax=pset.getParameter<double>("Detamax");
77  dphimin=pset.getParameter<double>("Dphimin");
78  dphimax=pset.getParameter<double>("Dphimax");
79  detamatchmin=pset.getParameter<double>("Detamatchmin");
80  detamatchmax=pset.getParameter<double>("Detamatchmax");
81  dphimatchmin=pset.getParameter<double>("Dphimatchmin");
82  dphimatchmax=pset.getParameter<double>("Dphimatchmax");
83  fhitsmax=pset.getParameter<double>("Fhitsmax");
84  lhitsmax=pset.getParameter<double>("Lhitsmax");
85  nbineta=pset.getParameter<int>("Nbineta");
86  nbineta2D=pset.getParameter<int>("Nbineta2D");
87  nbinp=pset.getParameter<int>("Nbinp");
88  nbinpt=pset.getParameter<int>("Nbinpt");
89  nbinp2D=pset.getParameter<int>("Nbinp2D");
90  nbinpt2D=pset.getParameter<int>("Nbinpt2D");
91  nbinpteff=pset.getParameter<int>("Nbinpteff");
92  nbinphi=pset.getParameter<int>("Nbinphi");
93  nbinphi2D=pset.getParameter<int>("Nbinphi2D");
94  nbineop=pset.getParameter<int>("Nbineop");
95  nbineop2D=pset.getParameter<int>("Nbineop2D");
96  nbinfhits=pset.getParameter<int>("Nbinfhits");
97  nbinlhits=pset.getParameter<int>("Nbinlhits");
98  nbinxyz=pset.getParameter<int>("Nbinxyz");
99  nbindeta=pset.getParameter<int>("Nbindeta");
100  nbindphi=pset.getParameter<int>("Nbindphi");
101  nbindetamatch=pset.getParameter<int>("Nbindetamatch");
102  nbindphimatch=pset.getParameter<int>("Nbindphimatch");
103  nbindetamatch2D=pset.getParameter<int>("Nbindetamatch2D");
104  nbindphimatch2D=pset.getParameter<int>("Nbindphimatch2D");
105  nbinmee= pset.getParameter<int>("Nbinmee");
106  meemin=pset.getParameter<double>("Meemin");
107  meemax=pset.getParameter<double>("Meemax");
108  nbinhoe= pset.getParameter<int>("Nbinhoe");
109  hoemin=pset.getParameter<double>("Hoemin");
110  hoemax=pset.getParameter<double>("Hoemax");
111 
112 }
T getParameter(std::string const &) const
GsfElectronMCFakeAnalyzer::~GsfElectronMCFakeAnalyzer ( )
override

Definition at line 114 of file GsfElectronMCFakeAnalyzer.cc.

References histfile_.

115 {
116 
117  // do anything here that needs to be done at desctruction time
118  // (e.g. close files, deallocate resources etc.)
119  histfile_->Write();
120  histfile_->Close();
121 }

Member Function Documentation

void GsfElectronMCFakeAnalyzer::analyze ( const edm::Event e,
const edm::EventSetup c 
)
override

Definition at line 1235 of file GsfElectronMCFakeAnalyzer.cc.

References funct::abs(), reco::GsfElectron::ambiguousGsfTracksSize(), beamSpot_, reco::GsfElectron::caloEnergy(), edm::RefToBase< T >::castTo(), reco::LeafCandidate::charge(), reco::GsfElectron::classification(), gather_cfg::cout, edmIntegrityCheck::d, reco::GsfElectron::deltaEtaEleClusterTrackAtCalo(), reco::GsfElectron::deltaEtaSeedClusterTrackAtCalo(), reco::GsfElectron::deltaEtaSuperClusterTrackAtVtx(), reco::GsfElectron::deltaPhiEleClusterTrackAtCalo(), reco::GsfElectron::deltaPhiSeedClusterTrackAtCalo(), reco::GsfElectron::deltaPhiSuperClusterTrackAtVtx(), boostedElectronIsolation_cff::deltaR, deltaR_, reco::GsfElectron::dr03EcalRecHitSumEt(), reco::GsfElectron::dr03HcalDepth1TowerSumEt(), reco::GsfElectron::dr03HcalDepth2TowerSumEt(), reco::GsfElectron::dr03TkSumPt(), reco::GsfElectron::dr04EcalRecHitSumEt(), reco::GsfElectron::dr04HcalDepth1TowerSumEt(), reco::GsfElectron::dr04HcalDepth2TowerSumEt(), reco::GsfElectron::dr04TkSumPt(), reco::GsfElectron::ecalDrivenSeed(), reco::GsfElectron::eEleClusterOverPout(), electronCollection_, reco::GsfElectron::eSeedClusterOverP(), reco::GsfElectron::eSeedClusterOverPout(), reco::GsfElectron::eSuperClusterOverP(), reco::LeafCandidate::eta(), reco::GsfElectron::fbrem(), HcalObjRepresent::Fill(), ttbarCategorization_cff::genJets, edm::Event::getByLabel(), gsfElectrons_cfi::gsfElectrons, reco::GsfElectron::gsfTrack(), h_ele_ambiguousTracks, h_ele_ambiguousTracksVsEta, h_ele_ambiguousTracksVsPhi, h_ele_ambiguousTracksVsPt, h_ele_charge, h_ele_chargeVsEta, h_ele_chargeVsPhi, h_ele_chargeVsPt, h_ele_chi2, h_ele_chi2VsEta, h_ele_chi2VsPhi, h_ele_chi2VsPt, h_ele_classes, h_ele_dEtaCl_propOut, h_ele_dEtaCl_propOut_all, h_ele_dEtaCl_propOut_barrel, h_ele_dEtaCl_propOut_eg, h_ele_dEtaCl_propOut_eg_barrel, h_ele_dEtaCl_propOut_eg_endcaps, h_ele_dEtaCl_propOut_endcaps, h_ele_dEtaClVsEta_propOut, h_ele_dEtaClVsPhi_propOut, h_ele_dEtaClVsPt_propOut, h_ele_dEtaEleCl_propOut, h_ele_dEtaEleCl_propOut_barrel, h_ele_dEtaEleCl_propOut_eg, h_ele_dEtaEleCl_propOut_eg_barrel, h_ele_dEtaEleCl_propOut_eg_endcaps, h_ele_dEtaEleCl_propOut_endcaps, h_ele_dEtaEleClVsEta_propOut, h_ele_dEtaEleClVsPhi_propOut, h_ele_dEtaEleClVsPt_propOut, h_ele_dEtaSc_propVtx, h_ele_dEtaSc_propVtx_all, h_ele_dEtaSc_propVtx_barrel, h_ele_dEtaSc_propVtx_eg, h_ele_dEtaSc_propVtx_eg_barrel, h_ele_dEtaSc_propVtx_eg_endcaps, h_ele_dEtaSc_propVtx_endcaps, h_ele_dEtaScVsEta_propVtx, h_ele_dEtaScVsPhi_propVtx, h_ele_dEtaScVsPt_propVtx, h_ele_dPhiCl_propOut, h_ele_dPhiCl_propOut_all, h_ele_dPhiCl_propOut_barrel, h_ele_dPhiCl_propOut_eg, h_ele_dPhiCl_propOut_eg_barrel, h_ele_dPhiCl_propOut_eg_endcaps, h_ele_dPhiCl_propOut_endcaps, h_ele_dPhiClVsEta_propOut, h_ele_dPhiClVsPhi_propOut, h_ele_dPhiClVsPt_propOut, h_ele_dPhiEleCl_propOut, h_ele_dPhiEleCl_propOut_barrel, h_ele_dPhiEleCl_propOut_eg, h_ele_dPhiEleCl_propOut_eg_barrel, h_ele_dPhiEleCl_propOut_eg_endcaps, h_ele_dPhiEleCl_propOut_endcaps, h_ele_dPhiEleClVsEta_propOut, h_ele_dPhiEleClVsPhi_propOut, h_ele_dPhiEleClVsPt_propOut, h_ele_dPhiSc_propVtx, h_ele_dPhiSc_propVtx_all, h_ele_dPhiSc_propVtx_barrel, h_ele_dPhiSc_propVtx_eg, h_ele_dPhiSc_propVtx_eg_barrel, h_ele_dPhiSc_propVtx_eg_endcaps, h_ele_dPhiSc_propVtx_endcaps, h_ele_dPhiScVsEta_propVtx, h_ele_dPhiScVsPhi_propVtx, h_ele_dPhiScVsPt_propVtx, h_ele_E2mnE1vsMee_all, h_ele_E2mnE1vsMee_egeg_all, h_ele_ecalRecHitSumEt_dr03, h_ele_ecalRecHitSumEt_dr04, h_ele_EeleOPout, h_ele_EeleOPout_all, h_ele_EeleOPout_barrel, h_ele_EeleOPout_eg, h_ele_EeleOPout_eg_barrel, h_ele_EeleOPout_eg_endcaps, h_ele_EeleOPout_endcaps, h_ele_EeleOPoutVsE, h_ele_EeleOPoutVsEta, h_ele_EeleOPoutVsPhi, h_ele_EoP, h_ele_EoP_barrel, h_ele_EoP_eg, h_ele_EoP_eg_barrel, h_ele_EoP_eg_endcaps, h_ele_EoP_endcaps, h_ele_EoPout, h_ele_EoPout_all, h_ele_EoPout_barrel, h_ele_EoPout_eg, h_ele_EoPout_eg_barrel, h_ele_EoPout_eg_endcaps, h_ele_EoPout_endcaps, h_ele_EoPoutVsE, h_ele_EoPoutVsEta, h_ele_EoPoutVsPhi, h_ele_EoPVsE, h_ele_EoPVsEta, h_ele_EoPVsPhi, h_ele_EoverP_all, h_ele_EseedOP, h_ele_EseedOP_all, h_ele_EseedOP_barrel, h_ele_EseedOP_eg, h_ele_EseedOP_eg_barrel, h_ele_EseedOP_eg_endcaps, h_ele_EseedOP_endcaps, h_ele_EseedOPVsE, h_ele_EseedOPVsEta, h_ele_EseedOPVsPhi, h_ele_eta, h_ele_eta_bbrem, h_ele_eta_golden, h_ele_eta_shower, h_ele_EtaMnEtamatchingObject, h_ele_EtaMnEtamatchingObjectVsEta, h_ele_EtaMnEtamatchingObjectVsPhi, h_ele_EtaMnEtamatchingObjectVsPt, h_ele_fbrem, h_ele_fbremVsEta_mean, h_ele_fbremVsEta_mode, h_ele_foundHits, h_ele_foundHitsVsEta, h_ele_foundHitsVsPhi, h_ele_foundHitsVsPt, h_ele_hcalDepth1TowerSumEt_dr03, h_ele_hcalDepth1TowerSumEt_dr04, h_ele_hcalDepth2TowerSumEt_dr03, h_ele_hcalDepth2TowerSumEt_dr04, h_ele_HoE, h_ele_HoE_all, h_ele_HoE_barrel, h_ele_HoE_eg, h_ele_HoE_eg_barrel, h_ele_HoE_eg_endcaps, h_ele_HoE_endcaps, h_ele_HoE_fiducial, h_ele_HoEVsE, h_ele_HoEVsEta, h_ele_HoEVsPhi, h_ele_lostHits, h_ele_lostHitsVsEta, h_ele_lostHitsVsPhi, h_ele_lostHitsVsPt, h_ele_matchingObjectAbsEta_matched, h_ele_matchingObjectEta_matched, h_ele_matchingObjectPhi_matched, h_ele_matchingObjectPt_matched, h_ele_matchingObjectZ_matched, h_ele_mee_all, h_ele_mee_os, h_ele_mva, h_ele_outerP, h_ele_outerP_mode, h_ele_outerPt, h_ele_outerPt_mode, h_ele_outerPtVsEta_mode, h_ele_outerPtVsPhi_mode, h_ele_outerPtVsPt_mode, h_ele_outerPVsEta_mode, h_ele_PhiMnPhimatchingObject, h_ele_PhiMnPhimatchingObject2, h_ele_PhiMnPhimatchingObjectVsEta, h_ele_PhiMnPhimatchingObjectVsPhi, h_ele_PhiMnPhimatchingObjectVsPt, h_ele_PinMnPout, h_ele_PinMnPout_mode, h_ele_PinMnPoutVsChi2_mode, h_ele_PinMnPoutVsE_mode, h_ele_PinMnPoutVsEta_mode, h_ele_PinMnPoutVsPhi_mode, h_ele_PinMnPoutVsPt_mode, h_ele_PinVsPoutGolden_mean, h_ele_PinVsPoutGolden_mode, h_ele_PinVsPoutShowering_mean, h_ele_PinVsPoutShowering_mode, h_ele_PoPmatchingObject, h_ele_PoPmatchingObject_barrel, h_ele_PoPmatchingObject_endcaps, h_ele_PoPmatchingObjectVsEta, h_ele_PoPmatchingObjectVsPhi, h_ele_PoPmatchingObjectVsPt, h_ele_provenance, h_ele_PtinVsPtoutGolden_mean, h_ele_PtinVsPtoutGolden_mode, h_ele_PtinVsPtoutShowering_mean, h_ele_PtinVsPtoutShowering_mode, h_ele_seed_dphi2_, h_ele_seed_dphi2VsEta_, h_ele_seed_dphi2VsPt_, h_ele_seed_drz2_, h_ele_seed_drz2VsEta_, h_ele_seed_drz2VsPt_, h_ele_seed_subdet2_, h_ele_TIP_all, h_ele_tkSumPt_dr03, h_ele_tkSumPt_dr04, h_ele_vertexEta, h_ele_vertexEta_all, h_ele_vertexEtaVsPhi, h_ele_vertexP, h_ele_vertexPhi, h_ele_vertexPt, h_ele_vertexPt_all, h_ele_vertexPtVsEta, h_ele_vertexPtVsPhi, h_ele_vertexTIP, h_ele_vertexTIPVsEta, h_ele_vertexTIPVsPhi, h_ele_vertexTIPVsPt, h_ele_vertexX, h_ele_vertexY, h_ele_vertexZ, h_matchingObjectAbsEta, h_matchingObjectEta, h_matchingObjectNum, h_matchingObjectP, h_matchingObjectPhi, h_matchingObjectPt, h_matchingObjectZ, reco::GsfElectron::hadronicOverEm(), histNum_, histSclE1x5_, histSclE1x5_barrel_, histSclE1x5_endcaps_, histSclE2x5max_, histSclE2x5max_barrel_, histSclE2x5max_endcaps_, histSclE5x5_, histSclE5x5_barrel_, histSclE5x5_endcaps_, histSclEn_, histSclEoEmatchingObject_barrel, histSclEoEmatchingObject_endcaps, histSclEt_, histSclEta_, histSclEtaVsPhi_, histSclEtVsEta_, histSclEtVsPhi_, histSclPhi_, histSclSigIEtaIEta_, histSclSigIEtaIEta_barrel_, histSclSigIEtaIEta_endcaps_, edm::EventBase::id(), reco::GsfElectron::isEB(), reco::GsfElectron::isEBEEGap(), reco::GsfElectron::isEBEtaGap(), reco::GsfElectron::isEBPhiGap(), reco::GsfElectron::isEE(), reco::GsfElectron::isEEDeeGap(), reco::GsfElectron::isEERingGap(), matchingObjectCollection_, maxAbsEta_, maxPt_, reco::GsfElectron::mva_e_pi(), reco::LeafCandidate::p(), reco::GsfElectron::parentSuperCluster(), reco::LeafCandidate::phi(), pi, reco::BeamSpot::position(), funct::pow(), edm::Handle< T >::product(), reco::LeafCandidate::pt(), reco::LeafCandidate::py(), dttmaxenums::R, readAOD_, reco::GsfElectron::scE1x5(), reco::GsfElectron::scE2x5Max(), reco::GsfElectron::scE5x5(), reco::GsfElectron::scSigmaIEtaIEta(), SurveyInfoScenario_cff::seed, mathSSE::sqrt(), reco::GsfElectron::superCluster(), reco::GsfElectron::trackerDrivenSeed(), reco::GsfElectron::trackMomentumAtVtx(), reco::GsfElectron::trackMomentumOut(), and reco::LeafCandidate::vertex().

1236 {
1237  std::cout << "analyzing new event " << std::endl;
1238 
1239  // get reco electrons
1241  iEvent.getByLabel(electronCollection_,gsfElectrons);
1242  edm::LogInfo("")<<"\n\n =================> Treating event "<<iEvent.id()<<" Number of electrons "<<gsfElectrons.product()->size();
1243 
1244  // get gen jets
1246  iEvent.getByLabel(matchingObjectCollection_,genJets);
1247 
1248  // get the beamspot from the Event:
1249  edm::Handle<reco::BeamSpot> recoBeamSpotHandle;
1250  iEvent.getByLabel(beamSpot_, recoBeamSpotHandle);
1251  const BeamSpot bs = *recoBeamSpotHandle;
1252 
1253  histNum_->Fill((*gsfElectrons).size());
1254 
1255  // all rec electrons
1256  for (reco::GsfElectronCollection::const_iterator gsfIter=gsfElectrons->begin();
1257  gsfIter!=gsfElectrons->end(); gsfIter++){
1258  // preselect electrons
1259  if (gsfIter->pt()>maxPt_ || std::abs(gsfIter->eta())>maxAbsEta_) continue;
1260  h_ele_EoverP_all -> Fill( gsfIter->eSuperClusterOverP() );
1261  h_ele_EseedOP_all -> Fill( gsfIter->eSeedClusterOverP() );
1262  h_ele_EoPout_all -> Fill( gsfIter->eSeedClusterOverPout() );
1263  h_ele_EeleOPout_all -> Fill( gsfIter->eEleClusterOverPout() );
1264  h_ele_dEtaSc_propVtx_all -> Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
1265  h_ele_dPhiSc_propVtx_all -> Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
1266  h_ele_dEtaCl_propOut_all -> Fill(gsfIter->deltaEtaSeedClusterTrackAtCalo());
1267  h_ele_dPhiCl_propOut_all -> Fill(gsfIter->deltaPhiSeedClusterTrackAtCalo());
1268  h_ele_HoE_all -> Fill( gsfIter->hadronicOverEm() );
1269  double d = gsfIter->vertex().x()*gsfIter->vertex().x()
1270  +gsfIter->vertex().y()*gsfIter->vertex().y();
1271  h_ele_TIP_all -> Fill( sqrt(d) );
1272  h_ele_vertexEta_all -> Fill( gsfIter->eta() );
1273  h_ele_vertexPt_all -> Fill( gsfIter->pt() );
1274  float enrj1=gsfIter->superCluster()->energy();
1275  // mee
1276  for (reco::GsfElectronCollection::const_iterator gsfIter2=gsfIter+1;
1277  gsfIter2!=gsfElectrons->end(); gsfIter2++){
1278  math::XYZTLorentzVector p12 = (*gsfIter).p4()+(*gsfIter2).p4();
1279  float mee2 = p12.Dot(p12);
1280  h_ele_mee_all -> Fill(sqrt(mee2));
1281  float enrj2=gsfIter2->superCluster()->energy();
1282  h_ele_E2mnE1vsMee_all->Fill(sqrt(mee2),enrj2-enrj1);
1283  if (gsfIter->ecalDrivenSeed() && gsfIter2->ecalDrivenSeed()) h_ele_E2mnE1vsMee_egeg_all->Fill(sqrt(mee2),enrj2-enrj1);
1284  if (gsfIter->charge()*gsfIter2->charge()<0.) h_ele_mee_os -> Fill(sqrt(mee2));
1285  }
1286  }
1287 
1288  // association matching object-reco electrons
1289  int matchingObjectNum=0;
1290 
1291  for (reco::GenJetCollection::const_iterator moIter = genJets->begin();
1292  moIter != genJets->end(); ++moIter) {
1293 
1294  // number of matching objects
1295  matchingObjectNum++;
1296 
1297  if (moIter->energy()/cosh(moIter->eta())> maxPt_ || std::abs(moIter->eta())> maxAbsEta_) continue;
1298 
1299  // suppress the endcaps
1300  //if (std::abs(moIter->eta()) > 1.5) continue;
1301  // select central z
1302  //if ( std::abs((*mcIter)->production_vertex()->position().z())>50.) continue;
1303 
1304  h_matchingObjectEta -> Fill( moIter->eta() );
1305  h_matchingObjectAbsEta -> Fill( std::abs(moIter->eta()) );
1306  h_matchingObjectP -> Fill( moIter->energy() );
1307  h_matchingObjectPt -> Fill( moIter->energy()/cosh(moIter->eta()) );
1308  h_matchingObjectPhi -> Fill( moIter->phi() );
1309  h_matchingObjectZ -> Fill( moIter->vz() );
1310 
1311  // looking for the best matching gsf electron
1312  bool okGsfFound = false;
1313  double gsfOkRatio = 999999.;
1314 
1315  // find best matched electron
1316  reco::GsfElectron bestGsfElectron;
1317  for (reco::GsfElectronCollection::const_iterator gsfIter=gsfElectrons->begin();
1318  gsfIter!=gsfElectrons->end(); gsfIter++){
1319 
1320  double dphi = gsfIter->phi()-moIter->phi();
1321  if (std::abs(dphi)>CLHEP::pi)
1322  dphi = dphi < 0? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi;
1323  double deltaR = sqrt(std::pow((gsfIter->eta()-moIter->eta()),2) + std::pow(dphi,2));
1324  if ( deltaR < deltaR_ ){
1325  //if ( (genPc->pdg_id() == 11) && (gsfIter->charge() < 0.) || (genPc->pdg_id() == -11) &&
1326  //(gsfIter->charge() > 0.) ){
1327  double tmpGsfRatio = gsfIter->p()/moIter->energy();
1328  if ( std::abs(tmpGsfRatio-1) < std::abs(gsfOkRatio-1) ) {
1329  gsfOkRatio = tmpGsfRatio;
1330  bestGsfElectron=*gsfIter;
1331  okGsfFound = true;
1332  }
1333  //}
1334  }
1335  } // loop over rec ele to look for the best one
1336 
1337  // analysis when the matching object is matched by a rec electron
1338  if (okGsfFound){
1339 
1340  // electron related distributions
1341  h_ele_charge -> Fill( bestGsfElectron.charge() );
1342  h_ele_chargeVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.charge() );
1343  h_ele_chargeVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.charge() );
1344  h_ele_chargeVsPt -> Fill( bestGsfElectron.pt(),bestGsfElectron.charge() );
1345  h_ele_vertexP -> Fill( bestGsfElectron.p() );
1346  h_ele_vertexPt -> Fill( bestGsfElectron.pt() );
1347  h_ele_vertexPtVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.pt() );
1348  h_ele_vertexPtVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.pt() );
1349  h_ele_vertexEta -> Fill( bestGsfElectron.eta() );
1350  // generated distributions for matched electrons
1351  h_ele_matchingObjectPt_matched -> Fill( moIter->energy()/cosh(moIter->eta()) );
1352  h_ele_matchingObjectPhi_matched -> Fill( moIter->phi() );
1353  h_ele_matchingObjectAbsEta_matched -> Fill( std::abs(moIter->eta()) );
1354  h_ele_matchingObjectEta_matched -> Fill( moIter->eta() );
1355  h_ele_vertexEtaVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.eta() );
1356  h_ele_vertexPhi -> Fill( bestGsfElectron.phi() );
1357  h_ele_vertexX -> Fill( bestGsfElectron.vertex().x() );
1358  h_ele_vertexY -> Fill( bestGsfElectron.vertex().y() );
1359  h_ele_vertexZ -> Fill( bestGsfElectron.vertex().z() );
1360  h_ele_matchingObjectZ_matched -> Fill( moIter->vz() );
1361  double d = (bestGsfElectron.vertex().x()-bs.position().x())
1362  *(bestGsfElectron.vertex().x()-bs.position().x())+
1363  (bestGsfElectron.vertex().y()-bs.position().y())
1364  *(bestGsfElectron.vertex().y()-bs.position().y());
1365  d = sqrt(d);
1366  h_ele_vertexTIP -> Fill( d );
1367  h_ele_vertexTIPVsEta -> Fill( bestGsfElectron.eta(), d );
1368  h_ele_vertexTIPVsPhi -> Fill( bestGsfElectron.phi(), d );
1369  h_ele_vertexTIPVsPt -> Fill( bestGsfElectron.pt(), d );
1370  h_ele_EtaMnEtamatchingObject -> Fill( bestGsfElectron.eta()-moIter->eta());
1371  h_ele_EtaMnEtamatchingObjectVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eta()-moIter->eta());
1372  h_ele_EtaMnEtamatchingObjectVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eta()-moIter->eta());
1373  h_ele_EtaMnEtamatchingObjectVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.eta()-moIter->eta());
1374  h_ele_PhiMnPhimatchingObject -> Fill( bestGsfElectron.phi()-moIter->phi());
1375  h_ele_PhiMnPhimatchingObject2 -> Fill( bestGsfElectron.phi()-moIter->phi());
1376  h_ele_PhiMnPhimatchingObjectVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.phi()-moIter->phi());
1377  h_ele_PhiMnPhimatchingObjectVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.phi()-moIter->phi());
1378  h_ele_PhiMnPhimatchingObjectVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.phi()-moIter->phi());
1379  h_ele_PoPmatchingObject -> Fill( bestGsfElectron.p()/moIter->energy());
1380  h_ele_PoPmatchingObjectVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.p()/moIter->energy());
1381  h_ele_PoPmatchingObjectVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.p()/moIter->energy());
1382  h_ele_PoPmatchingObjectVsPt -> Fill( bestGsfElectron.py(), bestGsfElectron.p()/moIter->energy());
1383  if (bestGsfElectron.isEB()) h_ele_PoPmatchingObject_barrel -> Fill( bestGsfElectron.p()/moIter->energy());
1384  if (bestGsfElectron.isEE()) h_ele_PoPmatchingObject_endcaps -> Fill( bestGsfElectron.p()/moIter->energy());
1385 
1386  // supercluster related distributions
1387  reco::SuperClusterRef sclRef = bestGsfElectron.superCluster();
1388  if (!bestGsfElectron.ecalDrivenSeed()&&bestGsfElectron.trackerDrivenSeed()) sclRef = bestGsfElectron.parentSuperCluster();
1389  histSclEn_->Fill(sclRef->energy());
1390  double R=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y() +sclRef->z()*sclRef->z());
1391  double Rt=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y());
1392  histSclEt_->Fill(sclRef->energy()*(Rt/R));
1393  histSclEtVsEta_->Fill(sclRef->eta(),sclRef->energy()*(Rt/R));
1394  histSclEtVsPhi_->Fill(sclRef->phi(),sclRef->energy()*(Rt/R));
1395  if (bestGsfElectron.isEB()) histSclEoEmatchingObject_barrel->Fill(sclRef->energy()/moIter->energy());
1396  if (bestGsfElectron.isEE()) histSclEoEmatchingObject_endcaps->Fill(sclRef->energy()/moIter->energy());
1397  histSclEta_->Fill(sclRef->eta());
1398  histSclEtaVsPhi_->Fill(sclRef->phi(),sclRef->eta());
1399  histSclPhi_->Fill(sclRef->phi());
1400  histSclSigIEtaIEta_->Fill(bestGsfElectron.scSigmaIEtaIEta());
1401  if (bestGsfElectron.isEB()) histSclSigIEtaIEta_barrel_->Fill(bestGsfElectron.scSigmaIEtaIEta());
1402  if (bestGsfElectron.isEE()) histSclSigIEtaIEta_endcaps_->Fill(bestGsfElectron.scSigmaIEtaIEta());
1403  histSclE1x5_->Fill(bestGsfElectron.scE1x5());
1404  if (bestGsfElectron.isEB()) histSclE1x5_barrel_->Fill(bestGsfElectron.scE1x5());
1405  if (bestGsfElectron.isEE()) histSclE1x5_endcaps_->Fill(bestGsfElectron.scE1x5());
1406  histSclE2x5max_->Fill(bestGsfElectron.scE2x5Max());
1407  if (bestGsfElectron.isEB()) histSclE2x5max_barrel_->Fill(bestGsfElectron.scE2x5Max());
1408  if (bestGsfElectron.isEE()) histSclE2x5max_endcaps_->Fill(bestGsfElectron.scE2x5Max());
1409  histSclE5x5_->Fill(bestGsfElectron.scE5x5());
1410  if (bestGsfElectron.isEB()) histSclE5x5_barrel_->Fill(bestGsfElectron.scE5x5());
1411  if (bestGsfElectron.isEE()) histSclE5x5_endcaps_->Fill(bestGsfElectron.scE5x5());
1412 
1413  // track related distributions
1414  h_ele_ambiguousTracks -> Fill( bestGsfElectron.ambiguousGsfTracksSize() );
1415  h_ele_ambiguousTracksVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.ambiguousGsfTracksSize() );
1416  h_ele_ambiguousTracksVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.ambiguousGsfTracksSize() );
1417  h_ele_ambiguousTracksVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.ambiguousGsfTracksSize() );
1418  if (!readAOD_) { // track extra does not exist in AOD
1419  h_ele_foundHits -> Fill( bestGsfElectron.gsfTrack()->numberOfValidHits() );
1420  h_ele_foundHitsVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
1421  h_ele_foundHitsVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
1422  h_ele_foundHitsVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
1423  h_ele_lostHits -> Fill( bestGsfElectron.gsfTrack()->numberOfLostHits() );
1424  h_ele_lostHitsVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
1425  h_ele_lostHitsVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
1426  h_ele_lostHitsVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
1427  h_ele_chi2 -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2() );
1428  h_ele_chi2VsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->normalizedChi2() );
1429  h_ele_chi2VsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->normalizedChi2() );
1430  h_ele_chi2VsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->normalizedChi2() );
1431  }
1432  // from gsf track interface, hence using mean
1433  if (!readAOD_) { // track extra does not exist in AOD
1434  h_ele_PinMnPout -> Fill( bestGsfElectron.gsfTrack()->innerMomentum().R() - bestGsfElectron.gsfTrack()->outerMomentum().R() );
1435  h_ele_outerP -> Fill( bestGsfElectron.gsfTrack()->outerMomentum().R() );
1436  h_ele_outerPt -> Fill( bestGsfElectron.gsfTrack()->outerMomentum().Rho() );
1437  }
1438  // from electron interface, hence using mode
1439  h_ele_PinMnPout_mode -> Fill( bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1440  h_ele_PinMnPoutVsEta_mode -> Fill( bestGsfElectron.eta(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1441  h_ele_PinMnPoutVsPhi_mode -> Fill( bestGsfElectron.phi(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1442  h_ele_PinMnPoutVsPt_mode -> Fill( bestGsfElectron.pt(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1443  h_ele_PinMnPoutVsE_mode -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1444  if (!readAOD_) // track extra does not exist in AOD
1445  h_ele_PinMnPoutVsChi2_mode -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
1446  h_ele_outerP_mode -> Fill( bestGsfElectron.trackMomentumOut().R() );
1447  h_ele_outerPVsEta_mode -> Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().R() );
1448  h_ele_outerPt_mode -> Fill( bestGsfElectron.trackMomentumOut().Rho() );
1449  h_ele_outerPtVsEta_mode -> Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().Rho() );
1450  h_ele_outerPtVsPhi_mode -> Fill(bestGsfElectron.phi(), bestGsfElectron.trackMomentumOut().Rho() );
1451  h_ele_outerPtVsPt_mode -> Fill(bestGsfElectron.pt(), bestGsfElectron.trackMomentumOut().Rho() );
1452 
1453  if (!readAOD_) { // track extra does not exist in AOD
1454  edm::RefToBase<TrajectorySeed> seed = bestGsfElectron.gsfTrack()->extra()->seedRef();
1455  ElectronSeedRef elseed=seed.castTo<ElectronSeedRef>();
1456  h_ele_seed_dphi2_-> Fill(elseed->dPhi2());
1457  h_ele_seed_dphi2VsEta_-> Fill(bestGsfElectron.eta(), elseed->dPhi2());
1458  h_ele_seed_dphi2VsPt_-> Fill(bestGsfElectron.pt(), elseed->dPhi2()) ;
1459  h_ele_seed_drz2_-> Fill(elseed->dRz2());
1460  h_ele_seed_drz2VsEta_-> Fill(bestGsfElectron.eta(), elseed->dRz2());
1461  h_ele_seed_drz2VsPt_-> Fill(bestGsfElectron.pt(), elseed->dRz2());
1462  h_ele_seed_subdet2_-> Fill(elseed->subDet2());
1463  }
1464  // match distributions
1465  h_ele_EoP -> Fill( bestGsfElectron.eSuperClusterOverP() );
1466  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg -> Fill( bestGsfElectron.eSuperClusterOverP() );
1467  if (bestGsfElectron.isEB()) h_ele_EoP_barrel -> Fill( bestGsfElectron.eSuperClusterOverP() );
1468  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg_barrel -> Fill( bestGsfElectron.eSuperClusterOverP() );
1469  if (bestGsfElectron.isEE()) h_ele_EoP_endcaps -> Fill( bestGsfElectron.eSuperClusterOverP() );
1470  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg_endcaps -> Fill( bestGsfElectron.eSuperClusterOverP() );
1471  h_ele_EoPVsEta -> Fill(bestGsfElectron.eta(), bestGsfElectron.eSuperClusterOverP() );
1472  h_ele_EoPVsPhi -> Fill(bestGsfElectron.phi(), bestGsfElectron.eSuperClusterOverP() );
1473  h_ele_EoPVsE -> Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSuperClusterOverP() );
1474  h_ele_EseedOP -> Fill( bestGsfElectron.eSeedClusterOverP() );
1475  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg -> Fill( bestGsfElectron.eSeedClusterOverP() );
1476  if (bestGsfElectron.isEB()) h_ele_EseedOP_barrel -> Fill( bestGsfElectron.eSeedClusterOverP() );
1477  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg_barrel -> Fill( bestGsfElectron.eSeedClusterOverP() );
1478  if (bestGsfElectron.isEE()) h_ele_EseedOP_endcaps -> Fill( bestGsfElectron.eSeedClusterOverP() );
1479  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg_endcaps -> Fill( bestGsfElectron.eSeedClusterOverP() );
1480  h_ele_EseedOPVsEta -> Fill(bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverP() );
1481  h_ele_EseedOPVsPhi -> Fill(bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverP() );
1482  h_ele_EseedOPVsE -> Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverP() );
1483  h_ele_EoPout -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1484  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1485  if (bestGsfElectron.isEB()) h_ele_EoPout_barrel -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1486  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg_barrel -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1487  if (bestGsfElectron.isEE()) h_ele_EoPout_endcaps -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1488  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg_endcaps -> Fill( bestGsfElectron.eSeedClusterOverPout() );
1489  h_ele_EoPoutVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverPout() );
1490  h_ele_EoPoutVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverPout() );
1491  h_ele_EoPoutVsE -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverPout() );
1492  h_ele_EeleOPout -> Fill( bestGsfElectron.eEleClusterOverPout() );
1493  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg -> Fill( bestGsfElectron.eEleClusterOverPout() );
1494  if (bestGsfElectron.isEB()) h_ele_EeleOPout_barrel -> Fill( bestGsfElectron.eEleClusterOverPout() );
1495  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg_barrel -> Fill( bestGsfElectron.eEleClusterOverPout() );
1496  if (bestGsfElectron.isEE()) h_ele_EeleOPout_endcaps -> Fill( bestGsfElectron.eEleClusterOverPout() );
1497  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg_endcaps -> Fill( bestGsfElectron.eEleClusterOverPout() );
1498  h_ele_EeleOPoutVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eEleClusterOverPout() );
1499  h_ele_EeleOPoutVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eEleClusterOverPout() );
1500  h_ele_EeleOPoutVsE -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.eEleClusterOverPout() );
1502  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1503  if (bestGsfElectron.isEB()) h_ele_dEtaSc_propVtx_barrel -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1504  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg_barrel -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1505  if (bestGsfElectron.isEE())h_ele_dEtaSc_propVtx_endcaps -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1506  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg_endcaps -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1507  h_ele_dEtaScVsEta_propVtx -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1508  h_ele_dEtaScVsPhi_propVtx -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1509  h_ele_dEtaScVsPt_propVtx -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
1511  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1512  if (bestGsfElectron.isEB()) h_ele_dPhiSc_propVtx_barrel -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1513  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg_barrel -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1514  if (bestGsfElectron.isEE())h_ele_dPhiSc_propVtx_endcaps -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1515  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg_endcaps -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1516  h_ele_dPhiScVsEta_propVtx -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1517  h_ele_dPhiScVsPhi_propVtx -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1518  h_ele_dPhiScVsPt_propVtx -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
1520  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1521  if (bestGsfElectron.isEB()) h_ele_dEtaCl_propOut_barrel -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1522  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1523  if (bestGsfElectron.isEE()) h_ele_dEtaCl_propOut_endcaps -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1524  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1525  h_ele_dEtaClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1526  h_ele_dEtaClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1527  h_ele_dEtaClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
1529  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1530  if (bestGsfElectron.isEB()) h_ele_dPhiCl_propOut_barrel -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1531  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1532  if (bestGsfElectron.isEE()) h_ele_dPhiCl_propOut_endcaps -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1533  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1534  h_ele_dPhiClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1535  h_ele_dPhiClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1536  h_ele_dPhiClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
1538  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1539  if (bestGsfElectron.isEB()) h_ele_dEtaEleCl_propOut_barrel -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1540  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1541  if (bestGsfElectron.isEE()) h_ele_dEtaEleCl_propOut_endcaps -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1542  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1543  h_ele_dEtaEleClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1544  h_ele_dEtaEleClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1545  h_ele_dEtaEleClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
1547  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1548  if (bestGsfElectron.isEB()) h_ele_dPhiEleCl_propOut_barrel -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1549  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1550  if (bestGsfElectron.isEE()) h_ele_dPhiEleCl_propOut_endcaps -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1551  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1552  h_ele_dPhiEleClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1553  h_ele_dPhiEleClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1554  h_ele_dPhiEleClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
1555  h_ele_HoE -> Fill(bestGsfElectron.hadronicOverEm());
1556  if (bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg -> Fill(bestGsfElectron.hadronicOverEm());
1557  if (bestGsfElectron.isEB()) h_ele_HoE_barrel -> Fill(bestGsfElectron.hadronicOverEm());
1558  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg_barrel -> Fill(bestGsfElectron.hadronicOverEm());
1559  if (bestGsfElectron.isEE()) h_ele_HoE_endcaps -> Fill(bestGsfElectron.hadronicOverEm());
1560  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg_endcaps -> Fill(bestGsfElectron.hadronicOverEm());
1561  if (!bestGsfElectron.isEBEtaGap() && !bestGsfElectron.isEBPhiGap()&& !bestGsfElectron.isEBEEGap() &&
1562  !bestGsfElectron.isEERingGap() && !bestGsfElectron.isEEDeeGap()) h_ele_HoE_fiducial -> Fill(bestGsfElectron.hadronicOverEm());
1563  h_ele_HoEVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.hadronicOverEm());
1564  h_ele_HoEVsPhi -> Fill(bestGsfElectron.phi(),bestGsfElectron.hadronicOverEm());
1565  h_ele_HoEVsE -> Fill(bestGsfElectron.caloEnergy(),bestGsfElectron.hadronicOverEm());
1566 
1567  //classes
1568  int eleClass = bestGsfElectron.classification();
1569  if (bestGsfElectron.isEE()) eleClass+=10;
1570  h_ele_classes ->Fill(eleClass);
1571 
1572  h_ele_eta->Fill(std::abs(bestGsfElectron.eta()));
1573  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_eta_golden ->Fill(std::abs(bestGsfElectron.eta()));
1574  if (bestGsfElectron.classification() == GsfElectron::BIGBREM) h_ele_eta_bbrem ->Fill(std::abs(bestGsfElectron.eta()));
1575  //if (bestGsfElectron.classification() == GsfElectron::OLDNARROW) h_ele_eta_narrow ->Fill(std::abs(bestGsfElectron.eta()));
1576  if (bestGsfElectron.classification() == GsfElectron::SHOWERING) h_ele_eta_shower ->Fill(std::abs(bestGsfElectron.eta()));
1577 
1578  //fbrem
1579  double fbrem_mean=0.;
1580  if (!readAOD_) // track extra does not exist in AOD
1581  fbrem_mean = 1. - bestGsfElectron.gsfTrack()->outerMomentum().R()/bestGsfElectron.gsfTrack()->innerMomentum().R();
1582  double fbrem_mode = bestGsfElectron.fbrem();
1583  h_ele_fbrem->Fill(fbrem_mode);
1584  h_ele_fbremVsEta_mode->Fill(bestGsfElectron.eta(),fbrem_mode);
1585  if (!readAOD_) // track extra does not exist in AOD
1586  h_ele_fbremVsEta_mean->Fill(bestGsfElectron.eta(),fbrem_mean);
1587 
1588  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PinVsPoutGolden_mode -> Fill(bestGsfElectron.trackMomentumOut().R(), bestGsfElectron.trackMomentumAtVtx().R());
1589  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
1590  h_ele_PinVsPoutShowering_mode -> Fill(bestGsfElectron.trackMomentumOut().R(), bestGsfElectron.trackMomentumAtVtx().R());
1591  if (!readAOD_) // track extra does not exist in AOD
1592  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PinVsPoutGolden_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(), bestGsfElectron.gsfTrack()->innerMomentum().R());
1593  if (!readAOD_) // track extra does not exist in AOD
1594  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
1595  h_ele_PinVsPoutShowering_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(), bestGsfElectron.gsfTrack()->innerMomentum().R());
1596  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PtinVsPtoutGolden_mode -> Fill(bestGsfElectron.trackMomentumOut().Rho(), bestGsfElectron.trackMomentumAtVtx().Rho());
1597  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
1598  h_ele_PtinVsPtoutShowering_mode -> Fill(bestGsfElectron.trackMomentumOut().Rho(), bestGsfElectron.trackMomentumAtVtx().Rho());
1599  if (!readAOD_) // track extra does not exist in AOD
1600  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PtinVsPtoutGolden_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(), bestGsfElectron.gsfTrack()->innerMomentum().Rho());
1601  if (!readAOD_) // track extra does not exist in AOD
1602  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
1603  h_ele_PtinVsPtoutShowering_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(), bestGsfElectron.gsfTrack()->innerMomentum().Rho());
1604 
1605  h_ele_mva->Fill(bestGsfElectron.mva_e_pi());
1606  if (bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(1.);
1607  if (bestGsfElectron.trackerDrivenSeed()) h_ele_provenance->Fill(-1.);
1608  if (bestGsfElectron.trackerDrivenSeed()||bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(0.);
1609  if (bestGsfElectron.trackerDrivenSeed()&&!bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(-2.);
1610  if (!bestGsfElectron.trackerDrivenSeed()&&bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(2.);
1611 
1612  h_ele_tkSumPt_dr03->Fill(bestGsfElectron.dr03TkSumPt());
1613  h_ele_ecalRecHitSumEt_dr03->Fill(bestGsfElectron.dr03EcalRecHitSumEt());
1616  h_ele_tkSumPt_dr04->Fill(bestGsfElectron.dr04TkSumPt());
1617  h_ele_ecalRecHitSumEt_dr04->Fill(bestGsfElectron.dr04EcalRecHitSumEt());
1620 
1621  } // gsf electron found
1622 
1623 // } // matching object found
1624 
1625 // }
1626 
1627  } // loop overmatching object
1628 
1629  h_matchingObjectNum->Fill(matchingObjectNum);
1630 
1631 }
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
Definition: GsfElectron.h:186
double eta() const final
momentum pseudorapidity
bool isEBEtaGap() const
Definition: GsfElectron.h:361
virtual SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:190
float eSuperClusterOverP() const
Definition: GsfElectron.h:249
bool isEBEEGap() const
Definition: GsfElectron.h:359
float dr04HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:567
math::XYZVectorF trackMomentumAtVtx() const
Definition: GsfElectron.h:295
float dr04TkSumPt() const
Definition: GsfElectron.h:564
double pt() const final
transverse momentum
int charge() const final
electric charge
Definition: LeafCandidate.h:91
bool isEERingGap() const
Definition: GsfElectron.h:365
float dr03HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:556
float fbrem() const
Definition: GsfElectron.h:772
float scE2x5Max() const
Definition: GsfElectron.h:493
bool isEEDeeGap() const
Definition: GsfElectron.h:364
bool isEE() const
Definition: GsfElectron.h:357
bool isEB() const
Definition: GsfElectron.h:356
const Double_t pi
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
float dr04HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:568
float deltaEtaSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:253
int iEvent
Definition: GenABIO.cc:224
float hadronicOverEm() const
Definition: GsfElectron.h:495
float eSeedClusterOverP() const
Definition: GsfElectron.h:250
float dr04EcalRecHitSumEt() const
Definition: GsfElectron.h:566
float deltaPhiSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:257
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
T sqrt(T t)
Definition: SSEVec.h:18
math::XYZVectorF trackMomentumOut() const
Definition: GsfElectron.h:297
float deltaPhiSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:256
const Point & vertex() const override
vertex position (overwritten by PF...)
float dr03TkSumPt() const
Definition: GsfElectron.h:552
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
float dr03HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:555
float eEleClusterOverPout() const
Definition: GsfElectron.h:252
float eSeedClusterOverPout() const
Definition: GsfElectron.h:251
float scSigmaIEtaIEta() const
Definition: GsfElectron.h:491
float deltaPhiEleClusterTrackAtCalo() const
Definition: GsfElectron.h:258
double p() const final
magnitude of momentum vector
T const * product() const
Definition: Handle.h:74
float deltaEtaEleClusterTrackAtCalo() const
Definition: GsfElectron.h:255
Classification classification() const
Definition: GsfElectron.h:768
REF castTo() const
Definition: RefToBase.h:289
GsfTrackRefVector::size_type ambiguousGsfTracksSize() const
Definition: GsfElectron.h:722
double py() const final
y coordinate of momentum vector
float dr03EcalRecHitSumEt() const
Definition: GsfElectron.h:554
float mva_e_pi() const
Definition: GsfElectron.h:702
float deltaEtaSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:254
bool isEBPhiGap() const
Definition: GsfElectron.h:362
SuperClusterRef superCluster() const override
reference to a SuperCluster
Definition: GsfElectron.h:185
bool trackerDrivenSeed() const
Definition: GsfElectron.h:189
const Point & position() const
position
Definition: BeamSpot.h:62
float scE5x5() const
Definition: GsfElectron.h:494
float caloEnergy() const
Definition: GsfElectron.h:863
double phi() const final
momentum azimuthal angle
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
float scE1x5() const
Definition: GsfElectron.h:492
bool ecalDrivenSeed() const
Definition: GsfElectron.h:188
void GsfElectronMCFakeAnalyzer::beginJob ( void  )
overridevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 123 of file GsfElectronMCFakeAnalyzer.cc.

References gather_cfg::cout, detamatchmax, detamatchmin, detamax, detamin, dphimatchmax, dphimatchmin, dphimax, dphimin, eopmax, eopmaxsht, etamax, etamin, fhitsmax, h_ele_ambiguousTracks, h_ele_ambiguousTracksVsEta, h_ele_ambiguousTracksVsPhi, h_ele_ambiguousTracksVsPt, h_ele_charge, h_ele_chargeVsEta, h_ele_chargeVsPhi, h_ele_chargeVsPt, h_ele_chi2, h_ele_chi2VsEta, h_ele_chi2VsPhi, h_ele_chi2VsPt, h_ele_classes, h_ele_dEtaCl_propOut, h_ele_dEtaCl_propOut_all, h_ele_dEtaCl_propOut_barrel, h_ele_dEtaCl_propOut_eg, h_ele_dEtaCl_propOut_eg_barrel, h_ele_dEtaCl_propOut_eg_endcaps, h_ele_dEtaCl_propOut_endcaps, h_ele_dEtaClVsEta_propOut, h_ele_dEtaClVsPhi_propOut, h_ele_dEtaClVsPt_propOut, h_ele_dEtaEleCl_propOut, h_ele_dEtaEleCl_propOut_barrel, h_ele_dEtaEleCl_propOut_eg, h_ele_dEtaEleCl_propOut_eg_barrel, h_ele_dEtaEleCl_propOut_eg_endcaps, h_ele_dEtaEleCl_propOut_endcaps, h_ele_dEtaEleClVsEta_propOut, h_ele_dEtaEleClVsPhi_propOut, h_ele_dEtaEleClVsPt_propOut, h_ele_dEtaSc_propVtx, h_ele_dEtaSc_propVtx_all, h_ele_dEtaSc_propVtx_barrel, h_ele_dEtaSc_propVtx_eg, h_ele_dEtaSc_propVtx_eg_barrel, h_ele_dEtaSc_propVtx_eg_endcaps, h_ele_dEtaSc_propVtx_endcaps, h_ele_dEtaScVsEta_propVtx, h_ele_dEtaScVsPhi_propVtx, h_ele_dEtaScVsPt_propVtx, h_ele_dPhiCl_propOut, h_ele_dPhiCl_propOut_all, h_ele_dPhiCl_propOut_barrel, h_ele_dPhiCl_propOut_eg, h_ele_dPhiCl_propOut_eg_barrel, h_ele_dPhiCl_propOut_eg_endcaps, h_ele_dPhiCl_propOut_endcaps, h_ele_dPhiClVsEta_propOut, h_ele_dPhiClVsPhi_propOut, h_ele_dPhiClVsPt_propOut, h_ele_dPhiEleCl_propOut, h_ele_dPhiEleCl_propOut_barrel, h_ele_dPhiEleCl_propOut_eg, h_ele_dPhiEleCl_propOut_eg_barrel, h_ele_dPhiEleCl_propOut_eg_endcaps, h_ele_dPhiEleCl_propOut_endcaps, h_ele_dPhiEleClVsEta_propOut, h_ele_dPhiEleClVsPhi_propOut, h_ele_dPhiEleClVsPt_propOut, h_ele_dPhiSc_propVtx, h_ele_dPhiSc_propVtx_all, h_ele_dPhiSc_propVtx_barrel, h_ele_dPhiSc_propVtx_eg, h_ele_dPhiSc_propVtx_eg_barrel, h_ele_dPhiSc_propVtx_eg_endcaps, h_ele_dPhiSc_propVtx_endcaps, h_ele_dPhiScVsEta_propVtx, h_ele_dPhiScVsPhi_propVtx, h_ele_dPhiScVsPt_propVtx, h_ele_E2mnE1vsMee_all, h_ele_E2mnE1vsMee_egeg_all, h_ele_ecalRecHitSumEt_dr03, h_ele_ecalRecHitSumEt_dr04, h_ele_EeleOPout, h_ele_EeleOPout_all, h_ele_EeleOPout_barrel, h_ele_EeleOPout_eg, h_ele_EeleOPout_eg_barrel, h_ele_EeleOPout_eg_endcaps, h_ele_EeleOPout_endcaps, h_ele_EeleOPoutVsE, h_ele_EeleOPoutVsEta, h_ele_EeleOPoutVsPhi, h_ele_EoP, h_ele_EoP_barrel, h_ele_EoP_eg, h_ele_EoP_eg_barrel, h_ele_EoP_eg_endcaps, h_ele_EoP_endcaps, h_ele_EoPout, h_ele_EoPout_all, h_ele_EoPout_barrel, h_ele_EoPout_eg, h_ele_EoPout_eg_barrel, h_ele_EoPout_eg_endcaps, h_ele_EoPout_endcaps, h_ele_EoPoutVsE, h_ele_EoPoutVsEta, h_ele_EoPoutVsPhi, h_ele_EoPVsE, h_ele_EoPVsEta, h_ele_EoPVsPhi, h_ele_EoverP_all, h_ele_EseedOP, h_ele_EseedOP_all, h_ele_EseedOP_barrel, h_ele_EseedOP_eg, h_ele_EseedOP_eg_barrel, h_ele_EseedOP_eg_endcaps, h_ele_EseedOP_endcaps, h_ele_EseedOPVsE, h_ele_EseedOPVsEta, h_ele_EseedOPVsPhi, h_ele_eta, h_ele_eta_bbrem, h_ele_eta_golden, h_ele_eta_narrow, h_ele_eta_shower, h_ele_EtaMnEtamatchingObject, h_ele_EtaMnEtamatchingObjectVsEta, h_ele_EtaMnEtamatchingObjectVsPhi, h_ele_EtaMnEtamatchingObjectVsPt, h_ele_fbrem, h_ele_fbremVsEta_mean, h_ele_fbremVsEta_mode, h_ele_foundHits, h_ele_foundHitsVsEta, h_ele_foundHitsVsPhi, h_ele_foundHitsVsPt, h_ele_hcalDepth1TowerSumEt_dr03, h_ele_hcalDepth1TowerSumEt_dr04, h_ele_hcalDepth2TowerSumEt_dr03, h_ele_hcalDepth2TowerSumEt_dr04, h_ele_HoE, h_ele_HoE_all, h_ele_HoE_barrel, h_ele_HoE_eg, h_ele_HoE_eg_barrel, h_ele_HoE_eg_endcaps, h_ele_HoE_endcaps, h_ele_HoE_fiducial, h_ele_HoEVsE, h_ele_HoEVsEta, h_ele_HoEVsPhi, h_ele_lostHits, h_ele_lostHitsVsEta, h_ele_lostHitsVsPhi, h_ele_lostHitsVsPt, h_ele_matchingObjectAbsEta_matched, h_ele_matchingObjectEta_matched, h_ele_matchingObjectPhi_matched, h_ele_matchingObjectPt_matched, h_ele_matchingObjectZ_matched, h_ele_mee_all, h_ele_mee_os, h_ele_mva, h_ele_outerP, h_ele_outerP_mode, h_ele_outerPt, h_ele_outerPt_mode, h_ele_outerPtVsEta_mode, h_ele_outerPtVsPhi_mode, h_ele_outerPtVsPt_mode, h_ele_outerPVsEta_mode, h_ele_PhiMnPhimatchingObject, h_ele_PhiMnPhimatchingObject2, h_ele_PhiMnPhimatchingObjectVsEta, h_ele_PhiMnPhimatchingObjectVsPhi, h_ele_PhiMnPhimatchingObjectVsPt, h_ele_PinMnPout, h_ele_PinMnPout_mode, h_ele_PinMnPoutVsChi2_mode, h_ele_PinMnPoutVsE_mode, h_ele_PinMnPoutVsEta_mode, h_ele_PinMnPoutVsPhi_mode, h_ele_PinMnPoutVsPt_mode, h_ele_PinVsPoutGolden_mean, h_ele_PinVsPoutGolden_mode, h_ele_PinVsPoutShowering_mean, h_ele_PinVsPoutShowering_mode, h_ele_PoPmatchingObject, h_ele_PoPmatchingObject_barrel, h_ele_PoPmatchingObject_endcaps, h_ele_PoPmatchingObjectVsEta, h_ele_PoPmatchingObjectVsPhi, h_ele_PoPmatchingObjectVsPt, h_ele_provenance, h_ele_PtinVsPtoutGolden_mean, h_ele_PtinVsPtoutGolden_mode, h_ele_PtinVsPtoutShowering_mean, h_ele_PtinVsPtoutShowering_mode, h_ele_seed_dphi2_, h_ele_seed_dphi2VsEta_, h_ele_seed_dphi2VsPt_, h_ele_seed_drz2_, h_ele_seed_drz2VsEta_, h_ele_seed_drz2VsPt_, h_ele_seed_subdet2_, h_ele_TIP_all, h_ele_tkSumPt_dr03, h_ele_tkSumPt_dr04, h_ele_vertexEta, h_ele_vertexEta_all, h_ele_vertexEtaVsPhi, h_ele_vertexP, h_ele_vertexPhi, h_ele_vertexPt, h_ele_vertexPt_all, h_ele_vertexPtVsEta, h_ele_vertexPtVsPhi, h_ele_vertexTIP, h_ele_vertexTIPVsEta, h_ele_vertexTIPVsPhi, h_ele_vertexTIPVsPt, h_ele_vertexX, h_ele_vertexY, h_ele_vertexZ, h_matchingObjectAbsEta, h_matchingObjectEta, h_matchingObjectNum, h_matchingObjectP, h_matchingObjectPhi, h_matchingObjectPt, h_matchingObjectZ, histfile_, histNum_, histSclE1x5_, histSclE1x5_barrel_, histSclE1x5_endcaps_, histSclE2x5max_, histSclE2x5max_barrel_, histSclE2x5max_endcaps_, histSclE5x5_, histSclE5x5_barrel_, histSclE5x5_endcaps_, histSclEn_, histSclEoEmatchingObject_barrel, histSclEoEmatchingObject_endcaps, histSclEoEmatchingObjectGolden_barrel, histSclEoEmatchingObjectGolden_endcaps, histSclEoEmatchingObjectShowering_barrel, histSclEoEmatchingObjectShowering_endcaps, histSclEt_, histSclEta_, histSclEtaVsPhi_, histSclEtVsEta_, histSclEtVsPhi_, histSclPhi_, histSclSigIEtaIEta_, histSclSigIEtaIEta_barrel_, histSclSigIEtaIEta_endcaps_, hoemax, hoemin, edm::InputTag::label(), lhitsmax, matchingObjectCollection_, meemax, meemin, nbindeta, nbindetamatch, nbindetamatch2D, nbindphi, nbindphimatch, nbindphimatch2D, nbineop, nbineop2D, nbineta, nbineta2D, nbinfhits, nbinhoe, nbinlhits, nbinmee, nbinp, nbinp2D, nbinphi, nbinphi2D, nbinpt, nbinpt2D, nbinpteff, nbinxyz, phimax, phimin, pmax, ptmax, and AlCaHLTBitMon_QueryRunRegistry::string.

123  {
124 
125  histfile_->cd();
126 
127 
128  // matching object
129  std::string::size_type locJet = matchingObjectCollection_.label().find("ak4GenJets",0) ;
130  std::string type_;
131  if ( locJet != std::string::npos ) {
132  std::cout << "Matching objects are GenJets " << std::endl;
133  type_ = "GenJet";
134  } else {
135  std::cout << "Didn't recognize input matching objects!! " << std::endl;
136  }
137 
138  std::string htitle, hlabel;
139  hlabel="h_"+type_+"Num"; htitle="# "+type_+"s";
140  h_matchingObjectNum = new TH1F( hlabel.c_str(), htitle.c_str(), nbinfhits,0.,fhitsmax );
141 
142  // rec event
143  histNum_= new TH1F("h_recEleNum","# rec electrons",20, 0.,20.);
144 
145  // matching object distributions
146  hlabel="h_matchingObject_eta"; htitle=type_+" #eta";
147  h_matchingObjectEta = new TH1F( hlabel.c_str(), htitle.c_str(), nbineta,etamin,etamax);
148  hlabel="h_matchingObject_abseta"; htitle=type_+" |#eta|";
149  h_matchingObjectAbsEta = new TH1F( hlabel.c_str(), htitle.c_str(), nbineta/2,0.,etamax);
150  hlabel="h_matchingObject_P"; htitle=type_+" p";
151  h_matchingObjectP = new TH1F( hlabel.c_str(), htitle.c_str(), nbinp,0.,pmax);
152  hlabel="h_matchingObject_Pt"; htitle=type_+" pt";
153  h_matchingObjectPt = new TH1F( hlabel.c_str(),htitle.c_str(), nbinpteff,5.,ptmax);
154  hlabel="h_matchingObject_phi"; htitle=type_+" phi";
155  h_matchingObjectPhi = new TH1F( hlabel.c_str(), htitle.c_str(), nbinphi,phimin,phimax);
156  hlabel="h_matchingObject_z"; htitle=type_+" z";
157  h_matchingObjectZ = new TH1F( hlabel.c_str(), htitle.c_str(), nbinxyz, -25, 25 );
158 
159  // all electrons
160  h_ele_EoverP_all = new TH1F( "h_ele_EoverP_all", "ele E/P_{vertex}, all reco electrons", nbineop,0.,eopmax);
161  h_ele_EseedOP_all = new TH1F( "h_ele_EseedOP_all", "ele E_{seed}/P_{vertex}, all reco electrons", nbineop,0.,eopmax);
162  h_ele_EoPout_all = new TH1F( "h_ele_EoPout_all", "ele E_{seed}/P_{out}, all reco electrons", nbineop,0.,eopmax);
163  h_ele_EeleOPout_all = new TH1F( "h_ele_EeleOPout_all", "ele E_{ele}/P_{out}, all reco electrons", nbineop,0.,eopmax);
164  h_ele_dEtaSc_propVtx_all = new TH1F( "h_ele_dEtaSc_propVtx_all", "ele #eta_{sc} - #eta_{tr}, prop from vertex, all reco electrons", nbindetamatch,detamatchmin,detamatchmax);
165  h_ele_dPhiSc_propVtx_all = new TH1F( "h_ele_dPhiSc_propVtx_all", "ele #phi_{sc} - #phi_{tr}, prop from vertex, all reco electrons", nbindphimatch,dphimatchmin,dphimatchmax);
166  h_ele_dEtaCl_propOut_all = new TH1F( "h_ele_dEtaCl_propOut_all", "ele #eta_{cl} - #eta_{tr}, prop from outermost, all reco electrons", nbindetamatch,detamatchmin,detamatchmax);
167  h_ele_dPhiCl_propOut_all = new TH1F( "h_ele_dPhiCl_propOut_all", "ele #phi_{cl} - #phi_{tr}, prop from outermost, all reco electrons", nbindphimatch,dphimatchmin,dphimatchmax);
168  h_ele_TIP_all = new TH1F( "h_ele_TIP_all", "ele vertex transverse radius, all reco electrons", 100,0.,0.2);
169  h_ele_HoE_all = new TH1F("h_ele_HoE_all", "ele hadronic energy / em energy, all reco electrons", nbinhoe, hoemin, hoemax) ;
170  h_ele_vertexEta_all = new TH1F( "h_ele_vertexEta_all", "ele eta, all reco electrons", nbineta,etamin,etamax);
171  h_ele_vertexEta_all->Sumw2();
172  h_ele_vertexPt_all = new TH1F( "h_ele_vertexPt_all", "ele p_{T}, all reco electrons", nbinpteff,5.,ptmax);
173  h_ele_vertexPt_all->Sumw2();
174  h_ele_mee_all = new TH1F( "h_ele_mee_all", "ele pairs invariant mass, all reco electrons", nbinmee, meemin, meemax );
175  h_ele_mee_os = new TH1F( "h_ele_mee_os", "ele pairs invariant mass, opp. sign", nbinmee, meemin, meemax );
176 
177  // duplicates
178  h_ele_E2mnE1vsMee_all = new TH2F("h_ele_E2mnE1vsMee_all", "E2 - E1 vs ele pairs invariant mass, all electrons", nbinmee, meemin, meemax, 100, -50., 50. );
179  h_ele_E2mnE1vsMee_egeg_all = new TH2F("h_ele_E2mnE1vsMee_egeg_all", "E2 - E1 vs ele pairs invariant mass, ecal driven pairs, all electrons", nbinmee, meemin, meemax, 100, -50., 50. );
180 
181  // matched electrons
182 
183  h_ele_matchingObjectPt_matched = new TH1F( "h_ele_matchingObjectPt_matched", "Efficiency vs matching jet p_{T}", nbinpteff,5.,ptmax);
185  h_ele_matchingObjectAbsEta_matched = new TH1F( "h_ele_matchingObjectAbsEta_matched", "Efficiency vs matching jet |#eta|", nbineta/2,0.,2.5);
187  h_ele_matchingObjectEta_matched = new TH1F( "h_ele_matchingObjectEta_matched", "Efficiency vs matching jet #eta", nbineta,etamin,etamax);
189  h_ele_matchingObjectPhi_matched = new TH1F( "h_ele_matchingObjectPhi_matched", "Efficiency vs matching jet phi", nbinphi,phimin,phimax);
191  h_ele_matchingObjectZ_matched = new TH1F( "h_ele_matchingObjectZ_matched", "Efficiency vs matching jet z", nbinxyz,-25,25);
193 
194  h_ele_charge = new TH1F( "h_ele_charge", "ele charge", 5,-2.,2.);
195  h_ele_chargeVsEta = new TH2F( "h_ele_chargeVsEta", "ele charge vs eta", nbineta2D,etamin,etamax,5,-2.,2.);
196  h_ele_chargeVsPhi = new TH2F( "h_ele_chargeVsPhi", "ele charge vs phi", nbinphi2D,phimin,phimax,5,-2.,2.);
197  h_ele_chargeVsPt = new TH2F( "h_ele_chargeVsPt", "ele charge vs pt", nbinpt,0.,100.,5,-2.,2.);
198  h_ele_vertexP = new TH1F( "h_ele_vertexP", "ele momentum", nbinp,0.,pmax);
199  h_ele_vertexPt = new TH1F( "h_ele_vertexPt", "ele transverse momentum", nbinpt,0.,ptmax);
200  h_ele_vertexPtVsEta = new TH2F( "h_ele_vertexPtVsEta", "ele transverse momentum vs eta",nbineta2D,etamin,etamax,nbinpt2D,0.,ptmax);
201  h_ele_vertexPtVsPhi = new TH2F( "h_ele_vertexPtVsPhi", "ele transverse momentum vs phi",nbinphi2D,phimin,phimax,nbinpt2D,0.,ptmax);
202  h_ele_vertexEta = new TH1F( "h_ele_vertexEta", "ele momentum eta", nbineta,etamin,etamax);
203  h_ele_vertexEtaVsPhi = new TH2F( "h_ele_vertexEtaVsPhi", "ele momentum eta vs phi",nbineta2D,etamin,etamax,nbinphi2D,phimin,phimax );
204  h_ele_vertexPhi = new TH1F( "h_ele_vertexPhi", "ele momentum #phi", nbinphi,phimin,phimax);
205  h_ele_vertexX = new TH1F( "h_ele_vertexX", "ele vertex x", nbinxyz,-0.1,0.1 );
206  h_ele_vertexY = new TH1F( "h_ele_vertexY", "ele vertex y", nbinxyz,-0.1,0.1 );
207  h_ele_vertexZ = new TH1F( "h_ele_vertexZ", "ele vertex z", nbinxyz,-25, 25 );
208  h_ele_vertexTIP = new TH1F( "h_ele_vertexTIP", "ele transverse impact parameter (wrt bs)", 90,0.,0.15);
209  h_ele_vertexTIPVsEta = new TH2F( "h_ele_vertexTIPVsEta", "ele transverse impact parameter (wrt bs) vs eta", nbineta2D,etamin,etamax,45,0.,0.15);
210  h_ele_vertexTIPVsPhi = new TH2F( "h_ele_vertexTIPVsPhi", "ele transverse impact parameter (wrt bs) vs phi", nbinphi2D,phimin,phimax,45,0.,0.15);
211  h_ele_vertexTIPVsPt = new TH2F( "h_ele_vertexTIPVsPt", "ele transverse impact parameter (wrt bs) vs Pt", nbinpt2D,0.,ptmax,45,0.,0.15);
212 
213  h_ele_PoPmatchingObject = new TH1F( "h_ele_PoPmatchingObject", "ele momentum / matching jet momentum", 75,0.,1.5);
214  h_ele_PoPmatchingObjectVsEta = new TH2F( "h_ele_PoPmatchingObjectVsEta", "ele momentum / matching jet momentum vs eta", nbineta2D,etamin,etamax,50,0.,1.5);
215  h_ele_PoPmatchingObjectVsPhi = new TH2F( "h_ele_PoPmatchingObjectVsPhi", "ele momentum / matching jet momentum vs phi", nbinphi2D,phimin,phimax,50,0.,1.5);
216  h_ele_PoPmatchingObjectVsPt = new TH2F( "h_ele_PoPmatchingObjectVsPt", "ele momentum / matching jet momentum vs eta", nbinpt2D,0.,ptmax,50,0.,1.5);
217  h_ele_PoPmatchingObject_barrel = new TH1F( "h_ele_PoPmatchingObject_barrel", "ele momentum / matching jet momentum, barrel",75,0.,1.5);
218  h_ele_PoPmatchingObject_endcaps = new TH1F( "h_ele_PoPmatchingObject_endcaps", "ele momentum / matching jet momentum, endcaps",75,0.,1.5);
219 
220  h_ele_EtaMnEtamatchingObject = new TH1F( "h_ele_EtaMnEtamatchingObject", "ele momentum eta - matching jet eta",nbindeta,detamin,detamax);
221  h_ele_EtaMnEtamatchingObjectVsEta = new TH2F( "h_ele_EtaMnEtamatchingObjectVsEta", "ele momentum eta - matching jet eta vs eta",nbineta2D,etamin,etamax,nbindeta/2,detamin,detamax);
222  h_ele_EtaMnEtamatchingObjectVsPhi = new TH2F( "h_ele_EtaMnEtamatchingObjectVsPhi", "ele momentum eta - matching jet eta vs phi",nbinphi2D,phimin,phimax,nbindeta/2,detamin,detamax);
223  h_ele_EtaMnEtamatchingObjectVsPt = new TH2F( "h_ele_EtaMnEtamatchingObjectVsPt", "ele momentum eta - matching jet eta vs pt",nbinpt,0.,ptmax,nbindeta/2,detamin,detamax);
224  h_ele_PhiMnPhimatchingObject = new TH1F( "h_ele_PhiMnPhimatchingObject", "ele momentum phi - matching jet phi",nbindphi,dphimin,dphimax);
225  h_ele_PhiMnPhimatchingObject2 = new TH1F( "h_ele_PhiMnPhimatchingObject2", "ele momentum phi - matching jet phi",nbindphimatch2D,dphimatchmin,dphimatchmax);
226  h_ele_PhiMnPhimatchingObjectVsEta = new TH2F( "h_ele_PhiMnPhimatchingObjectVsEta", "ele momentum phi - matching SC phi vs eta",nbineta2D,etamin,etamax,nbindphi/2,dphimin,dphimax);
227  h_ele_PhiMnPhimatchingObjectVsPhi = new TH2F( "h_ele_PhiMnPhimatchingObjectVsPhi", "ele momentum phi - matching SC phi vs phi",nbinphi2D,phimin,phimax,nbindphi/2,dphimin,dphimax);
228  h_ele_PhiMnPhimatchingObjectVsPt = new TH2F( "h_ele_PhiMnPhimatchingObjectVsPt", "ele momentum phi - matching SC phi vs pt",nbinpt2D,0.,ptmax,nbindphi/2,dphimin,dphimax);
229 
230  // matched electron, superclusters
231  histSclEn_ = new TH1F("h_scl_energy","ele supercluster energy",nbinp,0.,pmax);
232  histSclEoEmatchingObject_barrel = new TH1F("h_scl_EoEmatchingObject_barrel","ele supercluster energy / matching jet energy, barrel",50,0.2,1.2);
233  histSclEoEmatchingObject_endcaps = new TH1F("h_scl_EoEmatchingObject_endcaps","ele supercluster energy / matching jet energy, endcaps",50,0.2,1.2);
234  histSclEt_ = new TH1F("h_scl_et","ele supercluster transverse energy",nbinpt,0.,ptmax);
235  histSclEtVsEta_ = new TH2F("h_scl_etVsEta","ele supercluster transverse energy vs eta",nbineta2D,etamin,etamax,nbinpt,0.,ptmax);
236  histSclEtVsPhi_ = new TH2F("h_scl_etVsPhi","ele supercluster transverse energy vs phi",nbinphi2D,phimin,phimax,nbinpt,0.,ptmax);
237  histSclEtaVsPhi_ = new TH2F("h_scl_etaVsPhi","ele supercluster eta vs phi",nbinphi2D,phimin,phimax,nbineta2D,etamin,etamax);
238  histSclEta_ = new TH1F("h_scl_eta","ele supercluster eta",nbineta,etamin,etamax);
239  histSclPhi_ = new TH1F("h_scl_phi","ele supercluster phi",nbinphi,phimin,phimax);
240 
241  histSclSigIEtaIEta_ = new TH1F("h_scl_sigietaieta","ele supercluster sigma ieta ieta",100,0.,0.05);
242  histSclSigIEtaIEta_barrel_ = new TH1F("h_scl_sigietaieta_barrel","ele supercluster sigma ieta ieta, barrel",100,0.,0.05);
243  histSclSigIEtaIEta_endcaps_ = new TH1F("h_scl_sigietaieta_endcaps","ele supercluster sigma ieta ieta, endcaps",100,0.,0.05);
244  histSclE1x5_ = new TH1F("h_scl_E1x5","ele supercluster energy in 1x5",nbinp,0.,pmax);
245  histSclE1x5_barrel_ = new TH1F("h_scl_E1x5_barrel","ele supercluster energy in 1x5 barrel",nbinp,0.,pmax);
246  histSclE1x5_endcaps_ = new TH1F("h_scl_E1x5_endcaps","ele supercluster energy in 1x5 endcaps",nbinp,0.,pmax);
247  histSclE2x5max_ = new TH1F("h_scl_E2x5max","ele supercluster energy in 2x5 max",nbinp,0.,pmax);
248  histSclE2x5max_barrel_ = new TH1F("h_scl_E2x5max_barrel","ele supercluster energy in 2x5 max barrel",nbinp,0.,pmax);
249  histSclE2x5max_endcaps_ = new TH1F("h_scl_E2x5max_endcaps","ele supercluster energy in 2x5 max endcaps",nbinp,0.,pmax);
250  histSclE5x5_ = new TH1F("h_scl_E5x5","ele supercluster energy in 5x5",nbinp,0.,pmax);
251  histSclE5x5_barrel_ = new TH1F("h_scl_E5x5_barrel","ele supercluster energy in 5x5 barrel",nbinp,0.,pmax);
252  histSclE5x5_endcaps_ = new TH1F("h_scl_E5x5_endcaps","ele supercluster energy in 5x5 endcaps",nbinp,0.,pmax);
253 
254  // matched electron, gsf tracks
255  h_ele_ambiguousTracks = new TH1F( "h_ele_ambiguousTracks", "ele # ambiguous tracks", 5,0.,5.);
256  h_ele_ambiguousTracksVsEta = new TH2F( "h_ele_ambiguousTracksVsEta","ele # ambiguous tracks vs eta", nbineta2D,etamin,etamax,5,0.,5.);
257  h_ele_ambiguousTracksVsPhi = new TH2F( "h_ele_ambiguousTracksVsPhi", "ele # ambiguous tracks vs phi", nbinphi2D,phimin,phimax,5,0.,5.);
258  h_ele_ambiguousTracksVsPt = new TH2F( "h_ele_ambiguousTracksVsPt", "ele # ambiguous tracks vs pt", nbinpt2D,0.,ptmax,5,0.,5.);
259  h_ele_foundHits = new TH1F( "h_ele_foundHits", "ele track # found hits", nbinfhits,0.,fhitsmax);
260  h_ele_foundHitsVsEta = new TH2F( "h_ele_foundHitsVsEta", "ele track # found hits vs eta", nbineta2D,etamin,etamax,nbinfhits,0.,fhitsmax);
261  h_ele_foundHitsVsPhi = new TH2F( "h_ele_foundHitsVsPhi", "ele track # found hits vs phi", nbinphi2D,phimin,phimax,nbinfhits,0.,fhitsmax);
262  h_ele_foundHitsVsPt = new TH2F( "h_ele_foundHitsVsPt", "ele track # found hits vs pt", nbinpt2D,0.,ptmax,nbinfhits,0.,fhitsmax);
263  h_ele_lostHits = new TH1F( "h_ele_lostHits", "ele track # lost hits", 5,0.,5.);
264  h_ele_lostHitsVsEta = new TH2F( "h_ele_lostHitsVsEta", "ele track # lost hits vs eta", nbineta2D,etamin,etamax,nbinlhits,0.,lhitsmax);
265  h_ele_lostHitsVsPhi = new TH2F( "h_ele_lostHitsVsPhi", "ele track # lost hits vs eta", nbinphi2D,phimin,phimax,nbinlhits,0.,lhitsmax);
266  h_ele_lostHitsVsPt = new TH2F( "h_ele_lostHitsVsPt", "ele track # lost hits vs eta", nbinpt2D,0.,ptmax,nbinlhits,0.,lhitsmax);
267  h_ele_chi2 = new TH1F( "h_ele_chi2", "ele track #chi^{2}", 100,0.,15.);
268  h_ele_chi2VsEta = new TH2F( "h_ele_chi2VsEta", "ele track #chi^{2} vs eta", nbineta2D,etamin,etamax,50,0.,15.);
269  h_ele_chi2VsPhi = new TH2F( "h_ele_chi2VsPhi", "ele track #chi^{2} vs phi", nbinphi2D,phimin,phimax,50,0.,15.);
270  h_ele_chi2VsPt = new TH2F( "h_ele_chi2VsPt", "ele track #chi^{2} vs pt", nbinpt2D,0.,ptmax,50,0.,15.);
271  h_ele_PinMnPout = new TH1F( "h_ele_PinMnPout", "ele track inner p - outer p, mean" ,nbinp,0.,200.);
272  h_ele_PinMnPout_mode = new TH1F( "h_ele_PinMnPout_mode", "ele track inner p - outer p, mode" ,nbinp,0.,100.);
273  h_ele_PinMnPoutVsEta_mode = new TH2F( "h_ele_PinMnPoutVsEta_mode", "ele track inner p - outer p vs eta, mode" ,nbineta2D, etamin,etamax,nbinp2D,0.,100.);
274  h_ele_PinMnPoutVsPhi_mode = new TH2F( "h_ele_PinMnPoutVsPhi_mode", "ele track inner p - outer p vs phi, mode" ,nbinphi2D, phimin,phimax,nbinp2D,0.,100.);
275  h_ele_PinMnPoutVsPt_mode = new TH2F( "h_ele_PinMnPoutVsPt_mode", "ele track inner p - outer p vs pt, mode" ,nbinpt2D, 0.,ptmax,nbinp2D,0.,100.);
276  h_ele_PinMnPoutVsE_mode = new TH2F( "h_ele_PinMnPoutVsE_mode", "ele track inner p - outer p vs E, mode" ,nbinp2D, 0.,200.,nbinp2D,0.,100.);
277  h_ele_PinMnPoutVsChi2_mode = new TH2F( "h_ele_PinMnPoutVsChi2_mode", "ele track inner p - outer p vs track chi2, mode" ,50, 0.,20.,nbinp2D,0.,100.);
278  h_ele_outerP = new TH1F( "h_ele_outerP", "ele track outer p, mean", nbinp,0.,pmax);
279  h_ele_outerP_mode = new TH1F( "h_ele_outerP_mode", "ele track outer p, mode", nbinp,0.,pmax);
280  h_ele_outerPVsEta_mode = new TH2F( "h_ele_outerPVsEta_mode", "ele track outer p vs eta mode", nbineta2D,etamin,etamax,50,0.,pmax);
281  h_ele_outerPt = new TH1F( "h_ele_outerPt", "ele track outer p_{T}, mean", nbinpt,0.,ptmax);
282  h_ele_outerPt_mode = new TH1F( "h_ele_outerPt_mode", "ele track outer p_{T}, mode", nbinpt,0.,ptmax);
283  h_ele_outerPtVsEta_mode = new TH2F( "h_ele_outerPtVsEta_mode", "ele track outer p_{T} vs eta, mode", nbineta2D,etamin,etamax,nbinpt2D,0.,ptmax);
284  h_ele_outerPtVsPhi_mode = new TH2F( "h_ele_outerPtVsPhi_mode", "ele track outer p_{T} vs phi, mode", nbinphi2D,phimin,phimax,nbinpt2D,0.,ptmax);
285  h_ele_outerPtVsPt_mode = new TH2F( "h_ele_outerPtVsPt_mode", "ele track outer p_{T} vs pt, mode", nbinpt2D,0.,100.,nbinpt2D,0.,ptmax);
286 
287  // matched electrons,cluster-track matching
288  h_ele_EoP = new TH1F( "h_ele_EoP", "ele E/P_{vertex}", nbineop,0.,eopmax); h_ele_EoP->Sumw2();
289  h_ele_EoP_eg = new TH1F( "h_ele_EoP_eg", "ele E/P_{vertex}, ecal driven", nbineop,0.,eopmax);
290  h_ele_EoP_eg->Sumw2();
291  h_ele_EoP_barrel = new TH1F( "h_ele_EoP_barrel", "ele E/P_{vertex} barrel", nbineop,0.,eopmax);
292  h_ele_EoP_barrel->Sumw2();
293  h_ele_EoP_eg_barrel = new TH1F( "h_ele_EoP_eg_barrel", "ele E/P_{vertex}, ecal driven barrel", nbineop,0.,eopmax);
294  h_ele_EoP_eg_barrel->Sumw2();
295  h_ele_EoP_endcaps = new TH1F( "h_ele_EoP_endcaps", "ele E/P_{vertex} endcaps", nbineop,0.,eopmax);
296  h_ele_EoP_endcaps->Sumw2();
297  h_ele_EoP_eg_endcaps = new TH1F( "h_ele_EoP_eg_endcaps", "ele E/P_{vertex}, ecal driven endcaps", nbineop,0.,eopmax);
298  h_ele_EoP_eg_endcaps->Sumw2();
299  h_ele_EoPVsEta = new TH2F( "h_ele_EoPVsEta", "ele E/P_{vertex} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
300  h_ele_EoPVsPhi = new TH2F( "h_ele_EoPVsPhi", "ele E/P_{vertex} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
301  h_ele_EoPVsE = new TH2F( "h_ele_EoPVsE", "ele E/P_{vertex} vs E", 50,0.,pmax ,50,0.,5.);
302  h_ele_EseedOP = new TH1F( "h_ele_EseedOP", "ele E_{seed}/P_{vertex}", nbineop,0.,eopmax);
303  h_ele_EseedOP->Sumw2();
304  h_ele_EseedOP_eg = new TH1F( "h_ele_EseedOP_eg", "ele E_{seed}/P_{vertex}, ecal driven", nbineop,0.,eopmax);
305  h_ele_EseedOP_eg->Sumw2();
306  h_ele_EseedOP_barrel = new TH1F( "h_ele_EseedOP_barrel", "ele E_{seed}/P_{vertex} barrel", nbineop,0.,eopmax);
307  h_ele_EseedOP_barrel->Sumw2();
308  h_ele_EseedOP_eg_barrel = new TH1F( "h_ele_EseedOP_eg_barrel", "ele E_{seed}/P_{vertex}, ecal driven barrel", nbineop,0.,eopmax);
309  h_ele_EseedOP_eg_barrel->Sumw2();
310  h_ele_EseedOP_endcaps = new TH1F( "h_ele_EseedOP_endcaps", "ele E_{seed}/P_{vertex} endcaps", nbineop,0.,eopmax);
311  h_ele_EseedOP_endcaps->Sumw2();
312  h_ele_EseedOP_eg_endcaps = new TH1F( "h_ele_EseedOP_eg_endcaps", "ele E_{seed}/P_{vertex}, ecal driven, endcaps", nbineop,0.,eopmax);
313  h_ele_EseedOP_eg_endcaps->Sumw2();
314  h_ele_EseedOPVsEta = new TH2F( "h_ele_EseedOPVsEta", "ele E_{seed}/P_{vertex} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
315  h_ele_EseedOPVsPhi = new TH2F( "h_ele_EseedOPVsPhi", "ele E_{seed}/P_{vertex} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
316  h_ele_EseedOPVsE = new TH2F( "h_ele_EseedOPVsE", "ele E_{seed}/P_{vertex} vs E", 50,0.,pmax ,50,0.,5.);
317  h_ele_EoPout = new TH1F( "h_ele_EoPout", "ele E_{seed}/P_{out}", nbineop,0.,eopmax);
318  h_ele_EoPout->Sumw2();
319  h_ele_EoPout_eg = new TH1F( "h_ele_EoPout_eg", "ele E_{seed}/P_{out}, ecal driven", nbineop,0.,eopmax);
320  h_ele_EoPout_eg->Sumw2();
321  h_ele_EoPout_barrel = new TH1F( "h_ele_EoPout_barrel", "ele E_{seed}/P_{out} barrel", nbineop,0.,eopmax);
322  h_ele_EoPout_barrel->Sumw2();
323  h_ele_EoPout_eg_barrel = new TH1F( "h_ele_EoPout_eg_barrel", "ele E_{seed}/P_{out}, ecal driven, barrel", nbineop,0.,eopmax);
324  h_ele_EoPout_eg_barrel->Sumw2();
325  h_ele_EoPout_endcaps = new TH1F( "h_ele_EoPout_endcaps", "ele E_{seed}/P_{out} endcaps", nbineop,0.,eopmax);
326  h_ele_EoPout_endcaps->Sumw2();
327  h_ele_EoPout_eg_endcaps = new TH1F( "h_ele_EoPout_eg_endcaps", "ele E_{seed}/P_{out}, ecal driven, endcaps", nbineop,0.,eopmax);
328  h_ele_EoPout_eg_endcaps->Sumw2();
329  h_ele_EoPoutVsEta = new TH2F( "h_ele_EoPoutVsEta", "ele E/P_{out} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
330  h_ele_EoPoutVsPhi = new TH2F( "h_ele_EoPoutVsPhi", "ele E/P_{out} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
331  h_ele_EoPoutVsE = new TH2F( "h_ele_EoPoutVsE", "ele E/P_{out} vs E", nbinp2D,0.,pmax,nbineop2D,0.,eopmaxsht);
332  h_ele_EeleOPout = new TH1F( "h_ele_EeleOPout", "ele E_{ele}/P_{out}", nbineop,0.,eopmax);
333  h_ele_EeleOPout->Sumw2();
334  h_ele_EeleOPout_eg = new TH1F( "h_ele_EeleOPout_eg", "ele E_{ele}/P_{out}, ecal driven", nbineop,0.,eopmax);
335  h_ele_EeleOPout_eg->Sumw2();
336  h_ele_EeleOPout_barrel = new TH1F( "h_ele_EeleOPout_barrel", "ele E_{ele}/P_{out} barrel", nbineop,0.,eopmax);
337  h_ele_EeleOPout_barrel->Sumw2();
338  h_ele_EeleOPout_eg_barrel = new TH1F( "h_ele_EeleOPout_eg_barrel", "ele E_{ele}/P_{out}, ecal driven, barrel", nbineop,0.,eopmax);
339  h_ele_EeleOPout_eg_barrel->Sumw2();
340  h_ele_EeleOPout_endcaps = new TH1F( "h_ele_EeleOPout_endcaps", "ele E_{ele}/P_{out} endcaps", nbineop,0.,eopmax);
341  h_ele_EeleOPout_endcaps->Sumw2();
342  h_ele_EeleOPout_eg_endcaps = new TH1F( "h_ele_EeleOPout_eg_endcaps", "ele E_{ele}/P_{out}, ecal driven, endcaps", nbineop,0.,eopmax);
344  h_ele_EeleOPoutVsEta = new TH2F( "h_ele_EeleOPoutVsEta", "ele E_{ele}/P_{out} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
345  h_ele_EeleOPoutVsPhi = new TH2F( "h_ele_EeleOPoutVsPhi", "ele E_{ele}/P_{out} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
346  h_ele_EeleOPoutVsE = new TH2F( "h_ele_EeleOPoutVsE", "ele E_{ele}/P_{out} vs E", nbinp2D,0.,pmax,nbineop2D,0.,eopmaxsht);
347  h_ele_dEtaSc_propVtx = new TH1F( "h_ele_dEtaSc_propVtx", "ele #eta_{sc} - #eta_{tr}, prop from vertex", nbindetamatch,detamatchmin,detamatchmax);
348  h_ele_dEtaSc_propVtx->Sumw2();
349  h_ele_dEtaSc_propVtx_eg = new TH1F( "h_ele_dEtaSc_propVtx_eg", "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven", nbindetamatch,detamatchmin,detamatchmax);
350  h_ele_dEtaSc_propVtx_eg->Sumw2();
351  h_ele_dEtaSc_propVtx_barrel = new TH1F( "h_ele_dEtaSc_propVtx_barrel", "ele #eta_{sc} - #eta_{tr}, prop from vertex, barrel", nbindetamatch,detamatchmin,detamatchmax);
353  h_ele_dEtaSc_propVtx_eg_barrel = new TH1F( "h_ele_dEtaSc_propVtx_eg_barrel", "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven, barrel", nbindetamatch,detamatchmin,detamatchmax);
355  h_ele_dEtaSc_propVtx_endcaps = new TH1F( "h_ele_dEtaSc_propVtx_endcaps", "ele #eta_{sc} - #eta_{tr}, prop from vertex, endcaps", nbindetamatch,detamatchmin,detamatchmax);
357  h_ele_dEtaSc_propVtx_eg_endcaps = new TH1F( "h_ele_dEtaSc_propVtx_eg_endcaps", "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven, endcaps", nbindetamatch,detamatchmin,detamatchmax);
359  h_ele_dEtaScVsEta_propVtx = new TH2F( "h_ele_dEtaScVsEta_propVtx", "ele #eta_{sc} - #eta_{tr} vs eta, prop from vertex", nbineta2D,etamin,etamax,nbindetamatch2D,detamatchmin,detamatchmax);
360  h_ele_dEtaScVsPhi_propVtx = new TH2F( "h_ele_dEtaScVsPhi_propVtx", "ele #eta_{sc} - #eta_{tr} vs phi, prop from vertex", nbinphi2D,phimin,phimax,nbindetamatch2D,detamatchmin,detamatchmax);
361  h_ele_dEtaScVsPt_propVtx = new TH2F( "h_ele_dEtaScVsPt_propVtx", "ele #eta_{sc} - #eta_{tr} vs pt, prop from vertex", nbinpt2D,0.,ptmax,nbindetamatch2D,detamatchmin,detamatchmax);
362  h_ele_dPhiSc_propVtx = new TH1F( "h_ele_dPhiSc_propVtx", "ele #phi_{sc} - #phi_{tr}, prop from vertex", nbindphimatch,dphimatchmin,dphimatchmax);
363  h_ele_dPhiSc_propVtx->Sumw2();
364  h_ele_dPhiSc_propVtx_eg = new TH1F( "h_ele_dPhiSc_propVtx_eg", "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven", nbindphimatch,dphimatchmin,dphimatchmax);
365  h_ele_dPhiSc_propVtx_eg->Sumw2();
366  h_ele_dPhiSc_propVtx_barrel = new TH1F( "h_ele_dPhiSc_propVtx_barrel", "ele #phi_{sc} - #phi_{tr}, prop from vertex, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
368  h_ele_dPhiSc_propVtx_eg_barrel = new TH1F( "h_ele_dPhiSc_propVtx_eg_barrel", "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
370  h_ele_dPhiSc_propVtx_endcaps = new TH1F( "h_ele_dPhiSc_propVtx_endcaps", "ele #phi_{sc} - #phi_{tr}, prop from vertex, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
372  h_ele_dPhiSc_propVtx_eg_endcaps = new TH1F( "h_ele_dPhiSc_propVtx_eg_endcaps", "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
374  h_ele_dPhiScVsEta_propVtx = new TH2F( "h_ele_dPhiScVsEta_propVtx", "ele #phi_{sc} - #phi_{tr} vs eta, prop from vertex", nbineta2D,etamin,etamax,nbindphimatch2D,dphimatchmin,dphimatchmax);
375  h_ele_dPhiScVsPhi_propVtx = new TH2F( "h_ele_dPhiScVsPhi_propVtx", "ele #phi_{sc} - #phi_{tr} vs phi, prop from vertex", nbinphi2D,phimin,phimax,nbindphimatch2D,dphimatchmin,dphimatchmax);
376  h_ele_dPhiScVsPt_propVtx = new TH2F( "h_ele_dPhiScVsPt_propVtx", "ele #phi_{sc} - #phi_{tr} vs pt, prop from vertex", nbinpt2D,0.,ptmax,nbindphimatch2D,dphimatchmin,dphimatchmax);
377  h_ele_dEtaCl_propOut = new TH1F( "h_ele_dEtaCl_propOut", "ele #eta_{cl} - #eta_{tr}, prop from outermost", nbindetamatch,detamatchmin,detamatchmax);
378  h_ele_dEtaCl_propOut->Sumw2();
379  h_ele_dEtaCl_propOut_eg = new TH1F( "h_ele_dEtaCl_propOut_eg", "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven", nbindetamatch,detamatchmin,detamatchmax);
380  h_ele_dEtaCl_propOut_eg->Sumw2();
381  h_ele_dEtaCl_propOut_barrel = new TH1F( "h_ele_dEtaCl_propOut_barrel", "ele #eta_{cl} - #eta_{tr}, prop from outermost, barrel", nbindetamatch,detamatchmin,detamatchmax);
383  h_ele_dEtaCl_propOut_eg_barrel = new TH1F( "h_ele_dEtaCl_propOut_eg_barrel", "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven, barrel", nbindetamatch,detamatchmin,detamatchmax);
385  h_ele_dEtaCl_propOut_endcaps = new TH1F( "h_ele_dEtaCl_propOut_endcaps", "ele #eta_{cl} - #eta_{tr}, prop from outermost, endcaps", nbindetamatch,detamatchmin,detamatchmax);
387  h_ele_dEtaCl_propOut_eg_endcaps = new TH1F( "h_ele_dEtaCl_propOut_eg_endcaps", "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven, endcaps", nbindetamatch,detamatchmin,detamatchmax);
389  h_ele_dEtaClVsEta_propOut = new TH2F( "h_ele_dEtaClVsEta_propOut", "ele #eta_{cl} - #eta_{tr} vs eta, prop from out", nbineta2D,etamin,etamax,nbindetamatch2D,detamatchmin,detamatchmax);
390  h_ele_dEtaClVsPhi_propOut = new TH2F( "h_ele_dEtaClVsPhi_propOut", "ele #eta_{cl} - #eta_{tr} vs phi, prop from out", nbinphi2D,phimin,phimax,nbindetamatch2D,detamatchmin,detamatchmax);
391  h_ele_dEtaClVsPt_propOut = new TH2F( "h_ele_dEtaScVsPt_propOut", "ele #eta_{cl} - #eta_{tr} vs pt, prop from out", nbinpt2D,0.,ptmax,nbindetamatch2D,detamatchmin,detamatchmax);
392  h_ele_dPhiCl_propOut = new TH1F( "h_ele_dPhiCl_propOut", "ele #phi_{cl} - #phi_{tr}, prop from outermost", nbindphimatch,dphimatchmin,dphimatchmax);
393  h_ele_dPhiCl_propOut->Sumw2();
394  h_ele_dPhiCl_propOut_eg = new TH1F( "h_ele_dPhiCl_propOut_eg", "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven", nbindphimatch,dphimatchmin,dphimatchmax);
395  h_ele_dPhiCl_propOut_eg->Sumw2();
396  h_ele_dPhiCl_propOut_barrel = new TH1F( "h_ele_dPhiCl_propOut_barrel", "ele #phi_{cl} - #phi_{tr}, prop from outermost, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
398  h_ele_dPhiCl_propOut_eg_barrel = new TH1F( "h_ele_dPhiCl_propOut_eg_barrel", "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
400  h_ele_dPhiCl_propOut_endcaps = new TH1F( "h_ele_dPhiCl_propOut_endcaps", "ele #phi_{cl} - #phi_{tr}, prop from outermost, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
402  h_ele_dPhiCl_propOut_eg_endcaps = new TH1F( "h_ele_dPhiCl_propOut_eg_endcaps", "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
404  h_ele_dPhiClVsEta_propOut = new TH2F( "h_ele_dPhiClVsEta_propOut", "ele #phi_{cl} - #phi_{tr} vs eta, prop from out", nbineta2D,etamin,etamax,nbindphimatch2D,dphimatchmin,dphimatchmax);
405  h_ele_dPhiClVsPhi_propOut = new TH2F( "h_ele_dPhiClVsPhi_propOut", "ele #phi_{cl} - #phi_{tr} vs phi, prop from out", nbinphi2D,phimin,phimax,nbindphimatch2D,dphimatchmin,dphimatchmax);
406  h_ele_dPhiClVsPt_propOut = new TH2F( "h_ele_dPhiSClsPt_propOut", "ele #phi_{cl} - #phi_{tr} vs pt, prop from out", nbinpt2D,0.,ptmax,nbindphimatch2D,dphimatchmin,dphimatchmax);
407  h_ele_dEtaEleCl_propOut = new TH1F( "h_ele_dEtaEleCl_propOut", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost", nbindetamatch,detamatchmin,detamatchmax);
408  h_ele_dEtaEleCl_propOut->Sumw2();
409  h_ele_dEtaEleCl_propOut_eg = new TH1F( "h_ele_dEtaEleCl_propOut_eg", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven", nbindetamatch,detamatchmin,detamatchmax);
411  h_ele_dEtaEleCl_propOut_barrel = new TH1F( "h_ele_dEtaEleCl_propOut_barrel", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, barrel", nbindetamatch,detamatchmin,detamatchmax);
413  h_ele_dEtaEleCl_propOut_eg_barrel = new TH1F( "h_ele_dEtaEleCl_propOut_eg_barrel", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven, barrel", nbindetamatch,detamatchmin,detamatchmax);
415  h_ele_dEtaEleCl_propOut_endcaps = new TH1F( "h_ele_dEtaEleCl_propOut_endcaps", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, endcaps", nbindetamatch,detamatchmin,detamatchmax);
417  h_ele_dEtaEleCl_propOut_eg_endcaps = new TH1F( "h_ele_dEtaEleCl_propOut_eg_endcaps", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven, endcaps", nbindetamatch,detamatchmin,detamatchmax);
419  h_ele_dEtaEleClVsEta_propOut = new TH2F( "h_ele_dEtaEleClVsEta_propOut", "ele #eta_{EleCl} - #eta_{tr} vs eta, prop from out", nbineta2D,etamin,etamax,nbindetamatch2D,detamatchmin,detamatchmax);
420  h_ele_dEtaEleClVsPhi_propOut = new TH2F( "h_ele_dEtaEleClVsPhi_propOut", "ele #eta_{EleCl} - #eta_{tr} vs phi, prop from out", nbinphi2D,phimin,phimax,nbindetamatch2D,detamatchmin,detamatchmax);
421  h_ele_dEtaEleClVsPt_propOut = new TH2F( "h_ele_dEtaScVsPt_propOut", "ele #eta_{EleCl} - #eta_{tr} vs pt, prop from out", nbinpt2D,0.,ptmax,nbindetamatch2D,detamatchmin,detamatchmax);
422  h_ele_dPhiEleCl_propOut = new TH1F( "h_ele_dPhiEleCl_propOut", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost", nbindphimatch,dphimatchmin,dphimatchmax);
423  h_ele_dPhiEleCl_propOut->Sumw2();
424  h_ele_dPhiEleCl_propOut_eg = new TH1F( "h_ele_dPhiEleCl_propOut_eg", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven", nbindphimatch,dphimatchmin,dphimatchmax);
426  h_ele_dPhiEleCl_propOut_barrel = new TH1F( "h_ele_dPhiEleCl_propOut_barrel", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
428  h_ele_dPhiEleCl_propOut_eg_barrel = new TH1F( "h_ele_dPhiEleCl_propOut_eg_barrel", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
430  h_ele_dPhiEleCl_propOut_endcaps = new TH1F( "h_ele_dPhiEleCl_propOut_endcaps", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
432  h_ele_dPhiEleCl_propOut_eg_endcaps = new TH1F( "h_ele_dPhiEleCl_propOut_eg_endcaps", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
434  h_ele_dPhiEleClVsEta_propOut = new TH2F( "h_ele_dPhiEleClVsEta_propOut", "ele #phi_{EleCl} - #phi_{tr} vs eta, prop from out", nbineta2D,etamin,etamax,nbindphimatch2D,dphimatchmin,dphimatchmax);
435  h_ele_dPhiEleClVsPhi_propOut = new TH2F( "h_ele_dPhiEleClVsPhi_propOut", "ele #phi_{EleCl} - #phi_{tr} vs phi, prop from out", nbinphi2D,phimin,phimax,nbindphimatch2D,dphimatchmin,dphimatchmax);
436  h_ele_dPhiEleClVsPt_propOut = new TH2F( "h_ele_dPhiSEleClsPt_propOut", "ele #phi_{EleCl} - #phi_{tr} vs pt, prop from out", nbinpt2D,0.,ptmax,nbindphimatch2D,dphimatchmin,dphimatchmax);
437 
438  h_ele_HoE = new TH1F("h_ele_HoE", "ele hadronic energy / em energy", nbinhoe, hoemin, hoemax) ;
439  h_ele_HoE->Sumw2();
440  h_ele_HoE_eg = new TH1F("h_ele_HoE_eg", "ele hadronic energy / em energy, ecal driven", nbinhoe, hoemin, hoemax) ;
441  h_ele_HoE_eg->Sumw2();
442  h_ele_HoE_barrel = new TH1F("h_ele_HoE_barrel", "ele hadronic energy / em energy, barrel", nbinhoe, hoemin, hoemax) ;
443  h_ele_HoE_barrel->Sumw2();
444  h_ele_HoE_eg_barrel = new TH1F("h_ele_HoE_eg_barrel", "ele hadronic energy / em energy, ecal driven, barrel", nbinhoe, hoemin, hoemax) ;
445  h_ele_HoE_eg_barrel->Sumw2();
446  h_ele_HoE_endcaps = new TH1F("h_ele_HoE_endcaps", "ele hadronic energy / em energy, endcaps", nbinhoe, hoemin, hoemax) ;
447  h_ele_HoE_endcaps->Sumw2();
448  h_ele_HoE_eg_endcaps = new TH1F("h_ele_HoE_eg_endcaps", "ele hadronic energy / em energy, ecal driven, endcaps", nbinhoe, hoemin, hoemax) ;
449  h_ele_HoE_eg_endcaps->Sumw2();
450  h_ele_HoE_fiducial = new TH1F("h_ele_HoE_fiducial", "ele hadronic energy / em energy",nbinhoe, hoemin, hoemax) ;
451  h_ele_HoEVsEta = new TH2F("h_ele_HoEVsEta", "ele hadronic energy / em energy vs eta", nbineta,etamin,etamax,nbinhoe, hoemin, hoemax) ;
452  h_ele_HoEVsPhi = new TH2F("h_ele_HoEVsPhi", "ele hadronic energy / em energy vs phi", nbinphi2D,phimin,phimax,nbinhoe, hoemin, hoemax) ;
453  h_ele_HoEVsE = new TH2F("h_ele_HoEVsE", "ele hadronic energy / em energy vs E", nbinp, 0.,300.,nbinhoe, hoemin, hoemax) ;
454 
455  h_ele_seed_dphi2_ = new TH1F("h_ele_seedDphi2", "ele seed dphi 2nd layer", 50,-0.003,+0.003) ;
456  h_ele_seed_dphi2VsEta_ = new TH2F("h_ele_seedDphi2VsEta", "ele seed dphi 2nd layer vs eta", nbineta2D,etamin,etamax,50,-0.003,+0.003) ;
457  h_ele_seed_dphi2VsPt_ = new TH2F("h_ele_seedDphi2VsPt", "ele seed dphi 2nd layer vs pt", nbinpt2D,0.,ptmax,50,-0.003,+0.003) ;
458  h_ele_seed_drz2_ = new TH1F("h_ele_seedDrz2", "ele seed dr/dz 2nd layer", 50,-0.03,+0.03) ;
459  h_ele_seed_drz2VsEta_ = new TH2F("h_ele_seedDrz2VsEta", "ele seed dr/dz 2nd layer vs eta", nbineta2D,etamin,etamax,50,-0.03,+0.03) ;
460  h_ele_seed_drz2VsPt_ = new TH2F("h_ele_seedDrz2VsPt", "ele seed dr/dz 2nd layer vs pt", nbinpt2D,0.,ptmax,50,-0.03,+0.03) ;
461  h_ele_seed_subdet2_ = new TH1F("h_ele_seedSubdet2", "ele seed subdet 2nd layer", 10,0.,10.) ;
462 
463  // classes
464  h_ele_classes = new TH1F( "h_ele_classes", "electron classes", 20,0.0,20.);
465  h_ele_eta = new TH1F( "h_ele_eta", "ele electron eta", nbineta/2,0.0,etamax);
466  h_ele_eta_golden = new TH1F( "h_ele_eta_golden", "ele electron eta golden", nbineta/2,0.0,etamax);
467  h_ele_eta_bbrem = new TH1F( "h_ele_eta_bbrem", "ele electron eta bbrem", nbineta/2,0.0,etamax);
468  h_ele_eta_narrow = new TH1F( "h_ele_eta_narrow", "ele electron eta narrow", nbineta/2,0.0,etamax);
469  h_ele_eta_shower = new TH1F( "h_ele_eta_show", "el, electron eta showering", nbineta/2,0.0,etamax);
470  h_ele_PinVsPoutGolden_mode = new TH2F( "h_ele_PinVsPoutGolden_mode", "ele track inner p vs outer p, golden, mode" ,nbinp2D,0.,pmax,50,0.,pmax);
471  h_ele_PinVsPoutShowering_mode = new TH2F( "h_ele_PinVsPoutShowering_mode", "ele track inner p vs outer p vs eta, showering, mode" ,nbinp2D,0.,pmax,50,0.,pmax);
472  h_ele_PinVsPoutGolden_mean = new TH2F( "h_ele_PinVsPoutGolden_mean", "ele track inner p vs outer p, golden, mean" ,nbinp2D,0.,pmax,50,0.,pmax);
473  h_ele_PinVsPoutShowering_mean = new TH2F( "h_ele_PinVsPoutShowering_mean", "ele track inner p vs outer p, showering, mean" ,nbinp2D,0.,pmax,50,0.,pmax);
474  h_ele_PtinVsPtoutGolden_mode = new TH2F( "h_ele_PtinVsPtoutGolden_mode", "ele track inner pt vs outer pt, golden, mode" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
475  h_ele_PtinVsPtoutShowering_mode = new TH2F( "h_ele_PtinVsPtoutShowering_mode", "ele track inner pt vs outer pt, showering, mode" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
476  h_ele_PtinVsPtoutGolden_mean = new TH2F( "h_ele_PtinVsPtoutGolden_mean", "ele track inner pt vs outer pt, golden, mean" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
477  h_ele_PtinVsPtoutShowering_mean = new TH2F( "h_ele_PtinVsPtoutShowering_mean", "ele track inner pt vs outer pt, showering, mean" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
478  histSclEoEmatchingObjectGolden_barrel = new TH1F("h_scl_EoEmatchingObject golden, barrel","ele SC energy over matching jet energy, golden, barrel",100,0.2,1.2);
479  histSclEoEmatchingObjectGolden_endcaps = new TH1F("h_scl_EoEmatchingObject golden, endcaps","ele SC energy over matching jet energy, golden, endcaps",100,0.2,1.2);
480  histSclEoEmatchingObjectShowering_barrel = new TH1F("h_scl_EoEmatchingObject showering, barrel","ele SC energy over matching jet energy, showering, barrel",100,0.2,1.2);
481  histSclEoEmatchingObjectShowering_endcaps = new TH1F("h_scl_EoEmatchingObject showering, endcaps","ele SC energy over matching jet energy, showering, endcaps",100,0.2,1.2);
482 
483  // isolation
484  h_ele_tkSumPt_dr03 = new TH1F("h_ele_tkSumPt_dr03","tk isolation sum, dR=0.3",100,0.0,20.);
485  h_ele_ecalRecHitSumEt_dr03= new TH1F("h_ele_ecalRecHitSumEt_dr03","ecal isolation sum, dR=0.3",100,0.0,20.);
486  h_ele_hcalDepth1TowerSumEt_dr03= new TH1F("h_ele_hcalDepth1TowerSumEt_dr03","hcal depth1 isolation sum, dR=0.3",100,0.0,20.);
487  h_ele_hcalDepth2TowerSumEt_dr03= new TH1F("h_ele_hcalDepth2TowerSumEt_dr03","hcal depth2 isolation sum, dR=0.3",100,0.0,20.);
488  h_ele_tkSumPt_dr04= new TH1F("h_ele_tkSumPt_dr04","hcal isolation sum",100,0.0,20.);
489  h_ele_ecalRecHitSumEt_dr04= new TH1F("h_ele_ecalRecHitSumEt_dr04","ecal isolation sum, dR=0.4",100,0.0,20.);
490  h_ele_hcalDepth1TowerSumEt_dr04= new TH1F("h_ele_hcalDepth1TowerSumEt_dr04","hcal depth1 isolation sum, dR=0.4",100,0.0,20.);
491  h_ele_hcalDepth2TowerSumEt_dr04= new TH1F("h_ele_hcalDepth2TowerSumEt_dr04","hcal depth2 isolation sum, dR=0.4",100,0.0,20.);
492 
493  // fbrem
494  h_ele_fbrem = new TH1F( "h_ele_fbrem","ele brem fraction, mode",100,0.,1.);
495  h_ele_fbremVsEta_mode = new TProfile( "h_ele_fbremvsEtamode","mean ele brem fraction vs eta, mode",nbineta2D,etamin,etamax,0.,1.);
496  h_ele_fbremVsEta_mean = new TProfile( "h_ele_fbremvsEtamean","mean ele brem fraction vs eta, mean",nbineta2D,etamin,etamax,0.,1.);
497 
498  // e/g et pflow electrons
499  h_ele_mva = new TH1F( "h_ele_mva","ele mva",100,-1.,1.);
500  h_ele_provenance = new TH1F( "h_ele_provenance","ele provenance",5,-2.,3.);
501 
502  // histos titles
503  h_matchingObjectNum -> GetXaxis()-> SetTitle("N_{GenJet}");
504  h_matchingObjectNum -> GetYaxis()-> SetTitle("Events");
505  h_matchingObjectEta -> GetXaxis()-> SetTitle("#eta_{GenJet}");
506  h_matchingObjectEta -> GetYaxis()-> SetTitle("Events");
507  h_matchingObjectP -> GetXaxis()-> SetTitle("E_{GenJet} (GeV)");
508  h_matchingObjectP -> GetYaxis()-> SetTitle("Events");
509  h_ele_foundHits -> GetXaxis()-> SetTitle("N_{hits}");
510  h_ele_foundHits -> GetYaxis()-> SetTitle("Events");
511  h_ele_ambiguousTracks -> GetXaxis()-> SetTitle("N_{ambiguous tracks}");
512  h_ele_ambiguousTracks -> GetYaxis()-> SetTitle("Events");
513  h_ele_lostHits -> GetXaxis()-> SetTitle("N_{lost hits}");
514  h_ele_lostHits -> GetYaxis()-> SetTitle("Events");
515  h_ele_chi2 -> GetXaxis()-> SetTitle("#Chi^{2}");
516  h_ele_chi2 -> GetYaxis()-> SetTitle("Events");
517  h_ele_charge -> GetXaxis()-> SetTitle("charge");
518  h_ele_charge -> GetYaxis()-> SetTitle("Events");
519  h_ele_vertexP -> GetXaxis()-> SetTitle("p_{vertex} (GeV/c)");
520  h_ele_vertexP -> GetYaxis()-> SetTitle("Events");
521  h_ele_vertexPt -> GetXaxis()-> SetTitle("p_{T vertex} (GeV/c)");
522  h_ele_vertexPt -> GetYaxis()-> SetTitle("Events");
523  h_ele_vertexEta -> GetXaxis()-> SetTitle("#eta");
524  h_ele_vertexEta -> GetYaxis()-> SetTitle("Events");
525  h_ele_vertexPhi -> GetXaxis()-> SetTitle("#phi (rad)");
526  h_ele_vertexPhi -> GetYaxis()-> SetTitle("Events");
527  h_ele_PoPmatchingObject -> GetXaxis()-> SetTitle("P/P_{gen jet}");
528  h_ele_PoPmatchingObject -> GetYaxis()-> SetTitle("Events");
529  h_ele_PoPmatchingObject_barrel -> GetXaxis()-> SetTitle("P/P_{gen jet}");
530  h_ele_PoPmatchingObject_barrel -> GetYaxis()-> SetTitle("Events");
531  h_ele_PoPmatchingObject_endcaps -> GetXaxis()-> SetTitle("P/P_{gen jet}");
532  h_ele_PoPmatchingObject_endcaps -> GetYaxis()-> SetTitle("Events");
533  histSclSigIEtaIEta_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
534  histSclSigIEtaIEta_-> GetYaxis()-> SetTitle("Events") ;
535  histSclSigIEtaIEta_barrel_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
536  histSclSigIEtaIEta_barrel_-> GetYaxis()-> SetTitle("Events") ;
537  histSclSigIEtaIEta_endcaps_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
538  histSclSigIEtaIEta_endcaps_-> GetYaxis()-> SetTitle("Events") ;
539  histSclE1x5_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
540  histSclE1x5_-> GetYaxis()-> SetTitle("Events") ;
541  histSclE1x5_barrel_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
542  histSclE1x5_barrel_-> GetYaxis()-> SetTitle("Events") ;
543  histSclE1x5_endcaps_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
544  histSclE1x5_endcaps_-> GetYaxis()-> SetTitle("Events") ;
545  histSclE2x5max_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
546  histSclE2x5max_-> GetYaxis()-> SetTitle("Events") ;
547  histSclE2x5max_barrel_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
548  histSclE2x5max_barrel_-> GetYaxis()-> SetTitle("Events") ;
549  histSclE2x5max_endcaps_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
550  histSclE2x5max_endcaps_-> GetYaxis()-> SetTitle("Events") ;
551  histSclE5x5_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
552  histSclE5x5_-> GetYaxis()-> SetTitle("Events") ;
553  histSclE5x5_barrel_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
554  histSclE5x5_barrel_-> GetYaxis()-> SetTitle("Events") ;
555  histSclE5x5_endcaps_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
556  histSclE5x5_endcaps_-> GetYaxis()-> SetTitle("Events") ;
557  h_ele_EtaMnEtamatchingObject -> GetXaxis()-> SetTitle("#eta_{rec} - #eta_{jet}");
558  h_ele_EtaMnEtamatchingObject -> GetYaxis()-> SetTitle("Events");
559  h_ele_PhiMnPhimatchingObject -> GetXaxis()-> SetTitle("#phi_{rec} - #phi_{jet} (rad)");
560  h_ele_PhiMnPhimatchingObject -> GetYaxis()-> SetTitle("Events");
561  h_ele_PinMnPout -> GetXaxis()-> SetTitle("P_{vertex} - P_{out} (GeV/c)");
562  h_ele_PinMnPout -> GetYaxis()-> SetTitle("Events");
563  h_ele_PinMnPout_mode -> GetXaxis()-> SetTitle("P_{vertex} - P_{out}, mode (GeV/c)");
564  h_ele_PinMnPout_mode -> GetYaxis()-> SetTitle("Events");
565  h_ele_outerP -> GetXaxis()-> SetTitle("P_{out} (GeV/c)");
566  h_ele_outerP -> GetYaxis()-> SetTitle("Events");
567  h_ele_outerP_mode -> GetXaxis()-> SetTitle("P_{out} (GeV/c)");
568  h_ele_outerP_mode -> GetYaxis()-> SetTitle("Events");
569  h_ele_outerPt -> GetXaxis()-> SetTitle("P_{T out} (GeV/c)");
570  h_ele_outerPt -> GetYaxis()-> SetTitle("Events");
571  h_ele_outerPt_mode -> GetXaxis()-> SetTitle("P_{T out} (GeV/c)");
572  h_ele_outerPt_mode -> GetYaxis()-> SetTitle("Events");
573  h_ele_EoP -> GetXaxis()-> SetTitle("E/P_{vertex}");
574  h_ele_EoP -> GetYaxis()-> SetTitle("Events");
575  h_ele_EseedOP -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
576  h_ele_EseedOP -> GetYaxis()-> SetTitle("Events");
577  h_ele_EoPout -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
578  h_ele_EoPout -> GetYaxis()-> SetTitle("Events");
579  h_ele_EeleOPout -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
580  h_ele_EeleOPout -> GetYaxis()-> SetTitle("Events");
581  h_ele_EoP_barrel -> GetXaxis()-> SetTitle("E/P_{vertex}");
582  h_ele_EoP_barrel -> GetYaxis()-> SetTitle("Events");
583  h_ele_EseedOP_barrel -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
584  h_ele_EseedOP_barrel -> GetYaxis()-> SetTitle("Events");
585  h_ele_EoPout_barrel -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
586  h_ele_EoPout_barrel -> GetYaxis()-> SetTitle("Events");
587  h_ele_EeleOPout_barrel -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
588  h_ele_EeleOPout_barrel -> GetYaxis()-> SetTitle("Events");
589  h_ele_EoP_endcaps -> GetXaxis()-> SetTitle("E/P_{vertex}");
590  h_ele_EoP_endcaps -> GetYaxis()-> SetTitle("Events");
591  h_ele_EseedOP_endcaps -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
592  h_ele_EseedOP_endcaps -> GetYaxis()-> SetTitle("Events");
593  h_ele_EoPout_endcaps -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
594  h_ele_EoPout_endcaps -> GetYaxis()-> SetTitle("Events");
595  h_ele_EeleOPout_endcaps -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
596  h_ele_EeleOPout_endcaps -> GetYaxis()-> SetTitle("Events");
597  h_ele_vertexX-> GetXaxis()-> SetTitle("x (cm)");
598  h_ele_vertexX-> GetYaxis()-> SetTitle("Events");
599  h_ele_vertexY-> GetXaxis()-> SetTitle("y (cm)");
600  h_ele_vertexY-> GetYaxis()-> SetTitle("Events");
601  h_ele_vertexZ-> GetXaxis()-> SetTitle("z (cm)");
602  h_ele_vertexZ-> GetYaxis()-> SetTitle("Events");
603  h_ele_vertexTIP-> GetXaxis()-> SetTitle("TIP (cm)");
604  h_ele_vertexTIP-> GetYaxis()-> SetTitle("Events");
605  h_ele_TIP_all-> GetXaxis()-> SetTitle("r_{T} (cm)");
606  h_ele_TIP_all-> GetYaxis()-> SetTitle("Events");
607  h_ele_vertexTIPVsEta-> GetYaxis()-> SetTitle("TIP (cm)");
608  h_ele_vertexTIPVsEta-> GetXaxis()-> SetTitle("#eta");
609  h_ele_vertexTIPVsPhi-> GetYaxis()-> SetTitle("TIP (cm)");
610  h_ele_vertexTIPVsPhi-> GetXaxis()-> SetTitle("#phi (rad)");
611  h_ele_vertexTIPVsPt-> GetYaxis()-> SetTitle("TIP (cm)");
612  h_ele_vertexTIPVsPt-> GetXaxis()-> SetTitle("p_{T} (GeV/c)");
613  h_ele_dEtaSc_propVtx-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
614  h_ele_dEtaSc_propVtx-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
615  h_ele_dEtaSc_propVtx-> GetYaxis()-> SetTitle("Events");
616  h_ele_dEtaCl_propOut-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
617  h_ele_dEtaCl_propOut-> GetYaxis()-> SetTitle("Events");
618  h_ele_dEtaEleCl_propOut-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
619  h_ele_dEtaEleCl_propOut-> GetYaxis()-> SetTitle("Events");
620  h_ele_dPhiSc_propVtx-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
621  h_ele_dPhiSc_propVtx-> GetYaxis()-> SetTitle("Events");
622  h_ele_dPhiCl_propOut-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
623  h_ele_dPhiCl_propOut-> GetYaxis()-> SetTitle("Events");
624  h_ele_dPhiEleCl_propOut-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
625  h_ele_dPhiEleCl_propOut-> GetYaxis()-> SetTitle("Events");
626  h_ele_dEtaSc_propVtx_barrel-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
627  h_ele_dEtaSc_propVtx_barrel-> GetYaxis()-> SetTitle("Events");
628  h_ele_dEtaCl_propOut_barrel-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
629  h_ele_dEtaCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
630  h_ele_dEtaEleCl_propOut_barrel-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
631  h_ele_dEtaEleCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
632  h_ele_dPhiSc_propVtx_barrel-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
633  h_ele_dPhiSc_propVtx_barrel-> GetYaxis()-> SetTitle("Events");
634  h_ele_dPhiCl_propOut_barrel-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
635  h_ele_dPhiCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
636  h_ele_dPhiEleCl_propOut_barrel-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
637  h_ele_dPhiEleCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
638  h_ele_dEtaSc_propVtx_endcaps-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
639  h_ele_dEtaSc_propVtx_endcaps-> GetYaxis()-> SetTitle("Events");
640  h_ele_dEtaCl_propOut_endcaps-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
641  h_ele_dEtaCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
642  h_ele_dEtaEleCl_propOut_endcaps-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
643  h_ele_dEtaEleCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
644  h_ele_dPhiSc_propVtx_endcaps-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
645  h_ele_dPhiSc_propVtx_endcaps-> GetYaxis()-> SetTitle("Events");
646  h_ele_dPhiCl_propOut_endcaps-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
647  h_ele_dPhiCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
648  h_ele_dPhiEleCl_propOut_endcaps-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
649  h_ele_dPhiEleCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
650  h_ele_HoE-> GetXaxis()-> SetTitle("H/E") ;
651  h_ele_HoE-> GetYaxis()-> SetTitle("Events") ;
652  h_ele_HoE_barrel-> GetXaxis()-> SetTitle("H/E") ;
653  h_ele_HoE_barrel-> GetYaxis()-> SetTitle("Events") ;
654  h_ele_HoE_endcaps-> GetXaxis()-> SetTitle("H/E") ;
655  h_ele_HoE_endcaps-> GetYaxis()-> SetTitle("Events") ;
656  h_ele_HoE_fiducial-> GetXaxis()-> SetTitle("H/E") ;
657  h_ele_HoE_fiducial-> GetYaxis()-> SetTitle("Events") ;
658  h_ele_fbrem-> GetXaxis()-> SetTitle("P_{in} - P_{out} / P_{in}");
659  h_ele_fbrem-> GetYaxis()-> SetTitle("Events");
660  h_ele_seed_dphi2_-> GetXaxis()-> SetTitle("#phi_{hit}-#phi_{pred} (rad)") ;
661  h_ele_seed_dphi2_-> GetYaxis()-> SetTitle("Events") ;
662  h_ele_seed_drz2_-> GetXaxis()-> SetTitle("r(z)_{hit}-r(z)_{pred} (cm)") ;
663  h_ele_seed_drz2_-> GetYaxis()-> SetTitle("Events") ;
664  h_ele_seed_subdet2_-> GetXaxis()-> SetTitle("2nd hit subdet Id") ;
665  h_ele_seed_subdet2_-> GetYaxis()-> SetTitle("Events") ;
666  h_ele_classes-> GetXaxis()-> SetTitle("class Id") ;
667  h_ele_classes-> GetYaxis()-> SetTitle("Events") ;
668  h_ele_EoverP_all-> GetXaxis()-> SetTitle("E/P_{vertex}");
669  h_ele_EoverP_all-> GetYaxis()-> SetTitle("Events");
670  h_ele_EseedOP_all-> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
671  h_ele_EseedOP_all-> GetYaxis()-> SetTitle("Events");
672  h_ele_EoPout_all -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
673  h_ele_EoPout_all-> GetYaxis()-> SetTitle("Events");
674  h_ele_EeleOPout_all-> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
675  h_ele_EeleOPout_all-> GetYaxis()-> SetTitle("Events");
676  h_ele_dEtaSc_propVtx_all-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
677  h_ele_dEtaSc_propVtx_all-> GetYaxis()-> SetTitle("Events");
678  h_ele_dPhiSc_propVtx_all-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
679  h_ele_dPhiSc_propVtx_all-> GetYaxis()-> SetTitle("Events");
680  h_ele_dEtaCl_propOut_all-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
681  h_ele_dEtaCl_propOut_all-> GetYaxis()-> SetTitle("Events");
682  h_ele_dPhiCl_propOut_all-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
683  h_ele_dPhiCl_propOut_all-> GetYaxis()-> SetTitle("Events");
684  h_ele_HoE_all-> GetXaxis()-> SetTitle("H/E") ;
685  h_ele_HoE_all-> GetYaxis()-> SetTitle("Events");
686  h_ele_mee_all-> GetXaxis()-> SetTitle("m_{ee} (GeV/c^{2})");
687  h_ele_mee_all-> GetYaxis()-> SetTitle("Events");
688  h_ele_mee_os-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
689  h_ele_mee_os-> GetYaxis()-> SetTitle("Events");
690  h_ele_E2mnE1vsMee_all-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
691  h_ele_E2mnE1vsMee_all-> GetYaxis()-> SetTitle("E2 - E1 (GeV)");
692  h_ele_E2mnE1vsMee_egeg_all-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
693  h_ele_E2mnE1vsMee_egeg_all-> GetYaxis()-> SetTitle("E2 - E1 (GeV)");
694  histNum_-> GetXaxis()-> SetTitle("N_{ele}");
695  histNum_-> GetYaxis()-> SetTitle("Events");
696  h_ele_fbremVsEta_mode-> GetXaxis()-> SetTitle("#eta");
697  h_ele_fbremVsEta_mean-> GetXaxis()-> SetTitle("#eta");
698 
699 }
uint16_t size_type
std::string const & label() const
Definition: InputTag.h:36
void GsfElectronMCFakeAnalyzer::endJob ( void  )
overridevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 702 of file GsfElectronMCFakeAnalyzer.cc.

References gather_cfg::cout, h_ele_ambiguousTracks, h_ele_ambiguousTracksVsEta, h_ele_ambiguousTracksVsPhi, h_ele_ambiguousTracksVsPt, h_ele_charge, h_ele_chargeVsEta, h_ele_chargeVsPhi, h_ele_chargeVsPt, h_ele_chi2, h_ele_chi2VsEta, h_ele_chi2VsPhi, h_ele_chi2VsPt, h_ele_classes, h_ele_dEtaCl_propOut, h_ele_dEtaCl_propOut_all, h_ele_dEtaCl_propOut_barrel, h_ele_dEtaCl_propOut_eg, h_ele_dEtaCl_propOut_eg_barrel, h_ele_dEtaCl_propOut_eg_endcaps, h_ele_dEtaCl_propOut_endcaps, h_ele_dEtaClVsEta_propOut, h_ele_dEtaClVsPhi_propOut, h_ele_dEtaClVsPt_propOut, h_ele_dEtaEleCl_propOut, h_ele_dEtaEleCl_propOut_barrel, h_ele_dEtaEleCl_propOut_eg, h_ele_dEtaEleCl_propOut_eg_barrel, h_ele_dEtaEleCl_propOut_eg_endcaps, h_ele_dEtaEleCl_propOut_endcaps, h_ele_dEtaEleClVsEta_propOut, h_ele_dEtaEleClVsPhi_propOut, h_ele_dEtaEleClVsPt_propOut, h_ele_dEtaSc_propVtx, h_ele_dEtaSc_propVtx_all, h_ele_dEtaSc_propVtx_barrel, h_ele_dEtaSc_propVtx_eg, h_ele_dEtaSc_propVtx_eg_barrel, h_ele_dEtaSc_propVtx_eg_endcaps, h_ele_dEtaSc_propVtx_endcaps, h_ele_dEtaScVsEta_propVtx, h_ele_dEtaScVsPhi_propVtx, h_ele_dEtaScVsPt_propVtx, h_ele_dPhiCl_propOut, h_ele_dPhiCl_propOut_all, h_ele_dPhiCl_propOut_barrel, h_ele_dPhiCl_propOut_eg, h_ele_dPhiCl_propOut_eg_barrel, h_ele_dPhiCl_propOut_eg_endcaps, h_ele_dPhiCl_propOut_endcaps, h_ele_dPhiClVsEta_propOut, h_ele_dPhiClVsPhi_propOut, h_ele_dPhiClVsPt_propOut, h_ele_dPhiEleCl_propOut, h_ele_dPhiEleCl_propOut_barrel, h_ele_dPhiEleCl_propOut_eg, h_ele_dPhiEleCl_propOut_eg_barrel, h_ele_dPhiEleCl_propOut_eg_endcaps, h_ele_dPhiEleCl_propOut_endcaps, h_ele_dPhiEleClVsEta_propOut, h_ele_dPhiEleClVsPhi_propOut, h_ele_dPhiEleClVsPt_propOut, h_ele_dPhiSc_propVtx, h_ele_dPhiSc_propVtx_all, h_ele_dPhiSc_propVtx_barrel, h_ele_dPhiSc_propVtx_eg, h_ele_dPhiSc_propVtx_eg_barrel, h_ele_dPhiSc_propVtx_eg_endcaps, h_ele_dPhiSc_propVtx_endcaps, h_ele_dPhiScVsEta_propVtx, h_ele_dPhiScVsPhi_propVtx, h_ele_dPhiScVsPt_propVtx, h_ele_E2mnE1vsMee_all, h_ele_E2mnE1vsMee_egeg_all, h_ele_ecalRecHitSumEt_dr03, h_ele_ecalRecHitSumEt_dr04, h_ele_EeleOPout, h_ele_EeleOPout_all, h_ele_EeleOPout_barrel, h_ele_EeleOPout_eg, h_ele_EeleOPout_eg_barrel, h_ele_EeleOPout_eg_endcaps, h_ele_EeleOPout_endcaps, h_ele_EeleOPoutVsE, h_ele_EeleOPoutVsEta, h_ele_EeleOPoutVsPhi, h_ele_EoP, h_ele_EoP_barrel, h_ele_EoP_eg, h_ele_EoP_eg_barrel, h_ele_EoP_eg_endcaps, h_ele_EoP_endcaps, h_ele_EoPout, h_ele_EoPout_all, h_ele_EoPout_barrel, h_ele_EoPout_eg, h_ele_EoPout_eg_barrel, h_ele_EoPout_eg_endcaps, h_ele_EoPout_endcaps, h_ele_EoPoutVsE, h_ele_EoPoutVsEta, h_ele_EoPoutVsPhi, h_ele_EoPVsE, h_ele_EoPVsEta, h_ele_EoPVsPhi, h_