CMS 3D CMS Logo

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

#include <GsfElectronMCAnalyzer.h>

Inheritance diagram for GsfElectronMCAnalyzer:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

virtual void analyze (const edm::Event &e, const edm::EventSetup &c)
 
virtual void beginJob ()
 
virtual void endJob ()
 
 GsfElectronMCAnalyzer (const edm::ParameterSet &conf)
 
virtual ~GsfElectronMCAnalyzer ()
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 
- Public Member Functions inherited from edm::EDConsumerBase
 EDConsumerBase ()
 
ProductHolderIndex indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndex > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndex > &) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Attributes

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
 
TH1F * h_ele_ChargeMnChargeTrue
 
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_all_barrel
 
TH1F * h_ele_dEtaCl_propOut_all_endcaps
 
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_all_barrel
 
TH1F * h_ele_dEtaSc_propVtx_all_endcaps
 
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_all_barrel
 
TH1F * h_ele_dPhiCl_propOut_all_endcaps
 
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_all_barrel
 
TH1F * h_ele_dPhiSc_propVtx_all_endcaps
 
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_all_barrel
 
TH1F * h_ele_EeleOPout_all_endcaps
 
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_all_barrel
 
TH1F * h_ele_EoPout_all_endcaps
 
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_EoverP_all_barrel
 
TH1F * h_ele_EoverP_all_endcaps
 
TH1F * h_ele_EseedOP
 
TH1F * h_ele_EseedOP_all
 
TH1F * h_ele_EseedOP_all_barrel
 
TH1F * h_ele_EseedOP_all_endcaps
 
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_Et
 
TH1F * h_ele_Et_all
 
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_EtaMnEtaTrue
 
TH1F * h_ele_EtaMnEtaTrue_barrel
 
TH1F * h_ele_EtaMnEtaTrue_endcaps
 
TH2F * h_ele_EtaMnEtaTrueVsEta
 
TH2F * h_ele_EtaMnEtaTrueVsPhi
 
TH2F * h_ele_EtaMnEtaTrueVsPt
 
TH1F * h_ele_fbrem
 
TH1F * h_ele_fbrem_eg
 
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_all_barrel
 
TH1F * h_ele_HoE_all_endcaps
 
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_mee_all
 
TH1F * h_ele_mee_os
 
TH1F * h_ele_mee_os_bb
 
TH1F * h_ele_mee_os_ebeb
 
TH1F * h_ele_mee_os_ebee
 
TH1F * h_ele_mee_os_eeee
 
TH1F * h_ele_mee_os_gb
 
TH1F * h_ele_mee_os_gg
 
TH1F * h_ele_mva
 
TH1F * h_ele_mva_eg
 
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_PhiMnPhiTrue
 
TH1F * h_ele_PhiMnPhiTrue2
 
TH1F * h_ele_PhiMnPhiTrue_barrel
 
TH1F * h_ele_PhiMnPhiTrue_endcaps
 
TH2F * h_ele_PhiMnPhiTrueVsEta
 
TH2F * h_ele_PhiMnPhiTrueVsPhi
 
TH2F * h_ele_PhiMnPhiTrueVsPt
 
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_PoPtrue
 
TH1F * h_ele_PoPtrue_barrel
 
TH1F * h_ele_PoPtrue_endcaps
 
TH1F * h_ele_PoPtrue_golden_barrel
 
TH1F * h_ele_PoPtrue_golden_endcaps
 
TH1F * h_ele_PoPtrue_showering_barrel
 
TH1F * h_ele_PoPtrue_showering_endcaps
 
TH2F * h_ele_PoPtrueVsEta
 
TH2F * h_ele_PoPtrueVsPhi
 
TH2F * h_ele_PoPtrueVsPt
 
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_PtoPttrue
 
TH1F * h_ele_PtoPttrue_barrel
 
TH1F * h_ele_PtoPttrue_endcaps
 
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_simAbsEta_matched
 
TH1F * h_ele_simAbsEta_matched_qmisid
 
TH1F * h_ele_simEta_matched
 
TH1F * h_ele_simEta_matched_qmisid
 
TH1F * h_ele_simPhi_matched
 
TH1F * h_ele_simPhi_matched_qmisid
 
TH1F * h_ele_simPt_matched
 
TH1F * h_ele_simPt_matched_qmisid
 
TH2F * h_ele_simPtEta_matched
 
TH1F * h_ele_simZ_matched
 
TH1F * h_ele_simZ_matched_qmisid
 
TH1F * h_ele_TIP_all
 
TH1F * h_ele_TIP_all_barrel
 
TH1F * h_ele_TIP_all_endcaps
 
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_5100
 
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_eleNum
 
TH1F * h_gamNum
 
TH1F * h_mcNum
 
TH1F * h_simAbsEta
 
TH1F * h_simEta
 
TH1F * h_simP
 
TH1F * h_simPhi
 
TH1F * h_simPt
 
TH2F * h_simPtEta
 
TH1F * h_simZ
 
TFile * histfile_
 
TH1F * histNum_
 
TH1F * histSclE1x5_
 
TH1F * histSclE1x5_barrel_
 
TH1F * histSclE1x5_eg_
 
TH1F * histSclE1x5_eg_barrel_
 
TH1F * histSclE1x5_eg_endcaps_
 
TH1F * histSclE1x5_endcaps_
 
TH1F * histSclE2x5max_
 
TH1F * histSclE2x5max_barrel_
 
TH1F * histSclE2x5max_eg_
 
TH1F * histSclE2x5max_eg_barrel_
 
TH1F * histSclE2x5max_eg_endcaps_
 
TH1F * histSclE2x5max_endcaps_
 
TH1F * histSclE5x5_
 
TH1F * histSclE5x5_barrel_
 
TH1F * histSclE5x5_eg_
 
TH1F * histSclE5x5_eg_barrel_
 
TH1F * histSclE5x5_eg_endcaps_
 
TH1F * histSclE5x5_endcaps_
 
TH1F * histSclEn_
 
TH1F * histSclEoEtrue_barrel
 
TH1F * histSclEoEtrue_barrel_eg
 
TH1F * histSclEoEtrue_barrel_eg_new
 
TH1F * histSclEoEtrue_barrel_etagap
 
TH1F * histSclEoEtrue_barrel_etagap_new
 
TH1F * histSclEoEtrue_barrel_new
 
TH1F * histSclEoEtrue_barrel_phigap
 
TH1F * histSclEoEtrue_barrel_phigap_new
 
TH1F * histSclEoEtrue_ebeegap
 
TH1F * histSclEoEtrue_ebeegap_new
 
TH1F * histSclEoEtrue_endcaps
 
TH1F * histSclEoEtrue_endcaps_deegap
 
TH1F * histSclEoEtrue_endcaps_deegap_new
 
TH1F * histSclEoEtrue_endcaps_eg
 
TH1F * histSclEoEtrue_endcaps_eg_new
 
TH1F * histSclEoEtrue_endcaps_new
 
TH1F * histSclEoEtrue_endcaps_ringgap
 
TH1F * histSclEoEtrue_endcaps_ringgap_new
 
TH1F * histSclEoEtrueGolden_barrel
 
TH1F * histSclEoEtrueGolden_endcaps
 
TH2F * histSclEoEtruePfVsEg
 
TH1F * histSclEoEtrueShowering_barrel
 
TH1F * histSclEoEtrueShowering_endcaps
 
TH1F * histSclEt_
 
TH1F * histSclEta_
 
TH2F * histSclEtaVsPhi_
 
TH2F * histSclEtVsEta_
 
TH2F * histSclEtVsPhi_
 
TH1F * histSclPhi_
 
TH1F * histSclSigEtaEta_
 
TH1F * histSclSigEtaEta_barrel_
 
TH1F * histSclSigEtaEta_eg_
 
TH1F * histSclSigEtaEta_eg_barrel_
 
TH1F * histSclSigEtaEta_eg_endcaps_
 
TH1F * histSclSigEtaEta_endcaps_
 
TH1F * histSclSigIEtaIEta_
 
TH1F * histSclSigIEtaIEta_barrel_
 
TH1F * histSclSigIEtaIEta_eg_
 
TH1F * histSclSigIEtaIEta_eg_barrel_
 
TH1F * histSclSigIEtaIEta_eg_endcaps_
 
TH1F * histSclSigIEtaIEta_endcaps_
 
double hoemax
 
double hoemin
 
double lhitsmax
 
std::vector< int > matchingIDs_
 
std::vector< int > matchingMotherIDs_
 
double maxAbsEta_
 
double maxPt_
 
float mcEnergy [10]
 
float mcEta [10]
 
float mcPhi [10]
 
float mcPt [10]
 
float mcQ [10]
 
edm::InputTag mcTruthCollection_
 
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 nbinpoptrue
 
int nbinpt
 
int nbinpt2D
 
int nbinpteff
 
int nbinxyz
 
std::string outputFile_
 
edm::ESHandle< TrackerGeometrypDD
 
double phimax
 
double phimin
 
double pmax
 
double poptruemax
 
double poptruemin
 
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::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
CurrentProcessingContext const * currentContext () const
 
- 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 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 analyzer using MC truth

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

Definition at line 39 of file GsfElectronMCAnalyzer.h.

Constructor & Destructor Documentation

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

Definition at line 52 of file GsfElectronMCAnalyzer.cc.

References deltaR_, edm::ParameterSet::getParameter(), phimax, phimin, and AlCaHLTBitMon_QueryRunRegistry::string.

53  {
54  outputFile_ = conf.getParameter<std::string>("outputFile");
55  histfile_ = new TFile(outputFile_.c_str(),"RECREATE");
56  electronCollection_=conf.getParameter<edm::InputTag>("electronCollection");
57  mcTruthCollection_ = conf.getParameter<edm::InputTag>("mcTruthCollection");
58  readAOD_ = conf.getParameter<bool>("readAOD");
59  maxPt_ = conf.getParameter<double>("MaxPt");
60  maxAbsEta_ = conf.getParameter<double>("MaxAbsEta");
61  deltaR_ = conf.getParameter<double>("DeltaR");
62  matchingIDs_ = conf.getParameter<std::vector<int> >("MatchingID");
63  matchingMotherIDs_ = conf.getParameter<std::vector<int> >("MatchingMotherID");
64  edm::ParameterSet pset =
65  conf.getParameter<edm::ParameterSet>("HistosConfigurationMC") ;
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  nbinpoptrue= pset.getParameter<int>("Nbinpoptrue");
106  poptruemin=pset.getParameter<double>("Poptruemin");
107  poptruemax=pset.getParameter<double>("Poptruemax");
108  nbinmee= pset.getParameter<int>("Nbinmee");
109  meemin=pset.getParameter<double>("Meemin");
110  meemax=pset.getParameter<double>("Meemax");
111  nbinhoe= pset.getParameter<int>("Nbinhoe");
112  hoemin=pset.getParameter<double>("Hoemin");
113  hoemax=pset.getParameter<double>("Hoemax");
114  }
T getParameter(std::string const &) const
std::vector< int > matchingMotherIDs_
std::vector< int > matchingIDs_
GsfElectronMCAnalyzer::~GsfElectronMCAnalyzer ( )
virtual

Definition at line 1727 of file GsfElectronMCAnalyzer.cc.

1728 {
1729 
1730  // do anything here that needs to be done at desctruction time
1731  // (e.g. close files, deallocate resources etc.)
1732  histfile_->Write();
1733  histfile_->Close();
1734 
1735 }

Member Function Documentation

void GsfElectronMCAnalyzer::analyze ( const edm::Event e,
const edm::EventSetup c 
)
virtual

Implements edm::EDAnalyzer.

Definition at line 1743 of file GsfElectronMCAnalyzer.cc.

References abs, reco::GsfElectron::ambiguousGsfTracksSize(), reco::GsfElectron::BIGBREM, reco::GsfElectron::caloEnergy(), edm::RefToBase< T >::castTo(), reco::LeafCandidate::charge(), reco::GsfElectron::classification(), gather_cfg::cout, reco::GsfElectron::deltaEtaEleClusterTrackAtCalo(), reco::GsfElectron::deltaEtaSeedClusterTrackAtCalo(), reco::GsfElectron::deltaEtaSuperClusterTrackAtVtx(), reco::GsfElectron::deltaPhiEleClusterTrackAtCalo(), reco::GsfElectron::deltaPhiSeedClusterTrackAtCalo(), reco::GsfElectron::deltaPhiSuperClusterTrackAtVtx(), reco::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(), reco::GsfElectron::eSeedClusterOverP(), reco::GsfElectron::eSeedClusterOverPout(), reco::GsfElectron::eSuperClusterOverP(), reco::LeafCandidate::eta(), reco::GsfElectron::fbrem(), HcalObjRepresent::Fill(), genParticleCandidates2GenParticles_cfi::genParticles, edm::Event::getByLabel(), reco::GsfElectron::GOLDEN, gsfElectrons_cfi::gsfElectrons, reco::GsfElectron::gsfTrack(), reco::GsfElectron::hadronicOverEm(), i, edm::EventBase::id(), reco::GsfElectron::isEB(), reco::GsfElectron::isEBEEGap(), reco::GsfElectron::isEBEtaGap(), reco::GsfElectron::isEBPhiGap(), reco::GsfElectron::isEE(), reco::GsfElectron::isEEDeeGap(), reco::GsfElectron::isEERingGap(), edm::Ref< C, T, F >::isNull(), reco::Candidate::mother(), reco::GsfElectron::mva(), reco::LeafCandidate::p(), reco::Candidate::pdgId(), reco::GsfElectron::pflowSuperCluster(), reco::LeafCandidate::phi(), pi, funct::pow(), edm::Handle< T >::product(), reco::LeafCandidate::pt(), reco::LeafCandidate::py(), dttmaxenums::R, reco::GsfElectron::scE1x5(), reco::GsfElectron::scE2x5Max(), reco::GsfElectron::scE5x5(), reco::GsfElectron::scSigmaEtaEta(), reco::GsfElectron::scSigmaIEtaIEta(), reco::GsfElectron::SHOWERING, mathSSE::sqrt(), reco::GsfElectron::superCluster(), reco::GsfElectron::trackerDrivenSeed(), reco::GsfElectron::trackMomentumAtVtx(), reco::GsfElectron::trackMomentumOut(), and reco::LeafCandidate::vertex().

1744 {
1745  std::cout << "analyzing new event " << std::endl;
1746  // get electrons
1747 
1749  iEvent.getByLabel(electronCollection_,gsfElectrons);
1750  edm::LogInfo("")<<"\n\n =================> Treating event "<<iEvent.id()<<" Number of electrons "<<gsfElectrons.product()->size();
1751 
1753  iEvent.getByLabel(mcTruthCollection_, genParticles);
1754 
1755  histNum_->Fill((*gsfElectrons).size());
1756 
1757  // all rec electrons
1758  for (reco::GsfElectronCollection::const_iterator gsfIter=gsfElectrons->begin();
1759  gsfIter!=gsfElectrons->end(); gsfIter++){
1760  // preselect electrons
1761  if (gsfIter->pt()>maxPt_ || std::abs(gsfIter->eta())>maxAbsEta_) continue;
1762  h_ele_EoverP_all -> Fill( gsfIter->eSuperClusterOverP() );
1763  h_ele_EseedOP_all -> Fill( gsfIter->eSeedClusterOverP() );
1764  h_ele_EoPout_all -> Fill( gsfIter->eSeedClusterOverPout() );
1765  h_ele_EeleOPout_all -> Fill( gsfIter->eEleClusterOverPout() );
1766  h_ele_dEtaSc_propVtx_all -> Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
1767  h_ele_dPhiSc_propVtx_all -> Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
1768  h_ele_dEtaCl_propOut_all -> Fill(gsfIter->deltaEtaSeedClusterTrackAtCalo());
1769  h_ele_dPhiCl_propOut_all -> Fill(gsfIter->deltaPhiSeedClusterTrackAtCalo());
1770  h_ele_HoE_all -> Fill( gsfIter->hadronicOverEm() );
1771  double d = gsfIter->vertex().x()*gsfIter->vertex().x()+gsfIter->vertex().y()*gsfIter->vertex().y();
1772  h_ele_TIP_all -> Fill( sqrt(d) );
1773  h_ele_vertexEta_all -> Fill( gsfIter->eta() );
1774  h_ele_vertexPt_all -> Fill( gsfIter->pt() );
1775  h_ele_Et_all -> Fill( gsfIter->superCluster()->energy()/cosh(gsfIter->superCluster()->eta()));
1776  float enrj1=gsfIter->superCluster()->energy();
1777  // mee
1778  for (reco::GsfElectronCollection::const_iterator gsfIter2=gsfIter+1;
1779  gsfIter2!=gsfElectrons->end(); gsfIter2++){
1780  math::XYZTLorentzVector p12 = (*gsfIter).p4()+(*gsfIter2).p4();
1781  float mee2 = p12.Dot(p12);
1782  float enrj2=gsfIter2->superCluster()->energy();
1783  h_ele_mee_all -> Fill(sqrt(mee2));
1784  h_ele_E2mnE1vsMee_all->Fill(sqrt(mee2),enrj2-enrj1);
1785  if (gsfIter->ecalDrivenSeed() && gsfIter2->ecalDrivenSeed()) h_ele_E2mnE1vsMee_egeg_all->Fill(sqrt(mee2),enrj2-enrj1);
1786  if (gsfIter->charge()*gsfIter2->charge()<0.) {
1787  h_ele_mee_os -> Fill(sqrt(mee2));
1788  if (gsfIter->isEB() && gsfIter2->isEB()) h_ele_mee_os_ebeb -> Fill(sqrt(mee2));
1789  if ((gsfIter->isEB() && gsfIter2->isEE()) || (gsfIter->isEE() && gsfIter2->isEB())) h_ele_mee_os_ebee -> Fill(sqrt(mee2));
1790  if (gsfIter->isEE() && gsfIter2->isEE()) h_ele_mee_os_eeee -> Fill(sqrt(mee2));
1791  if ((gsfIter->classification()==GsfElectron::GOLDEN && gsfIter2->classification()==GsfElectron::GOLDEN) ||
1792  (gsfIter->classification()==GsfElectron::GOLDEN && gsfIter2->classification()==GsfElectron::BIGBREM) ||
1793  //(gsfIter->classification()==GsfElectron::GOLDEN && gsfIter2->classification()==GsfElectron::OLDNARROW) ||
1794  (gsfIter->classification()==GsfElectron::BIGBREM && gsfIter2->classification()==GsfElectron::GOLDEN) ||
1795  (gsfIter->classification()==GsfElectron::BIGBREM && gsfIter2->classification()==GsfElectron::BIGBREM)/* ||
1796  (gsfIter->classification()==GsfElectron::BIGBREM && gsfIter2->classification()==GsfElectron::OLDNARROW) ||
1797  (gsfIter->classification()==GsfElectron::OLDNARROW && gsfIter2->classification()==GsfElectron::GOLDEN) ||
1798  (gsfIter->classification()==GsfElectron::OLDNARROW && gsfIter2->classification()==GsfElectron::BIGBREM) ||
1799  (gsfIter->classification()==GsfElectron::OLDNARROW && gsfIter2->classification()==GsfElectron::OLDNARROW)*/ )
1800  { h_ele_mee_os_gg -> Fill(sqrt(mee2));}
1801  else if (
1802  (gsfIter->classification()==GsfElectron::SHOWERING && gsfIter2->classification()==GsfElectron::SHOWERING) ||
1803  (gsfIter->classification()==GsfElectron::SHOWERING && gsfIter2->isGap()) ||
1804  (gsfIter->isGap() && gsfIter2->classification()==GsfElectron::SHOWERING) ||
1805  (gsfIter->isGap() && gsfIter2->isGap()))
1806  { h_ele_mee_os_bb -> Fill(sqrt(mee2));}
1807  else
1808  { h_ele_mee_os_gb -> Fill(sqrt(mee2));}
1809  }
1810  }
1811  }
1812 
1813  int mcNum=0, gamNum=0, eleNum=0;
1814  bool matchingID, matchingMotherID;
1815 
1816  // charge mis-ID
1817  for (reco::GenParticleCollection::const_iterator mcIter=genParticles->begin(); mcIter != genParticles->end(); mcIter++ ) {
1818 
1819  // select requested matching gen particle
1820  matchingID=false;
1821  for (unsigned int i=0; i<matchingIDs_.size(); i++)
1822  if ( mcIter->pdgId() == matchingIDs_[i] ) matchingID=true;
1823 
1824  if (matchingID) {
1825 
1826  // select requested mother matching gen particle
1827  // always include single particle with no mother
1828  const Candidate * mother = mcIter->mother();
1829  matchingMotherID=false;
1830  for (unsigned int i=0; i<matchingMotherIDs_.size(); i++)
1831  if ((mother == 0) || ((mother != 0) && mother->pdgId() == matchingMotherIDs_[i]) ) matchingMotherID=true;
1832 
1833  if (matchingMotherID) {
1834 
1835  if (mcIter->pt()> maxPt_ || std::abs(mcIter->eta())> maxAbsEta_) continue;
1836 
1837  // suppress the endcaps
1838  //if (std::abs(mcIter->eta()) > 1.5) continue;
1839  // select central z
1840  //if ( std::abs(mcIter->production_vertex()->position().z())>50.) continue;
1841 
1842  // looking for the best matching gsf electron
1843  bool okGsfFound = false;
1844  double gsfOkRatio = 999999.;
1845 
1846  // find best matched electron
1847  reco::GsfElectron bestGsfElectron;
1848  for (reco::GsfElectronCollection::const_iterator gsfIter=gsfElectrons->begin();
1849  gsfIter!=gsfElectrons->end(); gsfIter++){
1850 
1851  double dphi = gsfIter->phi()-mcIter->phi();
1852  if (std::abs(dphi)>CLHEP::pi)
1853  dphi = dphi < 0? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi;
1854  double deltaR = sqrt(std::pow((gsfIter->eta()-mcIter->eta()),2) + std::pow(dphi,2));
1855  if ( deltaR < deltaR_ ){
1856  double mc_charge = mcIter->pdgId() == 11 ? -1. : 1. ;
1857  h_ele_ChargeMnChargeTrue -> Fill( std::abs(gsfIter->charge()-mc_charge));
1858  // require here a charge mismatch
1859  if ( ( (mcIter->pdgId() == 11) && (gsfIter->charge() > 0.) ) ||
1860  ( (mcIter->pdgId() == -11) && (gsfIter->charge() < 0.) ) )
1861  {
1862  double tmpGsfRatio = gsfIter->p()/mcIter->p();
1863  if ( std::abs(tmpGsfRatio-1) < std::abs(gsfOkRatio-1) ) {
1864  gsfOkRatio = tmpGsfRatio;
1865  bestGsfElectron=*gsfIter;
1866  okGsfFound = true;
1867  }
1868  }
1869  }
1870  } // loop over rec ele to look for the best one
1871 
1872  // analysis when the mc track is found
1873  if (okGsfFound)
1874  {
1875 
1876  // generated distributions for matched electrons
1877  h_ele_simPt_matched_qmisid -> Fill( mcIter->pt() );
1878  h_ele_simPhi_matched_qmisid -> Fill( mcIter->phi() );
1879  h_ele_simAbsEta_matched_qmisid -> Fill( std::abs(mcIter->eta()) );
1880  h_ele_simEta_matched_qmisid -> Fill( mcIter->eta() );
1881  h_ele_simZ_matched_qmisid -> Fill( mcIter->vz() );
1882 
1883  }
1884  }
1885  }
1886 
1887  }
1888 
1889  // association mc-reco
1890  for (reco::GenParticleCollection::const_iterator mcIter=genParticles->begin(); mcIter != genParticles->end(); mcIter++ ) {
1891 
1892  // number of mc particles
1893  mcNum++;
1894 
1895  // counts photons
1896  if (mcIter->pdgId() == 22 ){ gamNum++; }
1897 
1898  // select requested matching gen particle
1899  matchingID=false;
1900  for (unsigned int i=0; i<matchingIDs_.size(); i++)
1901  if ( mcIter->pdgId() == matchingIDs_[i] ) matchingID=true;
1902 
1903  if (matchingID) {
1904 
1905  // select requested mother matching gen particle
1906  // always include single particle with no mother
1907  const Candidate * mother = mcIter->mother();
1908  matchingMotherID=false;
1909  for (unsigned int i=0; i<matchingMotherIDs_.size(); i++)
1910  if ((mother == 0) || ((mother != 0) && mother->pdgId() == matchingMotherIDs_[i]) ) matchingMotherID=true;
1911 
1912  if (matchingMotherID) {
1913 
1914  if (mcIter->pt()> maxPt_ || std::abs(mcIter->eta())> maxAbsEta_) continue;
1915 
1916  // suppress the endcaps
1917  //if (std::abs(mcIter->eta()) > 1.5) continue;
1918  // select central z
1919  //if ( std::abs(mcIter->production_vertex()->position().z())>50.) continue;
1920 
1921  eleNum++;
1922  h_simEta -> Fill( mcIter->eta() );
1923  h_simAbsEta -> Fill( std::abs(mcIter->eta()) );
1924  h_simP -> Fill( mcIter->p() );
1925  h_simPt -> Fill( mcIter->pt() );
1926  h_simPhi -> Fill( mcIter->phi() );
1927  h_simZ -> Fill( mcIter->vz() );
1928  h_simPtEta -> Fill( mcIter->eta(),mcIter->pt() );
1929 
1930  // looking for the best matching gsf electron
1931  bool okGsfFound = false;
1932  double gsfOkRatio = 999999.;
1933 
1934  // find best matched electron
1935  reco::GsfElectron bestGsfElectron;
1936  for (reco::GsfElectronCollection::const_iterator gsfIter=gsfElectrons->begin();
1937  gsfIter!=gsfElectrons->end(); gsfIter++){
1938 
1939  double dphi = gsfIter->phi()-mcIter->phi();
1940  if (std::abs(dphi)>CLHEP::pi)
1941  dphi = dphi < 0? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi;
1942  double deltaR = sqrt(std::pow((gsfIter->eta()-mcIter->eta()),2) + std::pow(dphi,2));
1943  if ( deltaR < deltaR_ ){
1944  if ( ( (mcIter->pdgId() == 11) && (gsfIter->charge() < 0.) ) ||
1945  ( (mcIter->pdgId() == -11) && (gsfIter->charge() > 0.) ) )
1946  {
1947  double tmpGsfRatio = gsfIter->p()/mcIter->p();
1948  if ( std::abs(tmpGsfRatio-1) < std::abs(gsfOkRatio-1) ) {
1949  gsfOkRatio = tmpGsfRatio;
1950  bestGsfElectron=*gsfIter;
1951  okGsfFound = true;
1952  }
1953  }
1954  }
1955  } // loop over rec ele to look for the best one
1956 
1957  // analysis when the mc track is found
1958  if (okGsfFound){
1959 
1960  // electron related distributions
1961  h_ele_charge -> Fill( bestGsfElectron.charge() );
1962  h_ele_chargeVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.charge() );
1963  h_ele_chargeVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.charge() );
1964  h_ele_chargeVsPt -> Fill( bestGsfElectron.pt(),bestGsfElectron.charge() );
1965  h_ele_vertexP -> Fill( bestGsfElectron.p() );
1966  h_ele_vertexPt -> Fill( bestGsfElectron.pt() );
1967  h_ele_Et -> Fill( bestGsfElectron.superCluster()->energy()/cosh(bestGsfElectron.superCluster()->eta()));
1968  h_ele_vertexPtVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.pt() );
1969  h_ele_vertexPtVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.pt() );
1970  h_ele_vertexEta -> Fill( bestGsfElectron.eta() );
1971  // generated distributions for matched electrons
1972  h_ele_simPt_matched -> Fill( mcIter->pt() );
1973  h_ele_simPhi_matched -> Fill( mcIter->phi() );
1974  h_ele_simAbsEta_matched -> Fill( std::abs(mcIter->eta()) );
1975  h_ele_simEta_matched -> Fill( mcIter->eta() );
1976  h_ele_simPtEta_matched -> Fill( mcIter->eta(),mcIter->pt() );
1977  h_ele_vertexEtaVsPhi -> Fill( bestGsfElectron.phi(),bestGsfElectron.eta() );
1978  h_ele_vertexPhi -> Fill( bestGsfElectron.phi() );
1979  h_ele_vertexX -> Fill( bestGsfElectron.vertex().x() );
1980  h_ele_vertexY -> Fill( bestGsfElectron.vertex().y() );
1981  h_ele_vertexZ -> Fill( bestGsfElectron.vertex().z() );
1982  h_ele_simZ_matched -> Fill( mcIter->vz() );
1983  double d = (bestGsfElectron.vertex().x()-mcIter->vx())
1984  *(bestGsfElectron.vertex().x()-mcIter->vx())+
1985  (bestGsfElectron.vertex().y()-mcIter->vy())
1986  *(bestGsfElectron.vertex().y()-mcIter->vy());
1987  d = sqrt(d);
1988  h_ele_vertexTIP -> Fill( d );
1989  h_ele_vertexTIPVsEta -> Fill( bestGsfElectron.eta(), d );
1990  h_ele_vertexTIPVsPhi -> Fill( bestGsfElectron.phi(), d );
1991  h_ele_vertexTIPVsPt -> Fill( bestGsfElectron.pt(), d );
1992  h_ele_EtaMnEtaTrue -> Fill( bestGsfElectron.eta()-mcIter->eta());
1993  if (bestGsfElectron.isEB()) h_ele_EtaMnEtaTrue_barrel -> Fill( bestGsfElectron.eta()-mcIter->eta());
1994  if (bestGsfElectron.isEE()) h_ele_EtaMnEtaTrue_endcaps -> Fill( bestGsfElectron.eta()-mcIter->eta());
1995  h_ele_EtaMnEtaTrueVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eta()-mcIter->eta());
1996  h_ele_EtaMnEtaTrueVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eta()-mcIter->eta());
1997  h_ele_EtaMnEtaTrueVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.eta()-mcIter->eta());
1998  h_ele_PhiMnPhiTrue -> Fill( bestGsfElectron.phi()-mcIter->phi());
1999  if (bestGsfElectron.isEB()) h_ele_PhiMnPhiTrue_barrel -> Fill( bestGsfElectron.phi()-mcIter->phi());
2000  if (bestGsfElectron.isEE()) h_ele_PhiMnPhiTrue_endcaps -> Fill( bestGsfElectron.phi()-mcIter->phi());
2001  h_ele_PhiMnPhiTrue2 -> Fill( bestGsfElectron.phi()-mcIter->phi());
2002  h_ele_PhiMnPhiTrueVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.phi()-mcIter->phi());
2003  h_ele_PhiMnPhiTrueVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.phi()-mcIter->phi());
2004  h_ele_PhiMnPhiTrueVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.phi()-mcIter->phi());
2005  h_ele_PoPtrue -> Fill( bestGsfElectron.p()/mcIter->p());
2006  h_ele_PtoPttrue -> Fill( bestGsfElectron.pt()/mcIter->pt());
2007  h_ele_PoPtrueVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.p()/mcIter->p());
2008  h_ele_PoPtrueVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.p()/mcIter->p());
2009  h_ele_PoPtrueVsPt -> Fill( bestGsfElectron.py(), bestGsfElectron.p()/mcIter->p());
2010  if (bestGsfElectron.isEB()) h_ele_PoPtrue_barrel -> Fill( bestGsfElectron.p()/mcIter->p());
2011  if (bestGsfElectron.isEE()) h_ele_PoPtrue_endcaps -> Fill( bestGsfElectron.p()/mcIter->p());
2012  if (bestGsfElectron.isEB() && bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PoPtrue_golden_barrel -> Fill( bestGsfElectron.p()/mcIter->p());
2013  if (bestGsfElectron.isEE() && bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PoPtrue_golden_endcaps -> Fill( bestGsfElectron.p()/mcIter->p());
2014  if (bestGsfElectron.isEB() && bestGsfElectron.classification() == GsfElectron::SHOWERING) h_ele_PoPtrue_showering_barrel -> Fill( bestGsfElectron.p()/mcIter->p());
2015  if (bestGsfElectron.isEE() && bestGsfElectron.classification() == GsfElectron::SHOWERING) h_ele_PoPtrue_showering_endcaps -> Fill( bestGsfElectron.p()/mcIter->p());
2016  if (bestGsfElectron.isEB()) h_ele_PtoPttrue_barrel -> Fill( bestGsfElectron.pt()/mcIter->pt());
2017  if (bestGsfElectron.isEE()) h_ele_PtoPttrue_endcaps -> Fill( bestGsfElectron.pt()/mcIter->pt());
2018 
2019  // supercluster related distributions
2020  reco::SuperClusterRef sclRef = bestGsfElectron.superCluster();
2021  if (!bestGsfElectron.ecalDrivenSeed()&&bestGsfElectron.trackerDrivenSeed()) sclRef = bestGsfElectron.pflowSuperCluster();
2022  histSclEn_->Fill(sclRef->energy());
2023  double R=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y() +sclRef->z()*sclRef->z());
2024  double Rt=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y());
2025  histSclEt_->Fill(sclRef->energy()*(Rt/R));
2026  histSclEtVsEta_->Fill(sclRef->eta(),sclRef->energy()*(Rt/R));
2027  histSclEtVsPhi_->Fill(sclRef->phi(),sclRef->energy()*(Rt/R));
2028  if (bestGsfElectron.isEB()) histSclEoEtrue_barrel->Fill(sclRef->energy()/mcIter->p());
2029  if (bestGsfElectron.isEE()) histSclEoEtrue_endcaps->Fill(sclRef->energy()/mcIter->p());
2030  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed()) histSclEoEtrue_barrel_eg->Fill(sclRef->energy()/mcIter->p());
2031  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed()) histSclEoEtrue_endcaps_eg->Fill(sclRef->energy()/mcIter->p());
2032  if (bestGsfElectron.isEB() && bestGsfElectron.isEBEtaGap()) histSclEoEtrue_barrel_etagap->Fill(sclRef->energy()/mcIter->p());
2033  if (bestGsfElectron.isEB() && bestGsfElectron.isEBPhiGap()) histSclEoEtrue_barrel_phigap->Fill(sclRef->energy()/mcIter->p());
2034  if (bestGsfElectron.isEBEEGap()) histSclEoEtrue_ebeegap->Fill(sclRef->energy()/mcIter->p());
2035  //if (bestGsfElectron.isEE()) histSclEoEtrue_endcaps->Fill(sclRef->energy()/mcIter->p());
2036  if (bestGsfElectron.isEE() && bestGsfElectron.isEEDeeGap()) histSclEoEtrue_endcaps_deegap->Fill(sclRef->energy()/mcIter->p());
2037  if (bestGsfElectron.isEE() && bestGsfElectron.isEERingGap()) histSclEoEtrue_endcaps_ringgap->Fill(sclRef->energy()/mcIter->p());
2038  if (bestGsfElectron.isEB()) histSclEoEtrue_barrel_new->Fill(sclRef->energy()/mcIter->p());
2039  if (bestGsfElectron.isEE()) histSclEoEtrue_endcaps_new->Fill(sclRef->energy()/mcIter->p());
2040  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed()) histSclEoEtrue_barrel_eg_new->Fill(sclRef->energy()/mcIter->p());
2041  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed()) histSclEoEtrue_endcaps_eg_new->Fill(sclRef->energy()/mcIter->p());
2042  if (bestGsfElectron.isEB() && bestGsfElectron.isEBEtaGap()) histSclEoEtrue_barrel_etagap_new->Fill(sclRef->energy()/mcIter->p());
2043  if (bestGsfElectron.isEB() && bestGsfElectron.isEBPhiGap()) histSclEoEtrue_barrel_phigap_new->Fill(sclRef->energy()/mcIter->p());
2044  if (bestGsfElectron.isEBEEGap()) histSclEoEtrue_ebeegap_new->Fill(sclRef->energy()/mcIter->p());
2045  //if (bestGsfElectron.isEE()) histSclEoEtrue_endcaps_new->Fill(sclRef->energy()/mcIter->p());
2046  if (bestGsfElectron.isEE() && bestGsfElectron.isEEDeeGap()) histSclEoEtrue_endcaps_deegap_new->Fill(sclRef->energy()/mcIter->p());
2047  if (bestGsfElectron.isEE() && bestGsfElectron.isEERingGap()) histSclEoEtrue_endcaps_ringgap_new->Fill(sclRef->energy()/mcIter->p());
2048  histSclEta_->Fill(sclRef->eta());
2049  histSclEtaVsPhi_->Fill(sclRef->phi(),sclRef->eta());
2050  histSclPhi_->Fill(sclRef->phi());
2051  histSclSigEtaEta_->Fill(bestGsfElectron.scSigmaEtaEta());
2052  if (bestGsfElectron.isEB()) histSclSigEtaEta_barrel_->Fill(bestGsfElectron.scSigmaEtaEta());
2053  if (bestGsfElectron.isEE()) histSclSigEtaEta_endcaps_->Fill(bestGsfElectron.scSigmaEtaEta());
2054  histSclSigIEtaIEta_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2055  if (bestGsfElectron.isEB()) histSclSigIEtaIEta_barrel_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2056  if (bestGsfElectron.isEE()) histSclSigIEtaIEta_endcaps_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2057  histSclE1x5_->Fill(bestGsfElectron.scE1x5());
2058  if (bestGsfElectron.isEB()) histSclE1x5_barrel_->Fill(bestGsfElectron.scE1x5());
2059  if (bestGsfElectron.isEE()) histSclE1x5_endcaps_->Fill(bestGsfElectron.scE1x5());
2060  histSclE2x5max_->Fill(bestGsfElectron.scE2x5Max());
2061  if (bestGsfElectron.isEB()) histSclE2x5max_barrel_->Fill(bestGsfElectron.scE2x5Max());
2062  if (bestGsfElectron.isEE()) histSclE2x5max_endcaps_->Fill(bestGsfElectron.scE2x5Max());
2063  histSclE5x5_->Fill(bestGsfElectron.scE5x5());
2064  if (bestGsfElectron.isEB()) histSclE5x5_barrel_->Fill(bestGsfElectron.scE5x5());
2065  if (bestGsfElectron.isEE()) histSclE5x5_endcaps_->Fill(bestGsfElectron.scE5x5());
2066  if (bestGsfElectron.ecalDrivenSeed()) histSclSigIEtaIEta_eg_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2067  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) histSclSigIEtaIEta_eg_barrel_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2068  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) histSclSigIEtaIEta_eg_endcaps_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2069  if (bestGsfElectron.ecalDrivenSeed())histSclE1x5_eg_->Fill(bestGsfElectron.scE1x5());
2070  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())histSclE1x5_eg_barrel_->Fill(bestGsfElectron.scE1x5());
2071  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())histSclE1x5_eg_endcaps_->Fill(bestGsfElectron.scE1x5());
2072  if (bestGsfElectron.ecalDrivenSeed())histSclE2x5max_eg_->Fill(bestGsfElectron.scE2x5Max());
2073  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())histSclE2x5max_eg_barrel_->Fill(bestGsfElectron.scE2x5Max());
2074  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())histSclE2x5max_eg_endcaps_->Fill(bestGsfElectron.scE2x5Max());
2075  if (bestGsfElectron.ecalDrivenSeed())histSclE5x5_eg_->Fill(bestGsfElectron.scE5x5());
2076  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())histSclE5x5_eg_barrel_->Fill(bestGsfElectron.scE5x5());
2077  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())histSclE5x5_eg_endcaps_->Fill(bestGsfElectron.scE5x5());
2078  float pfEnergy=0., egEnergy=0.;
2079  if (!bestGsfElectron.superCluster().isNull()) egEnergy = bestGsfElectron.superCluster()->energy();
2080  if (!bestGsfElectron.pflowSuperCluster().isNull()) pfEnergy = bestGsfElectron.pflowSuperCluster()->energy();
2081  histSclEoEtruePfVsEg->Fill(egEnergy/mcIter->p(),pfEnergy/mcIter->p());
2082 
2083  // track related distributions
2084  h_ele_ambiguousTracks -> Fill( bestGsfElectron.ambiguousGsfTracksSize() );
2085  h_ele_ambiguousTracksVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.ambiguousGsfTracksSize() );
2086  h_ele_ambiguousTracksVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.ambiguousGsfTracksSize() );
2087  h_ele_ambiguousTracksVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.ambiguousGsfTracksSize() );
2088  if (!readAOD_) { // track extra does not exist in AOD
2089  h_ele_foundHits -> Fill( bestGsfElectron.gsfTrack()->numberOfValidHits() );
2090  if (bestGsfElectron.isEB()) h_ele_foundHits_barrel -> Fill( bestGsfElectron.gsfTrack()->numberOfValidHits() );
2091  if (bestGsfElectron.isEE()) h_ele_foundHits_endcaps -> Fill( bestGsfElectron.gsfTrack()->numberOfValidHits() );
2092  h_ele_foundHitsVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
2093  h_ele_foundHitsVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
2094  h_ele_foundHitsVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfValidHits() );
2095  h_ele_lostHits -> Fill( bestGsfElectron.gsfTrack()->numberOfLostHits() );
2096  if (bestGsfElectron.isEB()) h_ele_lostHits_barrel -> Fill( bestGsfElectron.gsfTrack()->numberOfLostHits() );
2097  if (bestGsfElectron.isEE()) h_ele_lostHits_endcaps -> Fill( bestGsfElectron.gsfTrack()->numberOfLostHits() );
2098  h_ele_lostHitsVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
2099  h_ele_lostHitsVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
2100  h_ele_lostHitsVsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfLostHits() );
2101  h_ele_chi2 -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2() );
2102  if (bestGsfElectron.isEB()) h_ele_chi2_barrel -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2() );
2103  if (bestGsfElectron.isEE()) h_ele_chi2_endcaps -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2() );
2104  h_ele_chi2VsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->normalizedChi2() );
2105  h_ele_chi2VsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->normalizedChi2() );
2106  h_ele_chi2VsPt -> Fill( bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->normalizedChi2() );
2107  }
2108  // from gsf track interface, hence using mean
2109  if (!readAOD_) { // track extra does not exist in AOD
2110  h_ele_PinMnPout -> Fill( bestGsfElectron.gsfTrack()->innerMomentum().R() - bestGsfElectron.gsfTrack()->outerMomentum().R() );
2111  h_ele_outerP -> Fill( bestGsfElectron.gsfTrack()->outerMomentum().R() );
2112  h_ele_outerPt -> Fill( bestGsfElectron.gsfTrack()->outerMomentum().Rho() );
2113  }
2114  // from electron interface, hence using mode
2115  h_ele_PinMnPout_mode -> Fill( bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2116  h_ele_PinMnPoutVsEta_mode -> Fill( bestGsfElectron.eta(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2117  h_ele_PinMnPoutVsPhi_mode -> Fill( bestGsfElectron.phi(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2118  h_ele_PinMnPoutVsPt_mode -> Fill( bestGsfElectron.pt(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2119  h_ele_PinMnPoutVsE_mode -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2120  if (!readAOD_) // track extra does not exist in AOD
2121  h_ele_PinMnPoutVsChi2_mode -> Fill( bestGsfElectron.gsfTrack()->normalizedChi2(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R() );
2122  h_ele_outerP_mode -> Fill( bestGsfElectron.trackMomentumOut().R() );
2123  h_ele_outerPVsEta_mode -> Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().R() );
2124  h_ele_outerPt_mode -> Fill( bestGsfElectron.trackMomentumOut().Rho() );
2125  h_ele_outerPtVsEta_mode -> Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().Rho() );
2126  h_ele_outerPtVsPhi_mode -> Fill(bestGsfElectron.phi(), bestGsfElectron.trackMomentumOut().Rho() );
2127  h_ele_outerPtVsPt_mode -> Fill(bestGsfElectron.pt(), bestGsfElectron.trackMomentumOut().Rho() );
2128 
2129  if (!readAOD_) { // track extra does not exist in AOD
2130  edm::RefToBase<TrajectorySeed> seed = bestGsfElectron.gsfTrack()->extra()->seedRef();
2131  ElectronSeedRef elseed=seed.castTo<ElectronSeedRef>();
2132  h_ele_seed_dphi2_-> Fill(elseed->dPhi2());
2133  h_ele_seed_dphi2VsEta_-> Fill(bestGsfElectron.eta(), elseed->dPhi2());
2134  h_ele_seed_dphi2VsPt_-> Fill(bestGsfElectron.pt(), elseed->dPhi2()) ;
2135  h_ele_seed_drz2_-> Fill(elseed->dRz2());
2136  h_ele_seed_drz2VsEta_-> Fill(bestGsfElectron.eta(), elseed->dRz2());
2137  h_ele_seed_drz2VsPt_-> Fill(bestGsfElectron.pt(), elseed->dRz2());
2138  h_ele_seed_subdet2_-> Fill(elseed->subDet2());
2139  }
2140  // match distributions
2141  h_ele_EoP -> Fill( bestGsfElectron.eSuperClusterOverP() );
2142  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg -> Fill( bestGsfElectron.eSuperClusterOverP() );
2143  if (bestGsfElectron.isEB()) h_ele_EoP_barrel -> Fill( bestGsfElectron.eSuperClusterOverP() );
2144  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg_barrel -> Fill( bestGsfElectron.eSuperClusterOverP() );
2145  if (bestGsfElectron.isEE()) h_ele_EoP_endcaps -> Fill( bestGsfElectron.eSuperClusterOverP() );
2146  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoP_eg_endcaps -> Fill( bestGsfElectron.eSuperClusterOverP() );
2147  h_ele_EoPVsEta -> Fill(bestGsfElectron.eta(), bestGsfElectron.eSuperClusterOverP() );
2148  h_ele_EoPVsPhi -> Fill(bestGsfElectron.phi(), bestGsfElectron.eSuperClusterOverP() );
2149  h_ele_EoPVsE -> Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSuperClusterOverP() );
2150  h_ele_EseedOP -> Fill( bestGsfElectron.eSeedClusterOverP() );
2151  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg -> Fill( bestGsfElectron.eSeedClusterOverP() );
2152  if (bestGsfElectron.isEB()) h_ele_EseedOP_barrel -> Fill( bestGsfElectron.eSeedClusterOverP() );
2153  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg_barrel -> Fill( bestGsfElectron.eSeedClusterOverP() );
2154  if (bestGsfElectron.isEE()) h_ele_EseedOP_endcaps -> Fill( bestGsfElectron.eSeedClusterOverP() );
2155  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EseedOP_eg_endcaps -> Fill( bestGsfElectron.eSeedClusterOverP() );
2156  h_ele_EseedOPVsEta -> Fill(bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverP() );
2157  h_ele_EseedOPVsPhi -> Fill(bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverP() );
2158  h_ele_EseedOPVsE -> Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverP() );
2159  h_ele_EoPout -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2160  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2161  if (bestGsfElectron.isEB()) h_ele_EoPout_barrel -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2162  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg_barrel -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2163  if (bestGsfElectron.isEE()) h_ele_EoPout_endcaps -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2164  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EoPout_eg_endcaps -> Fill( bestGsfElectron.eSeedClusterOverPout() );
2165  h_ele_EoPoutVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverPout() );
2166  h_ele_EoPoutVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverPout() );
2167  h_ele_EoPoutVsE -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverPout() );
2168  h_ele_EeleOPout -> Fill( bestGsfElectron.eEleClusterOverPout() );
2169  if (bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg -> Fill( bestGsfElectron.eEleClusterOverPout() );
2170  if (bestGsfElectron.isEB()) h_ele_EeleOPout_barrel -> Fill( bestGsfElectron.eEleClusterOverPout() );
2171  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg_barrel -> Fill( bestGsfElectron.eEleClusterOverPout() );
2172  if (bestGsfElectron.isEE()) h_ele_EeleOPout_endcaps -> Fill( bestGsfElectron.eEleClusterOverPout() );
2173  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_EeleOPout_eg_endcaps -> Fill( bestGsfElectron.eEleClusterOverPout() );
2174  h_ele_EeleOPoutVsEta -> Fill( bestGsfElectron.eta(), bestGsfElectron.eEleClusterOverPout() );
2175  h_ele_EeleOPoutVsPhi -> Fill( bestGsfElectron.phi(), bestGsfElectron.eEleClusterOverPout() );
2176  h_ele_EeleOPoutVsE -> Fill( bestGsfElectron.caloEnergy(), bestGsfElectron.eEleClusterOverPout() );
2178  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2179  if (bestGsfElectron.isEB()) h_ele_dEtaSc_propVtx_barrel -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2180  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg_barrel -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2181  if (bestGsfElectron.isEE())h_ele_dEtaSc_propVtx_endcaps -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2182  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaSc_propVtx_eg_endcaps -> Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2183  h_ele_dEtaScVsEta_propVtx -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2184  h_ele_dEtaScVsPhi_propVtx -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2185  h_ele_dEtaScVsPt_propVtx -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2187  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2188  if (bestGsfElectron.isEB()) h_ele_dPhiSc_propVtx_barrel -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2189  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg_barrel -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2190  if (bestGsfElectron.isEE())h_ele_dPhiSc_propVtx_endcaps -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2191  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiSc_propVtx_eg_endcaps -> Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2192  h_ele_dPhiScVsEta_propVtx -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2193  h_ele_dPhiScVsPhi_propVtx -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2194  h_ele_dPhiScVsPt_propVtx -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2196  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2197  if (bestGsfElectron.isEB()) h_ele_dEtaCl_propOut_barrel -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2198  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2199  if (bestGsfElectron.isEE()) h_ele_dEtaCl_propOut_endcaps -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2200  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2201  h_ele_dEtaClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2202  h_ele_dEtaClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2203  h_ele_dEtaClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2205  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2206  if (bestGsfElectron.isEB()) h_ele_dPhiCl_propOut_barrel -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2207  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2208  if (bestGsfElectron.isEE()) h_ele_dPhiCl_propOut_endcaps -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2209  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2210  h_ele_dPhiClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2211  h_ele_dPhiClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2212  h_ele_dPhiClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2214  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2215  if (bestGsfElectron.isEB()) h_ele_dEtaEleCl_propOut_barrel -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2216  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2217  if (bestGsfElectron.isEE()) h_ele_dEtaEleCl_propOut_endcaps -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2218  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dEtaEleCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2219  h_ele_dEtaEleClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2220  h_ele_dEtaEleClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2221  h_ele_dEtaEleClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2223  if (bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2224  if (bestGsfElectron.isEB()) h_ele_dPhiEleCl_propOut_barrel -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2225  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg_barrel -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2226  if (bestGsfElectron.isEE()) h_ele_dPhiEleCl_propOut_endcaps -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2227  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_dPhiEleCl_propOut_eg_endcaps -> Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2228  h_ele_dPhiEleClVsEta_propOut -> Fill( bestGsfElectron.eta(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2229  h_ele_dPhiEleClVsPhi_propOut -> Fill(bestGsfElectron.phi(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2230  h_ele_dPhiEleClVsPt_propOut -> Fill(bestGsfElectron.pt(),bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2231  h_ele_HoE -> Fill(bestGsfElectron.hadronicOverEm());
2232  if (bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg -> Fill(bestGsfElectron.hadronicOverEm());
2233  if (bestGsfElectron.isEB()) h_ele_HoE_barrel -> Fill(bestGsfElectron.hadronicOverEm());
2234  if (bestGsfElectron.isEB()&&bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg_barrel -> Fill(bestGsfElectron.hadronicOverEm());
2235  if (bestGsfElectron.isEE()) h_ele_HoE_endcaps -> Fill(bestGsfElectron.hadronicOverEm());
2236  if (bestGsfElectron.isEE()&&bestGsfElectron.ecalDrivenSeed()) h_ele_HoE_eg_endcaps -> Fill(bestGsfElectron.hadronicOverEm());
2237  if (!bestGsfElectron.isEBEtaGap() && !bestGsfElectron.isEBPhiGap()&& !bestGsfElectron.isEBEEGap() &&
2238  !bestGsfElectron.isEERingGap() && !bestGsfElectron.isEEDeeGap()) h_ele_HoE_fiducial -> Fill(bestGsfElectron.hadronicOverEm());
2239  h_ele_HoEVsEta -> Fill( bestGsfElectron.eta(),bestGsfElectron.hadronicOverEm());
2240  h_ele_HoEVsPhi -> Fill(bestGsfElectron.phi(),bestGsfElectron.hadronicOverEm());
2241  h_ele_HoEVsE -> Fill(bestGsfElectron.caloEnergy(),bestGsfElectron.hadronicOverEm());
2242 
2243  //classes
2244  int eleClass = bestGsfElectron.classification();
2245  if (bestGsfElectron.isEE()) eleClass+=10;
2246  h_ele_classes ->Fill(eleClass);
2247 
2248  if (bestGsfElectron.classification() == GsfElectron::GOLDEN && bestGsfElectron.isEB()) histSclEoEtrueGolden_barrel->Fill(sclRef->energy()/mcIter->p());
2249  if (bestGsfElectron.classification() == GsfElectron::GOLDEN && bestGsfElectron.isEE()) histSclEoEtrueGolden_endcaps->Fill(sclRef->energy()/mcIter->p());
2250  if (bestGsfElectron.classification() == GsfElectron::SHOWERING && bestGsfElectron.isEB()) histSclEoEtrueShowering_barrel->Fill(sclRef->energy()/mcIter->p());
2251  if (bestGsfElectron.classification() == GsfElectron::SHOWERING && bestGsfElectron.isEE()) histSclEoEtrueShowering_endcaps->Fill(sclRef->energy()/mcIter->p());
2252 
2253  //eleClass = eleClass%100; // get rid of barrel/endcap distinction
2254  h_ele_eta->Fill(std::abs(bestGsfElectron.eta()));
2255  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_eta_golden ->Fill(std::abs(bestGsfElectron.eta()));
2256  if (bestGsfElectron.classification() == GsfElectron::BIGBREM) h_ele_eta_bbrem ->Fill(std::abs(bestGsfElectron.eta()));
2257  //if (bestGsfElectron.classification() == GsfElectron::NARROW) h_ele_eta_narrow ->Fill(std::abs(bestGsfElectron.eta()));
2258  if (bestGsfElectron.classification() == GsfElectron::SHOWERING) h_ele_eta_shower ->Fill(std::abs(bestGsfElectron.eta()));
2259 
2260  //fbrem
2261  double fbrem_mean=0.;
2262  if (!readAOD_) // track extra does not exist in AOD
2263  fbrem_mean = 1. - bestGsfElectron.gsfTrack()->outerMomentum().R()/bestGsfElectron.gsfTrack()->innerMomentum().R();
2264  double fbrem_mode = bestGsfElectron.fbrem();
2265  h_ele_fbrem->Fill(fbrem_mode);
2266  if (bestGsfElectron.ecalDrivenSeed()) h_ele_fbrem_eg->Fill(fbrem_mode);
2267  h_ele_fbremVsEta_mode->Fill(bestGsfElectron.eta(),fbrem_mode);
2268  if (!readAOD_) // track extra does not exist in AOD
2269  h_ele_fbremVsEta_mean->Fill(bestGsfElectron.eta(),fbrem_mean);
2270 
2271  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PinVsPoutGolden_mode -> Fill(bestGsfElectron.trackMomentumOut().R(), bestGsfElectron.trackMomentumAtVtx().R());
2272  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2273  h_ele_PinVsPoutShowering_mode -> Fill(bestGsfElectron.trackMomentumOut().R(), bestGsfElectron.trackMomentumAtVtx().R());
2274  if (!readAOD_) { // track extra not available in AOD
2275  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PinVsPoutGolden_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(), bestGsfElectron.gsfTrack()->innerMomentum().R());
2276  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2277  h_ele_PinVsPoutShowering_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(), bestGsfElectron.gsfTrack()->innerMomentum().R());
2278  }
2279  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PtinVsPtoutGolden_mode -> Fill(bestGsfElectron.trackMomentumOut().Rho(), bestGsfElectron.trackMomentumAtVtx().Rho());
2280  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2281  h_ele_PtinVsPtoutShowering_mode -> Fill(bestGsfElectron.trackMomentumOut().Rho(), bestGsfElectron.trackMomentumAtVtx().Rho());
2282  if (!readAOD_) { // track extra not available in AOD
2283  if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_ele_PtinVsPtoutGolden_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(), bestGsfElectron.gsfTrack()->innerMomentum().Rho());
2284  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2285  h_ele_PtinVsPtoutShowering_mean -> Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(), bestGsfElectron.gsfTrack()->innerMomentum().Rho());
2286  }
2287 
2288  h_ele_mva->Fill(bestGsfElectron.mva());
2289  if (bestGsfElectron.ecalDrivenSeed()) h_ele_mva_eg->Fill(bestGsfElectron.mva());
2290  if (bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(1.);
2291  if (bestGsfElectron.trackerDrivenSeed()) h_ele_provenance->Fill(-1.);
2292  if (bestGsfElectron.trackerDrivenSeed()||bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(0.);
2293  if (bestGsfElectron.trackerDrivenSeed()&&!bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(-2.);
2294  if (!bestGsfElectron.trackerDrivenSeed()&&bestGsfElectron.ecalDrivenSeed()) h_ele_provenance->Fill(2.);
2295 
2296  h_ele_tkSumPt_dr03->Fill(bestGsfElectron.dr03TkSumPt());
2297  h_ele_ecalRecHitSumEt_dr03->Fill(bestGsfElectron.dr03EcalRecHitSumEt());
2300  h_ele_tkSumPt_dr04->Fill(bestGsfElectron.dr04TkSumPt());
2301  h_ele_ecalRecHitSumEt_dr04->Fill(bestGsfElectron.dr04EcalRecHitSumEt());
2304 
2305  } // gsf electron found
2306 
2307  } // mc particle found
2308 
2309  }
2310 
2311  } // loop over mc particle
2312 
2313  h_mcNum->Fill(mcNum);
2314  h_eleNum->Fill(eleNum);
2315 
2316 }
int i
Definition: DBlmapReader.cc:9
float scSigmaEtaEta() const
Definition: GsfElectron.h:398
bool isEBEtaGap() const
Definition: GsfElectron.h:335
float eSuperClusterOverP() const
Definition: GsfElectron.h:229
virtual const Candidate * mother(size_type i=0) const =0
return pointer to mother
virtual double p() const GCC11_FINAL
magnitude of momentum vector
bool isEBEEGap() const
Definition: GsfElectron.h:333
float dr04HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:449
virtual const Point & vertex() const
vertex position (overwritten by PF...)
math::XYZVectorF trackMomentumAtVtx() const
Definition: GsfElectron.h:272
#define abs(x)
Definition: mlp_lapack.h:159
float dr04TkSumPt() const
Definition: GsfElectron.h:447
bool isEERingGap() const
Definition: GsfElectron.h:339
float dr03HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:439
float fbrem() const
Definition: GsfElectron.h:639
float scE2x5Max() const
Definition: GsfElectron.h:401
bool isEEDeeGap() const
Definition: GsfElectron.h:338
virtual double py() const GCC11_FINAL
y coordinate of momentum vector
bool isEE() const
Definition: GsfElectron.h:331
bool isEB() const
Definition: GsfElectron.h:330
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:30
float dr04HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:450
float mva() const
Definition: GsfElectron.h:567
virtual float phi() const GCC11_FINAL
momentum azimuthal angle
float deltaEtaSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:233
int iEvent
Definition: GenABIO.cc:243
bool isNull() const
Checks for null.
Definition: Ref.h:247
float hadronicOverEm() const
Definition: GsfElectron.h:403
float eSeedClusterOverP() const
Definition: GsfElectron.h:230
float dr04EcalRecHitSumEt() const
Definition: GsfElectron.h:448
float deltaPhiSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:237
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
T sqrt(T t)
Definition: SSEVec.h:48
std::vector< int > matchingMotherIDs_
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
math::XYZVectorF trackMomentumOut() const
Definition: GsfElectron.h:274
float deltaPhiSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:236
float dr03TkSumPt() const
Definition: GsfElectron.h:436
float dr03HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:438
float eEleClusterOverPout() const
Definition: GsfElectron.h:232
float eSeedClusterOverPout() const
Definition: GsfElectron.h:231
float scSigmaIEtaIEta() const
Definition: GsfElectron.h:399
float deltaPhiEleClusterTrackAtCalo() const
Definition: GsfElectron.h:238
virtual float eta() const GCC11_FINAL
momentum pseudorapidity
double deltaR(double eta1, double eta2, double phi1, double phi2)
Definition: TreeUtility.cc:17
virtual int pdgId() const =0
PDG identifier.
float deltaEtaEleClusterTrackAtCalo() const
Definition: GsfElectron.h:235
virtual int charge() const GCC11_FINAL
electric charge
Classification classification() const
Definition: GsfElectron.h:635
REF castTo() const
cast to a concrete type
Definition: RefToBase.h:241
GsfTrackRefVector::size_type ambiguousGsfTracksSize() const
Definition: GsfElectron.h:588
T const * product() const
Definition: Handle.h:74
float dr03EcalRecHitSumEt() const
Definition: GsfElectron.h:437
float deltaEtaSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:234
bool isEBPhiGap() const
Definition: GsfElectron.h:336
bool trackerDrivenSeed() const
Definition: GsfElectron.h:173
tuple cout
Definition: gather_cfg.py:121
float scE5x5() const
Definition: GsfElectron.h:402
std::vector< int > matchingIDs_
double pi
virtual float pt() const GCC11_FINAL
transverse momentum
float caloEnergy() const
Definition: GsfElectron.h:727
SuperClusterRef pflowSuperCluster() const
Definition: GsfElectron.h:174
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
float scE1x5() const
Definition: GsfElectron.h:400
virtual GsfTrackRef gsfTrack() const
reference to a GsfTrack
Definition: GsfElectron.h:169
bool ecalDrivenSeed() const
Definition: GsfElectron.h:172
void GsfElectronMCAnalyzer::beginJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 116 of file GsfElectronMCAnalyzer.cc.

References phimax, and phimin.

116  {
117 
118  histfile_->cd();
119 
120  // mc truth
121  h_mcNum = new TH1F( "h_mcNum", "# mc particles", nbinfhits,0.,fhitsmax );
122  h_mcNum->Sumw2();
123  h_eleNum = new TH1F( "h_mcNum_ele", "# mc electrons", nbinfhits,0.,fhitsmax);
124  h_eleNum->Sumw2();
125  h_gamNum = new TH1F( "h_mcNum_gam", "# mc gammas", nbinfhits,0.,fhitsmax);
126  h_gamNum->Sumw2();
127 
128  // rec event
129  histNum_= new TH1F("h_recEleNum","# rec electrons",20, 0.,20.);
130 
131  // mc
132  h_simEta = new TH1F( "h_mc_eta", "gen #eta", nbineta,etamin,etamax);
133  h_simEta->Sumw2();
134  h_simAbsEta = new TH1F( "h_mc_abseta", "gen |#eta|", nbineta/2,0.,etamax);
135  h_simAbsEta->Sumw2();
136  h_simP = new TH1F( "h_mc_P", "gen p", nbinp,0.,pmax);
137  h_simP->Sumw2();
138  h_simPt = new TH1F( "h_mc_Pt", "gen pt", nbinpteff,5.,ptmax);
139  h_simPt->Sumw2();
140  h_simPhi = new TH1F( "h_mc_phi", "gen phi", nbinphi,phimin,phimax);
141  h_simPhi->Sumw2();
142  h_simZ = new TH1F( "h_mc_z", "gen z ", nbinxyz, -25, 25 );
143  h_simZ->Sumw2();
144  h_simPtEta = new TH2F( "h_mc_pteta", "gen pt vs #eta", nbineta2D,etamin,etamax, nbinpt2D,5.,ptmax );
145  h_simPtEta->Sumw2();
146 
147  // all electrons
148  h_ele_EoverP_all = new TH1F( "h_ele_EoverP_all", "ele E/P_{vertex}, all reco electrons", nbineop,0.,eopmax);
149  h_ele_EoverP_all->Sumw2();
150  h_ele_EoverP_all_barrel = new TH1F( "h_ele_EoverP_all_barrel", "ele E/P_{vertex}, all reco electrons, barrel", nbineop,0.,eopmax);
151  h_ele_EoverP_all_barrel->Sumw2();
152  h_ele_EoverP_all_endcaps = new TH1F( "h_ele_EoverP_all_endcaps", "ele E/P_{vertex}, all reco electrons, endcaps", nbineop,0.,eopmax);
153  h_ele_EoverP_all_endcaps->Sumw2();
154  h_ele_EseedOP_all = new TH1F( "h_ele_EseedOP_all", "ele E_{seed}/P_{vertex}, all reco electrons", nbineop,0.,eopmax);
155  h_ele_EseedOP_all->Sumw2();
156  h_ele_EseedOP_all_barrel = new TH1F( "h_ele_EseedOP_all_barrel", "ele E_{seed}/P_{vertex}, all reco electrons, barrel", nbineop,0.,eopmax);
157  h_ele_EseedOP_all_barrel->Sumw2();
158  h_ele_EseedOP_all_endcaps = new TH1F( "h_ele_EseedOP_all_endcaps", "ele E_{seed}/P_{vertex}, all reco electrons, endcaps", nbineop,0.,eopmax);
159  h_ele_EseedOP_all_endcaps->Sumw2();
160  h_ele_EoPout_all = new TH1F( "h_ele_EoPout_all", "ele E_{seed}/P_{out}, all reco electrons", nbineop,0.,eopmax);
161  h_ele_EoPout_all->Sumw2();
162  h_ele_EoPout_all_barrel = new TH1F( "h_ele_EoPout_all_barrel", "ele E_{seed}/P_{out}, all reco electrons barrel", nbineop,0.,eopmax);
163  h_ele_EoPout_all_barrel->Sumw2();
164  h_ele_EoPout_all_endcaps = new TH1F( "h_ele_EoPout_all_endcaps", "ele E_{seed}/P_{out}, all reco electrons endcaps", nbineop,0.,eopmax);
165  h_ele_EoPout_all_endcaps->Sumw2();
166  h_ele_EeleOPout_all = new TH1F( "h_ele_EeleOPout_all", "ele E_{ele}/P_{out}, all reco electrons", nbineop,0.,eopmax);
167  h_ele_EeleOPout_all->Sumw2();
168  h_ele_EeleOPout_all_barrel = new TH1F( "h_ele_EeleOPout_all_barrel", "ele E_{ele}/P_{out}, all reco electrons barrel", nbineop,0.,eopmax);
170  h_ele_EeleOPout_all_endcaps = new TH1F( "h_ele_EeleOPout_all_endcaps", "ele E_{ele}/P_{out}, all reco electrons endcaps", nbineop,0.,eopmax);
172  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);
173  h_ele_dEtaSc_propVtx_all->Sumw2();
174  h_ele_dEtaSc_propVtx_all_barrel = new TH1F( "h_ele_dEtaSc_propVtx_all_barrel", "ele #eta_{sc} - #eta_{tr}, prop from vertex, all reco electrons barrel", nbindetamatch,detamatchmin,detamatchmax);
176  h_ele_dEtaSc_propVtx_all_endcaps = new TH1F( "h_ele_dEtaSc_propVtx_all_endcaps", "ele #eta_{sc} - #eta_{tr}, prop from vertex, all reco electrons endcaps", nbindetamatch,detamatchmin,detamatchmax);
178  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);
179  h_ele_dPhiSc_propVtx_all->Sumw2();
180  h_ele_dPhiSc_propVtx_all_barrel = new TH1F( "h_ele_dPhiSc_propVtx_all_barrel", "ele #phi_{sc} - #phi_{tr}, prop from vertex, all reco electrons barrel", nbindphimatch,dphimatchmin,dphimatchmax);
182  h_ele_dPhiSc_propVtx_all_endcaps = new TH1F( "h_ele_dPhiSc_propVtx_all_endcaps", "ele #phi_{sc} - #phi_{tr}, prop from vertex, all reco electrons endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
184  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);
185  h_ele_dEtaCl_propOut_all->Sumw2();
186  h_ele_dEtaCl_propOut_all_barrel = new TH1F( "h_ele_dEtaCl_propOut_all_barrel", "ele #eta_{cl} - #eta_{tr}, prop from outermost, all reco electrons barrel", nbindetamatch,detamatchmin,detamatchmax);
188  h_ele_dEtaCl_propOut_all_endcaps = new TH1F( "h_ele_dEtaCl_propOut_all_endcaps", "ele #eta_{cl} - #eta_{tr}, prop from outermost, all reco electrons endcaps", nbindetamatch,detamatchmin,detamatchmax);
190  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);
191  h_ele_dPhiCl_propOut_all->Sumw2();
192  h_ele_dPhiCl_propOut_all_barrel = new TH1F( "h_ele_dPhiCl_propOut_all_barrel", "ele #phi_{cl} - #phi_{tr}, prop from outermost, all reco electrons barrel", nbindphimatch,dphimatchmin,dphimatchmax);
193  h_ele_dPhiCl_propOut_all_endcaps = new TH1F( "h_ele_dPhiCl_propOut_all_endcaps", "ele #phi_{cl} - #phi_{tr}, prop from outermost, all reco electrons endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
196  h_ele_HoE_all = new TH1F("h_ele_HoE_all", "ele hadronic energy / em energy, all reco electrons", nbinhoe, hoemin, hoemax) ;
197  h_ele_HoE_all->Sumw2();
198  h_ele_HoE_all_barrel = new TH1F("h_ele_HoE_all_barrel", "ele hadronic energy / em energy, all reco electrons barrel", nbinhoe, hoemin, hoemax) ;
199  h_ele_HoE_all_barrel->Sumw2();
200  h_ele_HoE_all_endcaps = new TH1F("h_ele_HoE_all_endcaps", "ele hadronic energy / em energy, all reco electrons endcaps", nbinhoe, hoemin, hoemax) ;
201  h_ele_HoE_all_endcaps->Sumw2();
202  h_ele_vertexPt_all = new TH1F( "h_ele_vertexPt_all", "ele p_{T}, all reco electrons", nbinpteff,5.,ptmax);
203  h_ele_vertexPt_all->Sumw2();
204  h_ele_Et_all = new TH1F( "h_ele_Et_all", "ele SC E_{T}, all reco electrons", nbinpteff,5.,ptmax);
205  h_ele_Et_all->Sumw2();
206  h_ele_vertexEta_all = new TH1F( "h_ele_vertexEta_all", "ele eta, all reco electrons", nbineta,etamin,etamax);
207  h_ele_vertexEta_all->Sumw2();
208  h_ele_TIP_all = new TH1F( "h_ele_TIP_all", "ele vertex transverse radius, all reco electrons", 100,0.,0.2);
209  h_ele_TIP_all->Sumw2();
210  h_ele_TIP_all_barrel = new TH1F( "h_ele_TIP_all_barrel", "ele vertex transverse radius, all reco electrons barrel", 100,0.,0.2);
211  h_ele_TIP_all_barrel->Sumw2();
212  h_ele_TIP_all_endcaps = new TH1F( "h_ele_TIP_all_endcaps", "ele vertex transverse radius, all reco electrons endcaps", 100,0.,0.2);
213  h_ele_TIP_all_endcaps->Sumw2();
214  h_ele_mee_all = new TH1F( "h_ele_mee_all", "ele pairs invariant mass, all reco electrons", nbinmee, meemin, meemax );
215  h_ele_mee_all->Sumw2();
216  h_ele_mee_os = new TH1F( "h_ele_mee_os", "ele pairs invariant mass, opp. sign", nbinmee, meemin, meemax );
217  h_ele_mee_os->Sumw2();
218  h_ele_mee_os_ebeb = new TH1F( "h_ele_mee_os_ebeb", "ele pairs invariant mass, opp. sign, EB-EB", nbinmee, meemin, meemax );
219  h_ele_mee_os_ebeb->Sumw2();
220  h_ele_mee_os_ebee = new TH1F( "h_ele_mee_os_ebee", "ele pairs invariant mass, opp. sign, EB-EE", nbinmee, meemin, meemax );
221  h_ele_mee_os_ebee->Sumw2();
222  h_ele_mee_os_eeee = new TH1F( "h_ele_mee_os_eeee", "ele pairs invariant mass, opp. sign, EE-EE", nbinmee, meemin, meemax );
223  h_ele_mee_os_eeee->Sumw2();
224  h_ele_mee_os_gg = new TH1F( "h_ele_mee_os_gg", "ele pairs invariant mass, opp. sign, good-good", nbinmee, meemin, meemax );
225  h_ele_mee_os_gg->Sumw2();
226  h_ele_mee_os_gb = new TH1F( "h_ele_mee_os_gb", "ele pairs invariant mass, opp. sign, good-bad", nbinmee, meemin, meemax );
227  h_ele_mee_os_gb->Sumw2();
228  h_ele_mee_os_bb = new TH1F( "h_ele_mee_os_bb", "ele pairs invariant mass, opp. sign, bad-bad", nbinmee, meemin, meemax );
229  h_ele_mee_os_bb->Sumw2();
230 
231  // duplicates
232  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. );
233  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. );
234 
235  // charge ID
236  h_ele_ChargeMnChargeTrue = new TH1F( "h_ele_ChargeMnChargeTrue", "ele charge - gen charge ",5,-1.,4.);
237  h_ele_ChargeMnChargeTrue->Sumw2();
238  h_ele_simEta_matched_qmisid = new TH1F( "h_ele_eta_matched_qmisid","charge misid vs gen eta", nbineta,etamin,etamax);
240  h_ele_simAbsEta_matched_qmisid = new TH1F( "h_ele_abseta_matched_qmisid", "charge misid vs gen |eta|", nbineta/2,0.,etamax);
242  h_ele_simPt_matched_qmisid = new TH1F( "h_ele_Pt_matched_qmisid", "charge misid vs gen transverse momentum", nbinpteff,5.,ptmax);
244  h_ele_simPhi_matched_qmisid = new TH1F( "h_ele_phi_matched_qmisid","charge misid vs gen phi", nbinphi,phimin,phimax);
246  h_ele_simZ_matched_qmisid = new TH1F( "h_ele_z_matched_qmisid","charge misid vs gen z",nbinxyz, -25, 25 );
247  h_ele_simZ_matched_qmisid->Sumw2();
248 
249  // matched electrons
250  h_ele_charge = new TH1F( "h_ele_charge", "ele charge", 5,-2.,2.);
251  h_ele_charge->Sumw2();
252  h_ele_chargeVsEta = new TH2F( "h_ele_chargeVsEta", "ele charge vs eta", nbineta2D,etamin,etamax,5,-2.,2.);
253  h_ele_chargeVsPhi = new TH2F( "h_ele_chargeVsPhi", "ele charge vs phi", nbinphi2D,phimin,phimax,5,-2.,2.);
254  h_ele_chargeVsPt = new TH2F( "h_ele_chargeVsPt", "ele charge vs pt", nbinpt,0.,100.,5,-2.,2.);
255  h_ele_vertexP = new TH1F( "h_ele_vertexP", "ele momentum", nbinp,0.,pmax);
256  h_ele_vertexP->Sumw2();
257  h_ele_vertexPt = new TH1F( "h_ele_vertexPt", "ele transverse momentum", nbinpt,0.,ptmax);
258  h_ele_vertexPt->Sumw2();
259  h_ele_Et = new TH1F( "h_ele_Et", "ele transverse energy", nbinpt,0.,ptmax);
260  h_ele_Et->Sumw2();
261  h_ele_vertexPtVsEta = new TH2F( "h_ele_vertexPtVsEta", "ele transverse momentum vs eta",nbineta2D,etamin,etamax,nbinpt2D,0.,ptmax);
262  h_ele_vertexPtVsPhi = new TH2F( "h_ele_vertexPtVsPhi", "ele transverse momentum vs phi",nbinphi2D,phimin,phimax,nbinpt2D,0.,ptmax);
263  h_ele_simPt_matched = new TH1F( "h_ele_simPt_matched", "Efficiency vs gen transverse momentum", nbinpteff,5.,ptmax);
264  h_ele_vertexEta = new TH1F( "h_ele_vertexEta", "ele momentum eta", nbineta,etamin,etamax);
265  h_ele_vertexEta->Sumw2();
266  h_ele_vertexEtaVsPhi = new TH2F( "h_ele_vertexEtaVsPhi", "ele momentum eta vs phi",nbineta2D,etamin,etamax,nbinphi2D,phimin,phimax );
267  h_ele_simAbsEta_matched = new TH1F( "h_ele_simAbsEta_matched", "Efficiency vs gen |eta|", nbineta/2,0.,2.5);
268  h_ele_simAbsEta_matched->Sumw2();
269  h_ele_simEta_matched = new TH1F( "h_ele_simEta_matched", "Efficiency vs gen eta", nbineta,etamin,etamax);
270  h_ele_simEta_matched->Sumw2();
271  h_ele_simPtEta_matched = new TH2F( "h_ele_simPtEta_matched", "Efficiency vs pt #eta", nbineta2D,etamin,etamax, nbinpt2D,5.,ptmax );
272  h_ele_simPtEta_matched->Sumw2();
273  h_ele_simPhi_matched = new TH1F( "h_ele_simPhi_matched", "Efficiency vs gen phi", nbinphi,phimin,phimax);
274  h_ele_simPhi_matched->Sumw2();
275  h_ele_vertexPhi = new TH1F( "h_ele_vertexPhi", "ele momentum #phi", nbinphi,phimin,phimax);
276  h_ele_vertexPhi->Sumw2();
277  h_ele_vertexX = new TH1F( "h_ele_vertexX", "ele vertex x", nbinxyz,-0.1,0.1 );
278  h_ele_vertexX->Sumw2();
279  h_ele_vertexY = new TH1F( "h_ele_vertexY", "ele vertex y", nbinxyz,-0.1,0.1 );
280  h_ele_vertexY->Sumw2();
281  h_ele_vertexZ = new TH1F( "h_ele_vertexZ", "ele vertex z", nbinxyz,-25, 25 );
282  h_ele_vertexZ->Sumw2();
283  h_ele_simZ_matched = new TH1F( "h_ele_simZ_matched", "Efficiency vs gen vertex z", nbinxyz,-25,25);
284  h_ele_simZ_matched->Sumw2();
285  h_ele_vertexTIP = new TH1F( "h_ele_vertexTIP", "ele transverse impact parameter (wrt gen vtx)", 90,0.,0.15);
286  h_ele_vertexTIP->Sumw2();
287  h_ele_vertexTIPVsEta = new TH2F( "h_ele_vertexTIPVsEta", "ele transverse impact parameter (wrt gen vtx) vs eta", nbineta2D,etamin,etamax,45,0.,0.15);
288  h_ele_vertexTIPVsPhi = new TH2F( "h_ele_vertexTIPVsPhi", "ele transverse impact parameter (wrt gen vtx) vs phi", nbinphi2D,phimin,phimax,45,0.,0.15);
289  h_ele_vertexTIPVsPt = new TH2F( "h_ele_vertexTIPVsPt", "ele transverse impact parameter (wrt gen vtx) vs transverse momentum", nbinpt2D,0.,ptmax,45,0.,0.15);
290  h_ele_PoPtrue = new TH1F( "h_ele_PoPtrue", "ele momentum / gen momentum", nbinpoptrue,poptruemin,poptruemax);
291  h_ele_PoPtrue->Sumw2();
292  h_ele_PtoPttrue = new TH1F( "h_ele_PtoPttrue", "ele transverse momentum / gen transverse momentum", nbinpoptrue,poptruemin,poptruemax);
293  h_ele_PtoPttrue->Sumw2();
294  h_ele_PoPtrueVsEta = new TH2F( "h_ele_PoPtrueVsEta", "ele momentum / gen momentum vs eta", nbineta2D,etamin,etamax,50,poptruemin,poptruemax);
295  h_ele_PoPtrueVsPhi = new TH2F( "h_ele_PoPtrueVsPhi", "ele momentum / gen momentum vs phi", nbinphi2D,phimin,phimax,50,poptruemin,poptruemax);
296  h_ele_PoPtrueVsPt = new TH2F( "h_ele_PoPtrueVsPt", "ele momentum / gen momentum vs eta", nbinpt2D,0.,ptmax,50,poptruemin,poptruemax);
297  h_ele_PoPtrue_barrel = new TH1F( "h_ele_PoPtrue_barrel", "ele momentum / gen momentum, barrel",nbinpoptrue,poptruemin,poptruemax);
298  h_ele_PoPtrue_barrel->Sumw2();
299  h_ele_PoPtrue_endcaps = new TH1F( "h_ele_PoPtrue_endcaps", "ele momentum / gen momentum, endcaps",nbinpoptrue,poptruemin,poptruemax);
300  h_ele_PoPtrue_endcaps->Sumw2();
301  h_ele_PoPtrue_golden_barrel = new TH1F( "h_ele_PoPtrue_golden_barrel", "ele momentum / gen momentum, golden, barrel",nbinpoptrue,poptruemin,poptruemax);
303  h_ele_PoPtrue_golden_endcaps = new TH1F( "h_ele_PoPtrue_golden_endcaps", "ele momentum / gen momentum, golden, endcaps",nbinpoptrue,poptruemin,poptruemax);
305  h_ele_PoPtrue_showering_barrel = new TH1F( "h_ele_PoPtrue_showering_barrel", "ele momentum / gen momentum, showering, barrel",nbinpoptrue,poptruemin,poptruemax);
307  h_ele_PoPtrue_showering_endcaps = new TH1F( "h_ele_PoPtrue_showering_endcaps", "ele momentum / gen momentum, showering, endcaps",nbinpoptrue,poptruemin,poptruemax);
309  h_ele_PtoPttrue_barrel = new TH1F( "h_ele_PtoPttrue_barrel", "ele transverse momentum / gen transverse momentum, barrel",nbinpoptrue,poptruemin,poptruemax);
310  h_ele_PtoPttrue_barrel->Sumw2();
311  h_ele_PtoPttrue_endcaps = new TH1F( "h_ele_PtoPttrue_endcaps", "ele transverse momentum / gen transverse momentum, endcaps",nbinpoptrue,poptruemin,poptruemax);
312  h_ele_PtoPttrue_endcaps->Sumw2();
313  h_ele_EtaMnEtaTrue = new TH1F( "h_ele_EtaMnEtaTrue", "ele momentum eta - gen eta",nbindeta,detamin,detamax);
314  h_ele_EtaMnEtaTrue->Sumw2();
315  h_ele_EtaMnEtaTrue_barrel = new TH1F( "h_ele_EtaMnEtaTrue_barrel", "ele momentum eta - gen eta barrel",nbindeta,detamin,detamax);
316  h_ele_EtaMnEtaTrue_barrel->Sumw2();
317  h_ele_EtaMnEtaTrue_endcaps = new TH1F( "h_ele_EtaMnEtaTrue_endcaps", "ele momentum eta - gen eta endcaps",nbindeta,detamin,detamax);
319  h_ele_EtaMnEtaTrueVsEta = new TH2F( "h_ele_EtaMnEtaTrueVsEta", "ele momentum eta - gen eta vs eta",nbineta2D,etamin,etamax,nbindeta/2,detamin,detamax);
320  h_ele_EtaMnEtaTrueVsPhi = new TH2F( "h_ele_EtaMnEtaTrueVsPhi", "ele momentum eta - gen eta vs phi",nbinphi2D,phimin,phimax,nbindeta/2,detamin,detamax);
321  h_ele_EtaMnEtaTrueVsPt = new TH2F( "h_ele_EtaMnEtaTrueVsPt", "ele momentum eta - gen eta vs pt",nbinpt,0.,ptmax,nbindeta/2,detamin,detamax);
322  h_ele_PhiMnPhiTrue = new TH1F( "h_ele_PhiMnPhiTrue", "ele momentum phi - gen phi",nbindphi,dphimin,dphimax);
323  h_ele_PhiMnPhiTrue->Sumw2();
324  h_ele_PhiMnPhiTrue_barrel = new TH1F( "h_ele_PhiMnPhiTrue_barrel", "ele momentum phi - gen phi barrel",nbindphi,dphimin,dphimax);
325  h_ele_PhiMnPhiTrue_barrel->Sumw2();
326  h_ele_PhiMnPhiTrue_endcaps = new TH1F( "h_ele_PhiMnPhiTrue_endcaps", "ele momentum phi - gen phi endcaps",nbindphi,dphimin,dphimax);
328  h_ele_PhiMnPhiTrue2 = new TH1F( "h_ele_PhiMnPhiTrue2", "ele momentum phi - gen phi",nbindphimatch2D,dphimatchmin,dphimatchmax);
329  h_ele_PhiMnPhiTrueVsEta = new TH2F( "h_ele_PhiMnPhiTrueVsEta", "ele momentum phi - gen phi vs eta",nbineta2D,etamin,etamax,nbindphi/2,dphimin,dphimax);
330  h_ele_PhiMnPhiTrueVsPhi = new TH2F( "h_ele_PhiMnPhiTrueVsPhi", "ele momentum phi - gen phi vs phi",nbinphi2D,phimin,phimax,nbindphi/2,dphimin,dphimax);
331  h_ele_PhiMnPhiTrueVsPt = new TH2F( "h_ele_PhiMnPhiTrueVsPt", "ele momentum phi - gen phi vs pt",nbinpt2D,0.,ptmax,nbindphi/2,dphimin,dphimax);
332 
333  // matched electron, superclusters
334  histSclEn_ = new TH1F("h_scl_energy","ele supercluster energy",nbinp,0.,pmax);
335  histSclEn_->Sumw2();
336  histSclEoEtrue_barrel = new TH1F("h_scl_EoEtrue_barrel","ele supercluster energy / gen energy, barrel",50,0.2,1.2);
337  histSclEoEtrue_barrel->Sumw2();
338  histSclEoEtrue_barrel_eg = new TH1F("h_scl_EoEtrue_barrel_eg","ele supercluster energy / gen energy, barrel, ecal driven",50,0.2,1.2);
339  histSclEoEtrue_barrel_eg->Sumw2();
340  histSclEoEtrue_barrel_etagap = new TH1F("h_scl_EoEtrue_barrel_etagap","ele supercluster energy / gen energy, barrel, etagap",50,0.2,1.2);
342  histSclEoEtrue_barrel_phigap = new TH1F("h_scl_EoEtrue_barrel_phigap","ele supercluster energy / gen energy, barrel, phigap",50,0.2,1.2);
344  histSclEoEtrue_ebeegap = new TH1F("h_scl_EoEtrue_ebeegap","ele supercluster energy / gen energy, ebeegap",50,0.2,1.2);
345  histSclEoEtrue_ebeegap->Sumw2();
346  histSclEoEtrue_endcaps = new TH1F("h_scl_EoEtrue_endcaps","ele supercluster energy / gen energy, endcaps",50,0.2,1.2);
347  histSclEoEtrue_endcaps->Sumw2();
348  histSclEoEtrue_endcaps_eg = new TH1F("h_scl_EoEtrue_endcaps_eg","ele supercluster energy / gen energy, endcaps, ecal driven",50,0.2,1.2);
349  histSclEoEtrue_endcaps_eg->Sumw2();
350  histSclEoEtrue_endcaps_deegap = new TH1F("h_scl_EoEtrue_endcaps_deegap","ele supercluster energy / gen energy, endcaps, deegap",50,0.2,1.2);
352  histSclEoEtrue_endcaps_ringgap = new TH1F("h_scl_EoEtrue_endcaps_ringgap","ele supercluster energy / gen energy, endcaps, ringgap",50,0.2,1.2);
354  histSclEoEtrue_barrel_new = new TH1F("h_scl_EoEtrue_barrel_new","ele supercluster energy / gen energy, barrel",nbinpoptrue,poptruemin,poptruemax);
355  histSclEoEtrue_barrel_new->Sumw2();
356  histSclEoEtrue_barrel_eg_new = new TH1F("h_scl_EoEtrue_barrel_eg_new","ele supercluster energy / gen energy, barrel, ecal driven",nbinpoptrue,poptruemin,poptruemax);
358  histSclEoEtrue_barrel_etagap_new = new TH1F("h_scl_EoEtrue_barrel_etagap_new","ele supercluster energy / gen energy, barrel, etagap",nbinpoptrue,poptruemin,poptruemax);
360  histSclEoEtrue_barrel_phigap_new = new TH1F("h_scl_EoEtrue_barrel_phigap_new","ele supercluster energy / gen energy, barrel, phigap",nbinpoptrue,poptruemin,poptruemax);
362  histSclEoEtrue_ebeegap_new = new TH1F("h_scl_EoEtrue_ebeegap_new","ele supercluster energy / gen energy, ebeegap",nbinpoptrue,poptruemin,poptruemax);
364  histSclEoEtrue_endcaps_new = new TH1F("h_scl_EoEtrue_endcaps_new","ele supercluster energy / gen energy, endcaps",nbinpoptrue,poptruemin,poptruemax);
366  histSclEoEtrue_endcaps_eg_new = new TH1F("h_scl_EoEtrue_endcaps_eg_new","ele supercluster energy / gen energy, endcaps, ecal driven",nbinpoptrue,poptruemin,poptruemax);
368  histSclEoEtrue_endcaps_deegap_new = new TH1F("h_scl_EoEtrue_endcaps_deegap_new","ele supercluster energy / gen energy, endcaps, deegap",nbinpoptrue,poptruemin,poptruemax);
370  histSclEoEtrue_endcaps_ringgap_new = new TH1F("h_scl_EoEtrue_endcaps_ringgap_new","ele supercluster energy / gen energy, endcaps, ringgap",nbinpoptrue,poptruemin,poptruemax);
372  histSclEt_ = new TH1F("h_scl_et","ele supercluster transverse energy",nbinpt,0.,ptmax);
373  histSclEt_->Sumw2();
374  histSclEtVsEta_ = new TH2F("h_scl_etVsEta","ele supercluster transverse energy vs eta",nbineta2D,etamin,etamax,nbinpt,0.,ptmax);
375  histSclEtVsPhi_ = new TH2F("h_scl_etVsPhi","ele supercluster transverse energy vs phi",nbinphi2D,phimin,phimax,nbinpt,0.,ptmax);
376  histSclEtaVsPhi_ = new TH2F("h_scl_etaVsPhi","ele supercluster eta vs phi",nbinphi2D,phimin,phimax,nbineta2D,etamin,etamax);
377  histSclEta_ = new TH1F("h_scl_eta","ele supercluster eta",nbineta,etamin,etamax);
378  histSclEta_->Sumw2();
379  histSclPhi_ = new TH1F("h_scl_phi","ele supercluster phi",nbinphi,phimin,phimax);
380  histSclPhi_->Sumw2();
381 
382  histSclSigEtaEta_ = new TH1F("h_scl_sigetaeta","ele supercluster sigma eta eta",100,0.,0.05);
383  histSclSigEtaEta_->Sumw2();
384  histSclSigEtaEta_barrel_ = new TH1F("h_scl_sigetaeta_barrel","ele supercluster sigma eta eta barrel",100,0.,0.05);
385  histSclSigEtaEta_barrel_->Sumw2();
386  histSclSigEtaEta_endcaps_ = new TH1F("h_scl_sigetaeta_endcaps","ele supercluster sigma eta eta endcaps",100,0.,0.05);
387  histSclSigEtaEta_endcaps_->Sumw2();
388  histSclSigIEtaIEta_ = new TH1F("h_scl_sigietaieta","ele supercluster sigma ieta ieta",100,0.,0.05);
389  histSclSigIEtaIEta_->Sumw2();
390  histSclSigIEtaIEta_barrel_ = new TH1F("h_scl_sigietaieta_barrel","ele supercluster sigma ieta ieta, barrel",100,0.,0.05);
392  histSclSigIEtaIEta_endcaps_ = new TH1F("h_scl_sigietaieta_endcaps","ele supercluster sigma ieta ieta, endcaps",100,0.,0.05);
394  histSclE1x5_ = new TH1F("h_scl_E1x5","ele supercluster energy in 1x5",nbinp,0., pmax);
395  histSclE1x5_->Sumw2();
396  histSclE1x5_barrel_ = new TH1F("h_scl_E1x5_barrel","ele supercluster energy in 1x5 barrel",nbinp,0., pmax);
397  histSclE1x5_barrel_->Sumw2();
398  histSclE1x5_endcaps_ = new TH1F("h_scl_E1x5_endcaps","ele supercluster energy in 1x5 endcaps",nbinp,0., pmax);
399  histSclE1x5_endcaps_->Sumw2();
400  histSclE2x5max_ = new TH1F("h_scl_E2x5max","ele supercluster energy in 2x5 max",nbinp,0.,pmax);
401  histSclE2x5max_->Sumw2();
402  histSclE2x5max_barrel_ = new TH1F("h_scl_E2x5max_barrel","ele supercluster energy in 2x5 max barrel",nbinp,0.,pmax);
403  histSclE2x5max_barrel_->Sumw2();
404  histSclE2x5max_endcaps_ = new TH1F("h_scl_E2x5max_endcaps","ele supercluster energy in 2x5 max endcaps",nbinp,0.,pmax);
405  histSclE2x5max_endcaps_->Sumw2();
406  histSclE5x5_ = new TH1F("h_scl_E5x5","ele supercluster energy in 5x5",nbinp,0.,pmax);
407  histSclE5x5_->Sumw2();
408  histSclE5x5_barrel_ = new TH1F("h_scl_E5x5_barrel","ele supercluster energy in 5x5 barrel",nbinp,0.,pmax);
409  histSclE5x5_barrel_->Sumw2();
410  histSclE5x5_endcaps_ = new TH1F("h_scl_E5x5_endcaps","ele supercluster energy in 5x5 endcaps",nbinp,0.,pmax);
411  histSclE5x5_endcaps_->Sumw2();
412  histSclSigEtaEta_eg_ = new TH1F("h_scl_sigetaeta_eg","ele supercluster sigma eta eta, ecal driven",100,0.,0.05);
413  histSclSigEtaEta_eg_->Sumw2();
414  histSclSigEtaEta_eg_barrel_ = new TH1F("h_scl_sigetaeta_eg_barrel","ele supercluster sigma eta eta, ecal driven barrel",100,0.,0.05);
416  histSclSigEtaEta_eg_endcaps_ = new TH1F("h_scl_sigetaeta_eg_endcaps","ele supercluster sigma eta eta, ecal driven endcaps",100,0.,0.05);
418  histSclSigIEtaIEta_eg_ = new TH1F("h_scl_sigietaieta_eg","ele supercluster sigma ieta ieta, ecal driven",100,0.,0.05);
419  histSclSigIEtaIEta_eg_->Sumw2();
420  histSclSigIEtaIEta_eg_barrel_ = new TH1F("h_scl_sigietaieta_barrel_eg","ele supercluster sigma ieta ieta, barrel, ecal driven",100,0.,0.05);
422  histSclSigIEtaIEta_eg_endcaps_ = new TH1F("h_scl_sigietaieta_endcaps_eg","ele supercluster sigma ieta ieta, endcaps, ecal driven",100,0.,0.05);
424  histSclE1x5_eg_ = new TH1F("h_scl_E1x5_eg","ele supercluster energy in 1x5, ecal driven",nbinp,0., pmax);
425  histSclE1x5_eg_->Sumw2();
426  histSclE1x5_eg_barrel_ = new TH1F("h_scl_E1x5_eg_barrel","ele supercluster energy in 1x5, ecal driven barrel",nbinp,0., pmax);
427  histSclE1x5_eg_barrel_->Sumw2();
428  histSclE1x5_eg_endcaps_ = new TH1F("h_scl_E1x5_eg_endcaps","ele supercluster energy in 1x5, ecal driven endcaps",nbinp,0., pmax);
429  histSclE1x5_eg_endcaps_->Sumw2();
430  histSclE2x5max_eg_ = new TH1F("h_scl_E2x5max_eg","ele supercluster energy in 2x5 max, ecal driven",nbinp,0.,pmax);
431  histSclE2x5max_eg_->Sumw2();
432  histSclE2x5max_eg_barrel_ = new TH1F("h_scl_E2x5max_eg_barrel","ele supercluster energy in 2x5 max, ecal driven barrel",nbinp,0.,pmax);
433  histSclE2x5max_eg_barrel_->Sumw2();
434  histSclE2x5max_eg_endcaps_ = new TH1F("h_scl_E2x5max_eg_endcaps","ele supercluster energy in 2x5 max, ecal driven endcaps",nbinp,0.,pmax);
436  histSclE5x5_eg_ = new TH1F("h_scl_E5x5_eg","ele supercluster energy in 5x5, ecal driven",nbinp,0.,pmax);
437  histSclE5x5_eg_->Sumw2();
438  histSclE5x5_eg_barrel_ = new TH1F("h_scl_E5x5_eg_barrel","ele supercluster energy in 5x5, ecal driven barrel",nbinp,0.,pmax);
439  histSclE5x5_eg_barrel_->Sumw2();
440  histSclE5x5_eg_endcaps_ = new TH1F("h_scl_E5x5_eg_endcaps","ele supercluster energy in 5x5, ecal driven endcaps",nbinp,0.,pmax);
441  histSclE5x5_eg_endcaps_->Sumw2();
442 
443  histSclEoEtruePfVsEg = new TH2F("h_scl_EoEtruePfVsEg","ele supercluster energy / gen energy pflow vs eg",75,-0.1,1.4, 75, -0.1, 1.4);
444 
445  // matched electron, gsf tracks
446  h_ele_ambiguousTracks = new TH1F( "h_ele_ambiguousTracks", "ele # ambiguous tracks", 5,0.,5.);
447  h_ele_ambiguousTracks->Sumw2();
448  h_ele_ambiguousTracksVsEta = new TH2F( "h_ele_ambiguousTracksVsEta","ele # ambiguous tracks vs eta", nbineta2D,etamin,etamax,5,0.,5.);
449  h_ele_ambiguousTracksVsPhi = new TH2F( "h_ele_ambiguousTracksVsPhi", "ele # ambiguous tracks vs phi", nbinphi2D,phimin,phimax,5,0.,5.);
450  h_ele_ambiguousTracksVsPt = new TH2F( "h_ele_ambiguousTracksVsPt", "ele # ambiguous tracks vs pt", nbinpt2D,0.,ptmax,5,0.,5.);
451  h_ele_foundHits = new TH1F( "h_ele_foundHits", "ele track # found hits", nbinfhits,0.,fhitsmax);
452  h_ele_foundHits->Sumw2();
453  h_ele_foundHits_barrel = new TH1F( "h_ele_foundHits_barrel", "ele track # found hits, barrel", nbinfhits,0.,fhitsmax);
454  h_ele_foundHits_barrel->Sumw2();
455  h_ele_foundHits_endcaps = new TH1F( "h_ele_foundHits_endcaps", "ele track # found hits, endcaps", nbinfhits,0.,fhitsmax);
456  h_ele_foundHits_endcaps->Sumw2();
457  h_ele_foundHitsVsEta = new TH2F( "h_ele_foundHitsVsEta", "ele track # found hits vs eta", nbineta2D,etamin,etamax,nbinfhits,0.,fhitsmax);
458  h_ele_foundHitsVsPhi = new TH2F( "h_ele_foundHitsVsPhi", "ele track # found hits vs phi", nbinphi2D,phimin,phimax,nbinfhits,0.,fhitsmax);
459  h_ele_foundHitsVsPt = new TH2F( "h_ele_foundHitsVsPt", "ele track # found hits vs pt", nbinpt2D,0.,ptmax,nbinfhits,0.,fhitsmax);
460  h_ele_lostHits = new TH1F( "h_ele_lostHits", "ele track # lost hits", 5,0.,5.);
461  h_ele_lostHits->Sumw2();
462  h_ele_lostHits_barrel = new TH1F( "h_ele_lostHits_barrel", "ele track # lost hits, barrel", 5,0.,5.);
463  h_ele_lostHits_barrel->Sumw2();
464  h_ele_lostHits_endcaps = new TH1F( "h_ele_lostHits_endcaps", "ele track # lost hits, endcaps", 5,0.,5.);
465  h_ele_lostHits_endcaps->Sumw2();
466  h_ele_lostHitsVsEta = new TH2F( "h_ele_lostHitsVsEta", "ele track # lost hits vs eta", nbineta2D,etamin,etamax,nbinlhits,0.,lhitsmax);
467  h_ele_lostHitsVsPhi = new TH2F( "h_ele_lostHitsVsPhi", "ele track # lost hits vs eta", nbinphi2D,phimin,phimax,nbinlhits,0.,lhitsmax);
468  h_ele_lostHitsVsPt = new TH2F( "h_ele_lostHitsVsPt", "ele track # lost hits vs eta", nbinpt2D,0.,ptmax,nbinlhits,0.,lhitsmax);
469  h_ele_chi2 = new TH1F( "h_ele_chi2", "ele track #chi^{2}", 100,0.,15.);
470  h_ele_chi2->Sumw2();
471  h_ele_chi2_barrel = new TH1F( "h_ele_chi2_barrel", "ele track #chi^{2}, barrel", 100,0.,15.);
472  h_ele_chi2_barrel->Sumw2();
473  h_ele_chi2_endcaps = new TH1F( "h_ele_chi2_endcaps", "ele track #chi^{2}, endcaps", 100,0.,15.);
474  h_ele_chi2_endcaps->Sumw2();
475  h_ele_chi2VsEta = new TH2F( "h_ele_chi2VsEta", "ele track #chi^{2} vs eta", nbineta2D,etamin,etamax,50,0.,15.);
476  h_ele_chi2VsPhi = new TH2F( "h_ele_chi2VsPhi", "ele track #chi^{2} vs phi", nbinphi2D,phimin,phimax,50,0.,15.);
477  h_ele_chi2VsPt = new TH2F( "h_ele_chi2VsPt", "ele track #chi^{2} vs pt", nbinpt2D,0.,ptmax,50,0.,15.);
478  h_ele_PinMnPout = new TH1F( "h_ele_PinMnPout", "ele track inner p - outer p, mean of GSF components" ,nbinp,0.,200.);
479  h_ele_PinMnPout->Sumw2();
480  h_ele_PinMnPout_mode = new TH1F( "h_ele_PinMnPout_mode", "ele track inner p - outer p, mode of GSF components" ,nbinp,0.,100.);
481  h_ele_PinMnPout_mode->Sumw2();
482  h_ele_PinMnPoutVsEta_mode = new TH2F( "h_ele_PinMnPoutVsEta_mode", "ele track inner p - outer p vs eta, mode of GSF components" ,nbineta2D, etamin,etamax,nbinp2D,0.,100.);
483  h_ele_PinMnPoutVsPhi_mode = new TH2F( "h_ele_PinMnPoutVsPhi_mode", "ele track inner p - outer p vs phi, mode of GSF components" ,nbinphi2D, phimin,phimax,nbinp2D,0.,100.);
484  h_ele_PinMnPoutVsPt_mode = new TH2F( "h_ele_PinMnPoutVsPt_mode", "ele track inner p - outer p vs pt, mode of GSF components" ,nbinpt2D, 0.,ptmax,nbinp2D,0.,100.);
485  h_ele_PinMnPoutVsE_mode = new TH2F( "h_ele_PinMnPoutVsE_mode", "ele track inner p - outer p vs E, mode of GSF components" ,nbinp2D, 0.,200.,nbinp2D,0.,100.);
486  h_ele_PinMnPoutVsChi2_mode = new TH2F( "h_ele_PinMnPoutVsChi2_mode", "ele track inner p - outer p vs track chi2, mode of GSF components" ,50, 0.,20.,nbinp2D,0.,100.);
487  h_ele_outerP = new TH1F( "h_ele_outerP", "ele track outer p, mean of GSF components", nbinp,0.,pmax);
488  h_ele_outerP->Sumw2();
489  h_ele_outerP_mode = new TH1F( "h_ele_outerP_mode", "ele track outer p, mode of GSF components", nbinp,0.,pmax);
490  h_ele_outerP_mode->Sumw2();
491  h_ele_outerPVsEta_mode = new TH2F( "h_ele_outerPVsEta_mode", "ele track outer p vs eta mode", nbineta2D,etamin,etamax,50,0.,pmax);
492  h_ele_outerPt = new TH1F( "h_ele_outerPt", "ele track outer p_{T}, mean of GSF components", nbinpt,0.,ptmax);
493  h_ele_outerPt->Sumw2();
494  h_ele_outerPt_mode = new TH1F( "h_ele_outerPt_mode", "ele track outer p_{T}, mode of GSF components", nbinpt,0.,ptmax);
495  h_ele_outerPt_mode->Sumw2();
496  h_ele_outerPtVsEta_mode = new TH2F( "h_ele_outerPtVsEta_mode", "ele track outer p_{T} vs eta, mode of GSF components", nbineta2D,etamin,etamax,nbinpt2D,0.,ptmax);
497  h_ele_outerPtVsPhi_mode = new TH2F( "h_ele_outerPtVsPhi_mode", "ele track outer p_{T} vs phi, mode of GSF components", nbinphi2D,phimin,phimax,nbinpt2D,0.,ptmax);
498  h_ele_outerPtVsPt_mode = new TH2F( "h_ele_outerPtVsPt_mode", "ele track outer p_{T} vs pt, mode of GSF components", nbinpt2D,0.,100.,nbinpt2D,0.,ptmax);
499 
500  // matched electrons, matching
501  h_ele_EoP = new TH1F( "h_ele_EoP", "ele E/P_{vertex}", nbineop,0.,eopmax);
502  h_ele_EoP->Sumw2();
503  h_ele_EoP_eg = new TH1F( "h_ele_EoP_eg", "ele E/P_{vertex}, ecal driven", nbineop,0.,eopmax);
504  h_ele_EoP_eg->Sumw2();
505  h_ele_EoP_barrel = new TH1F( "h_ele_EoP_barrel", "ele E/P_{vertex} barrel", nbineop,0.,eopmax);
506  h_ele_EoP_barrel->Sumw2();
507  h_ele_EoP_eg_barrel = new TH1F( "h_ele_EoP_eg_barrel", "ele E/P_{vertex}, ecal driven barrel", nbineop,0.,eopmax);
508  h_ele_EoP_eg_barrel->Sumw2();
509  h_ele_EoP_endcaps = new TH1F( "h_ele_EoP_endcaps", "ele E/P_{vertex} endcaps", nbineop,0.,eopmax);
510  h_ele_EoP_endcaps->Sumw2();
511  h_ele_EoP_eg_endcaps = new TH1F( "h_ele_EoP_eg_endcaps", "ele E/P_{vertex}, ecal driven endcaps", nbineop,0.,eopmax);
512  h_ele_EoP_eg_endcaps->Sumw2();
513  h_ele_EoPVsEta = new TH2F( "h_ele_EoPVsEta", "ele E/P_{vertex} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
514  h_ele_EoPVsPhi = new TH2F( "h_ele_EoPVsPhi", "ele E/P_{vertex} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
515  h_ele_EoPVsE = new TH2F( "h_ele_EoPVsE", "ele E/P_{vertex} vs E", 50,0.,pmax ,50,0.,5.);
516  h_ele_EseedOP = new TH1F( "h_ele_EseedOP", "ele E_{seed}/P_{vertex}", nbineop,0.,eopmax);
517  h_ele_EseedOP->Sumw2();
518  h_ele_EseedOP_eg = new TH1F( "h_ele_EseedOP_eg", "ele E_{seed}/P_{vertex}, ecal driven", nbineop,0.,eopmax);
519  h_ele_EseedOP_eg->Sumw2();
520  h_ele_EseedOP_barrel = new TH1F( "h_ele_EseedOP_barrel", "ele E_{seed}/P_{vertex} barrel", nbineop,0.,eopmax);
521  h_ele_EseedOP_barrel->Sumw2();
522  h_ele_EseedOP_eg_barrel = new TH1F( "h_ele_EseedOP_eg_barrel", "ele E_{seed}/P_{vertex}, ecal driven barrel", nbineop,0.,eopmax);
523  h_ele_EseedOP_eg_barrel->Sumw2();
524  h_ele_EseedOP_endcaps = new TH1F( "h_ele_EseedOP_endcaps", "ele E_{seed}/P_{vertex} endcaps", nbineop,0.,eopmax);
525  h_ele_EseedOP_endcaps->Sumw2();
526  h_ele_EseedOP_eg_endcaps = new TH1F( "h_ele_EseedOP_eg_endcaps", "ele E_{seed}/P_{vertex}, ecal driven, endcaps", nbineop,0.,eopmax);
527  h_ele_EseedOP_eg_endcaps->Sumw2();
528  h_ele_EseedOPVsEta = new TH2F( "h_ele_EseedOPVsEta", "ele E_{seed}/P_{vertex} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
529  h_ele_EseedOPVsPhi = new TH2F( "h_ele_EseedOPVsPhi", "ele E_{seed}/P_{vertex} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
530  h_ele_EseedOPVsE = new TH2F( "h_ele_EseedOPVsE", "ele E_{seed}/P_{vertex} vs E", 50,0.,pmax ,50,0.,5.);
531  h_ele_EoPout = new TH1F( "h_ele_EoPout", "ele E_{seed}/P_{out}", nbineop,0.,eopmax);
532  h_ele_EoPout->Sumw2();
533  h_ele_EoPout_eg = new TH1F( "h_ele_EoPout_eg", "ele E_{seed}/P_{out}, ecal driven", nbineop,0.,eopmax);
534  h_ele_EoPout_eg->Sumw2();
535  h_ele_EoPout_barrel = new TH1F( "h_ele_EoPout_barrel", "ele E_{seed}/P_{out} barrel", nbineop,0.,eopmax);
536  h_ele_EoPout_barrel->Sumw2();
537  h_ele_EoPout_eg_barrel = new TH1F( "h_ele_EoPout_eg_barrel", "ele E_{seed}/P_{out}, ecal driven, barrel", nbineop,0.,eopmax);
538  h_ele_EoPout_eg_barrel->Sumw2();
539  h_ele_EoPout_endcaps = new TH1F( "h_ele_EoPout_endcaps", "ele E_{seed}/P_{out} endcaps", nbineop,0.,eopmax);
540  h_ele_EoPout_endcaps->Sumw2();
541  h_ele_EoPout_eg_endcaps = new TH1F( "h_ele_EoPout_eg_endcaps", "ele E_{seed}/P_{out}, ecal driven, endcaps", nbineop,0.,eopmax);
542  h_ele_EoPout_eg_endcaps->Sumw2();
543  h_ele_EoPoutVsEta = new TH2F( "h_ele_EoPoutVsEta", "ele E_{seed}/P_{out} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
544  h_ele_EoPoutVsPhi = new TH2F( "h_ele_EoPoutVsPhi", "ele E_{seed}/P_{out} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
545  h_ele_EoPoutVsE = new TH2F( "h_ele_EoPoutVsE", "ele E_{seed}/P_{out} vs E", nbinp2D,0.,pmax,nbineop2D,0.,eopmaxsht);
546  h_ele_EeleOPout = new TH1F( "h_ele_EeleOPout", "ele E_{ele}/P_{out}", nbineop,0.,eopmax);
547  h_ele_EeleOPout->Sumw2();
548  h_ele_EeleOPout_eg = new TH1F( "h_ele_EeleOPout_eg", "ele E_{ele}/P_{out}, ecal driven", nbineop,0.,eopmax);
549  h_ele_EeleOPout_eg->Sumw2();
550  h_ele_EeleOPout_barrel = new TH1F( "h_ele_EeleOPout_barrel", "ele E_{ele}/P_{out} barrel", nbineop,0.,eopmax);
551  h_ele_EeleOPout_barrel->Sumw2();
552  h_ele_EeleOPout_eg_barrel = new TH1F( "h_ele_EeleOPout_eg_barrel", "ele E_{ele}/P_{out}, ecal driven, barrel", nbineop,0.,eopmax);
553  h_ele_EeleOPout_eg_barrel->Sumw2();
554  h_ele_EeleOPout_endcaps = new TH1F( "h_ele_EeleOPout_endcaps", "ele E_{ele}/P_{out} endcaps", nbineop,0.,eopmax);
555  h_ele_EeleOPout_endcaps->Sumw2();
556  h_ele_EeleOPout_eg_endcaps = new TH1F( "h_ele_EeleOPout_eg_endcaps", "ele E_{ele}/P_{out}, ecal driven, endcaps", nbineop,0.,eopmax);
558  h_ele_EeleOPoutVsEta = new TH2F( "h_ele_EeleOPoutVsEta", "ele E_{ele}/P_{out} vs eta", nbineta2D,etamin,etamax,nbineop2D,0.,eopmaxsht);
559  h_ele_EeleOPoutVsPhi = new TH2F( "h_ele_EeleOPoutVsPhi", "ele E_{ele}/P_{out} vs phi", nbinphi2D,phimin,phimax,nbineop2D,0.,eopmaxsht);
560  h_ele_EeleOPoutVsE = new TH2F( "h_ele_EeleOPoutVsE", "ele E_{ele}/P_{out} vs E", nbinp2D,0.,pmax,nbineop2D,0.,eopmaxsht);
561  h_ele_dEtaSc_propVtx = new TH1F( "h_ele_dEtaSc_propVtx", "ele #eta_{sc} - #eta_{tr}, prop from vertex", nbindetamatch,detamatchmin,detamatchmax);
562  h_ele_dEtaSc_propVtx->Sumw2();
563  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);
564  h_ele_dEtaSc_propVtx_eg->Sumw2();
565  h_ele_dEtaSc_propVtx_barrel = new TH1F( "h_ele_dEtaSc_propVtx_barrel", "ele #eta_{sc} - #eta_{tr}, prop from vertex, barrel", nbindetamatch,detamatchmin,detamatchmax);
567  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);
569  h_ele_dEtaSc_propVtx_endcaps = new TH1F( "h_ele_dEtaSc_propVtx_endcaps", "ele #eta_{sc} - #eta_{tr}, prop from vertex, endcaps", nbindetamatch,detamatchmin,detamatchmax);
571  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);
573  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);
574  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);
575  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);
576  h_ele_dPhiSc_propVtx = new TH1F( "h_ele_dPhiSc_propVtx", "ele #phi_{sc} - #phi_{tr}, prop from vertex", nbindphimatch,dphimatchmin,dphimatchmax);
577  h_ele_dPhiSc_propVtx->Sumw2();
578  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);
579  h_ele_dPhiSc_propVtx_eg->Sumw2();
580  h_ele_dPhiSc_propVtx_barrel = new TH1F( "h_ele_dPhiSc_propVtx_barrel", "ele #phi_{sc} - #phi_{tr}, prop from vertex, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
582  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);
584  h_ele_dPhiSc_propVtx_endcaps = new TH1F( "h_ele_dPhiSc_propVtx_endcaps", "ele #phi_{sc} - #phi_{tr}, prop from vertex, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
586  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);
588  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);
589  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);
590  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);
591  h_ele_dEtaCl_propOut = new TH1F( "h_ele_dEtaCl_propOut", "ele #eta_{cl} - #eta_{tr}, prop from outermost", nbindetamatch,detamatchmin,detamatchmax);
592  h_ele_dEtaCl_propOut->Sumw2();
593  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);
594  h_ele_dEtaCl_propOut_eg->Sumw2();
595  h_ele_dEtaCl_propOut_barrel = new TH1F( "h_ele_dEtaCl_propOut_barrel", "ele #eta_{cl} - #eta_{tr}, prop from outermost, barrel", nbindetamatch,detamatchmin,detamatchmax);
597  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);
599  h_ele_dEtaCl_propOut_endcaps = new TH1F( "h_ele_dEtaCl_propOut_endcaps", "ele #eta_{cl} - #eta_{tr}, prop from outermost, endcaps", nbindetamatch,detamatchmin,detamatchmax);
601  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);
603  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);
604  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);
605  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);
606  h_ele_dPhiCl_propOut = new TH1F( "h_ele_dPhiCl_propOut", "ele #phi_{cl} - #phi_{tr}, prop from outermost", nbindphimatch,dphimatchmin,dphimatchmax);
607  h_ele_dPhiCl_propOut->Sumw2();
608  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);
609  h_ele_dPhiCl_propOut_eg->Sumw2();
610  h_ele_dPhiCl_propOut_barrel = new TH1F( "h_ele_dPhiCl_propOut_barrel", "ele #phi_{cl} - #phi_{tr}, prop from outermost, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
612  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);
614  h_ele_dPhiCl_propOut_endcaps = new TH1F( "h_ele_dPhiCl_propOut_endcaps", "ele #phi_{cl} - #phi_{tr}, prop from outermost, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
616  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);
618  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);
619  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);
620  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);
621  h_ele_dEtaEleCl_propOut = new TH1F( "h_ele_dEtaEleCl_propOut", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost", nbindetamatch,detamatchmin,detamatchmax);
622  h_ele_dEtaEleCl_propOut->Sumw2();
623  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);
625  h_ele_dEtaEleCl_propOut_barrel = new TH1F( "h_ele_dEtaEleCl_propOut_barrel", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, barrel", nbindetamatch,detamatchmin,detamatchmax);
627  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);
629  h_ele_dEtaEleCl_propOut_endcaps = new TH1F( "h_ele_dEtaEleCl_propOut_endcaps", "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, endcaps", nbindetamatch,detamatchmin,detamatchmax);
631  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);
633  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);
634  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);
635  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);
636  h_ele_dPhiEleCl_propOut = new TH1F( "h_ele_dPhiEleCl_propOut", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost", nbindphimatch,dphimatchmin,dphimatchmax);
637  h_ele_dPhiEleCl_propOut->Sumw2();
638  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);
640  h_ele_dPhiEleCl_propOut_barrel = new TH1F( "h_ele_dPhiEleCl_propOut_barrel", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, barrel", nbindphimatch,dphimatchmin,dphimatchmax);
642  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);
644  h_ele_dPhiEleCl_propOut_endcaps = new TH1F( "h_ele_dPhiEleCl_propOut_endcaps", "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, endcaps", nbindphimatch,dphimatchmin,dphimatchmax);
646  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);
648  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);
649  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);
650  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);
651 
652  h_ele_HoE = new TH1F("h_ele_HoE", "ele hadronic energy / em energy", nbinhoe, hoemin, hoemax) ;
653  h_ele_HoE->Sumw2();
654  h_ele_HoE_eg = new TH1F("h_ele_HoE_eg", "ele hadronic energy / em energy, ecal driven", nbinhoe, hoemin, hoemax) ;
655  h_ele_HoE_eg->Sumw2();
656  h_ele_HoE_barrel = new TH1F("h_ele_HoE_barrel", "ele hadronic energy / em energy, barrel", nbinhoe, hoemin, hoemax) ;
657  h_ele_HoE_barrel->Sumw2();
658  h_ele_HoE_eg_barrel = new TH1F("h_ele_HoE_eg_barrel", "ele hadronic energy / em energy, ecal driven, barrel", nbinhoe, hoemin, hoemax) ;
659  h_ele_HoE_eg_barrel->Sumw2();
660  h_ele_HoE_endcaps = new TH1F("h_ele_HoE_endcaps", "ele hadronic energy / em energy, endcaps", nbinhoe, hoemin, hoemax) ;
661  h_ele_HoE_endcaps->Sumw2();
662  h_ele_HoE_eg_endcaps = new TH1F("h_ele_HoE_eg_endcaps", "ele hadronic energy / em energy, ecal driven, endcaps", nbinhoe, hoemin, hoemax) ;
663  h_ele_HoE_eg_endcaps->Sumw2();
664  h_ele_HoE_fiducial = new TH1F("h_ele_HoE_fiducial", "ele hadronic energy / em energy, fiducial region", nbinhoe, hoemin, hoemax) ;
665  h_ele_HoE_fiducial->Sumw2();
666  h_ele_HoEVsEta = new TH2F("h_ele_HoEVsEta", "ele hadronic energy / em energy vs eta", nbineta,etamin,etamax,nbinhoe, hoemin, hoemax) ;
667  h_ele_HoEVsPhi = new TH2F("h_ele_HoEVsPhi", "ele hadronic energy / em energy vs phi", nbinphi2D,phimin,phimax,nbinhoe, hoemin, hoemax) ;
668  h_ele_HoEVsE = new TH2F("h_ele_HoEVsE", "ele hadronic energy / em energy vs E", nbinp, 0.,300.,nbinhoe, hoemin, hoemax) ;
669 
670  h_ele_seed_dphi2_ = new TH1F("h_ele_seedDphi2", "ele seed dphi 2nd layer", 50,-0.003,+0.003) ;
671  h_ele_seed_dphi2_->Sumw2();
672  h_ele_seed_dphi2VsEta_ = new TH2F("h_ele_seedDphi2VsEta", "ele seed dphi 2nd layer vs eta", nbineta2D,etamin,etamax,50,-0.003,+0.003) ;
673  h_ele_seed_dphi2VsPt_ = new TH2F("h_ele_seedDphi2VsPt", "ele seed dphi 2nd layer vs pt", nbinpt2D,0.,ptmax,50,-0.003,+0.003) ;
674  h_ele_seed_drz2_ = new TH1F("h_ele_seedDrz2", "ele seed dr (dz) 2nd layer", 50,-0.03,+0.03) ;
675  h_ele_seed_drz2_->Sumw2();
676  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) ;
677  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) ;
678  h_ele_seed_subdet2_ = new TH1F("h_ele_seedSubdet2", "ele seed subdet 2nd layer", 10,0.,10.) ;
679  h_ele_seed_subdet2_->Sumw2();
680 
681  // classes
682  h_ele_classes = new TH1F( "h_ele_classes", "ele classes", 20,0.0,20.);
683  h_ele_classes->Sumw2();
684  h_ele_eta = new TH1F( "h_ele_eta", "ele electron eta", nbineta/2,0.0,etamax);
685  h_ele_eta->Sumw2();
686  h_ele_eta_golden = new TH1F( "h_ele_eta_golden", "ele electron eta golden", nbineta/2,0.0,etamax);
687  h_ele_eta_golden->Sumw2();
688  h_ele_eta_bbrem = new TH1F( "h_ele_eta_bbrem", "ele electron eta bbrem", nbineta/2,0.0,etamax);
689  h_ele_eta_bbrem->Sumw2();
690  h_ele_eta_narrow = new TH1F( "h_ele_eta_narrow", "ele electron eta narrow", nbineta/2,0.0,etamax);
691  h_ele_eta_narrow->Sumw2();
692  h_ele_eta_shower = new TH1F( "h_ele_eta_show", "ele electron eta showering", nbineta/2,0.0,etamax);
693  h_ele_eta_shower->Sumw2();
694  h_ele_PinVsPoutGolden_mode = new TH2F( "h_ele_PinVsPoutGolden_mode", "ele track inner p vs outer p vs eta, golden, mode of GSF components" ,nbinp2D,0.,pmax,50,0.,pmax);
695  h_ele_PinVsPoutShowering_mode = new TH2F( "h_ele_PinVsPoutShowering_mode", "ele track inner p vs outer p vs eta, showering, mode of GSF components" ,nbinp2D,0.,pmax,50,0.,pmax);
696  h_ele_PinVsPoutGolden_mean = new TH2F( "h_ele_PinVsPoutGolden_mean", "ele track inner p vs outer p vs eta, golden, mean of GSF components" ,nbinp2D,0.,pmax,50,0.,pmax);
697  h_ele_PinVsPoutShowering_mean = new TH2F( "h_ele_PinVsPoutShowering_mean", "ele track inner p vs outer p vs eta, showering, mean of GSF components" ,nbinp2D,0.,pmax,50,0.,pmax);
698  h_ele_PtinVsPtoutGolden_mode = new TH2F( "h_ele_PtinVsPtoutGolden_mode", "ele track inner pt vs outer pt vs eta, golden, mode of GSF components" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
699  h_ele_PtinVsPtoutShowering_mode = new TH2F( "h_ele_PtinVsPtoutShowering_mode", "ele track inner pt vs outer pt vs eta, showering, mode of GSF components" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
700  h_ele_PtinVsPtoutGolden_mean = new TH2F( "h_ele_PtinVsPtoutGolden_mean", "ele track inner pt vs outer pt vs eta, golden, mean of GSF components" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
701  h_ele_PtinVsPtoutShowering_mean = new TH2F( "h_ele_PtinVsPtoutShowering_mean", "ele track inner pt vs outer pt vs eta, showering, mean of GSF components" ,nbinpt2D,0.,ptmax,50,0.,ptmax);
702  histSclEoEtrueGolden_barrel = new TH1F("h_scl_EoEtrue_golden_barrel","ele supercluster energy / gen energy, golden, barrel",nbinpoptrue,poptruemin,poptruemax);
704  histSclEoEtrueGolden_endcaps = new TH1F("h_scl_EoEtrue_golden_endcaps","ele supercluster energy / gen energy, golden, endcaps",nbinpoptrue,poptruemin,poptruemax);
706  histSclEoEtrueShowering_barrel = new TH1F("h_scl_EoEtrue_showering_barrel","ele supercluster energy / gen energy, showering, barrel",nbinpoptrue,poptruemin,poptruemax);
708  histSclEoEtrueShowering_endcaps = new TH1F("h_scl_EoEtrue_showering_endcaps","ele supercluster energy / gen energy, showering, endcaps",nbinpoptrue,poptruemin,poptruemax);
710 
711  // isolation
712  h_ele_tkSumPt_dr03 = new TH1F("h_ele_tkSumPt_dr03","tk isolation sum, dR=0.3",100,0.0,20.);
713  h_ele_tkSumPt_dr03->Sumw2();
714  h_ele_ecalRecHitSumEt_dr03= new TH1F("h_ele_ecalRecHitSumEt_dr03","ecal isolation sum, dR=0.3",100,0.0,20.);
716  h_ele_hcalDepth1TowerSumEt_dr03= new TH1F("h_ele_hcalDepth1TowerSumEt_dr03","hcal depth1 isolation sum, dR=0.3",100,0.0,20.);
718  h_ele_hcalDepth2TowerSumEt_dr03= new TH1F("h_ele_hcalDepth2TowerSumEt_dr03","hcal depth2 isolation sum, dR=0.3",100,0.0,20.);
720  h_ele_tkSumPt_dr04= new TH1F("h_ele_tkSumPt_dr04","tk isolation sum, dR=0.4",100,0.0,20.);
721  h_ele_tkSumPt_dr04->Sumw2();
722  h_ele_ecalRecHitSumEt_dr04= new TH1F("h_ele_ecalRecHitSumEt_dr04","ecal isolation sum, dR=0.4",100,0.0,20.);
724  h_ele_hcalDepth1TowerSumEt_dr04= new TH1F("h_ele_hcalDepth1TowerSumEt_dr04","hcal depth1 isolation sum, dR=0.4",100,0.0,20.);
726  h_ele_hcalDepth2TowerSumEt_dr04= new TH1F("h_ele_hcalDepth2TowerSumEt_dr04","hcal depth2 isolation sum, dR=0.4",100,0.0,20.);
728 
729  // fbrem
730  h_ele_fbrem = new TH1F( "h_ele_fbrem","ele brem fraction, mode of GSF components",100,0.,1.);
731  h_ele_fbrem->Sumw2();
732  h_ele_fbrem_eg = new TH1F( "h_ele_fbrem_eg","ele brem fraction, mode of GSF components, ecal driven",100,0.,1.);
733  h_ele_fbrem_eg->Sumw2();
734  h_ele_fbremVsEta_mode = new TProfile( "h_ele_fbremvsEtamode","mean ele brem fraction vs eta, mode of GSF components",nbineta2D,etamin,etamax,0.,1.);
735  h_ele_fbremVsEta_mean = new TProfile( "h_ele_fbremvsEtamean","mean ele brem fraction vs eta, mean of GSF components",nbineta2D,etamin,etamax,0.,1.);
736 
737  // e/g et pflow electrons
738  h_ele_mva = new TH1F( "h_ele_mva","ele identification mva",100,-1.,1.);
739  h_ele_mva->Sumw2();
740  h_ele_mva_eg = new TH1F( "h_ele_mva_eg","ele identification mva, ecal driven",100,-1.,1.);
741  h_ele_mva_eg->Sumw2();
742  h_ele_provenance = new TH1F( "h_ele_provenance","ele provenance",5,-2.,3.);
743  h_ele_provenance->Sumw2();
744 
745  // histos titles
746  h_mcNum -> GetXaxis()-> SetTitle("N_{gen}");
747  h_mcNum -> GetYaxis()-> SetTitle("Events");
748  h_eleNum -> GetXaxis()-> SetTitle("# gen ele");
749  h_eleNum -> GetYaxis()-> SetTitle("Events");
750  h_gamNum -> GetXaxis()-> SetTitle("N_{gen #gamma}");
751  h_gamNum -> GetYaxis()-> SetTitle("Events");
752  h_simEta -> GetXaxis()-> SetTitle("#eta");
753  h_simEta -> GetYaxis()-> SetTitle("Events");
754  h_simP -> GetXaxis()-> SetTitle("p (GeV/c)");
755  h_simP -> GetYaxis()-> SetTitle("Events");
756  h_ele_foundHits -> GetXaxis()-> SetTitle("N_{hits}");
757  h_ele_foundHits -> GetYaxis()-> SetTitle("Events");
758  h_ele_foundHits_barrel -> GetXaxis()-> SetTitle("N_{hits}");
759  h_ele_foundHits_barrel -> GetYaxis()-> SetTitle("Events");
760  h_ele_foundHits_endcaps -> GetXaxis()-> SetTitle("N_{hits}");
761  h_ele_foundHits_endcaps -> GetYaxis()-> SetTitle("Events");
762  h_ele_ambiguousTracks -> GetXaxis()-> SetTitle("N_{ambiguous tracks}");
763  h_ele_ambiguousTracks -> GetYaxis()-> SetTitle("Events");
764  h_ele_lostHits -> GetXaxis()-> SetTitle("N_{lost hits}");
765  h_ele_lostHits -> GetYaxis()-> SetTitle("Events");
766  h_ele_lostHits_barrel -> GetXaxis()-> SetTitle("N_{lost hits}");
767  h_ele_lostHits_barrel -> GetYaxis()-> SetTitle("Events");
768  h_ele_lostHits_endcaps -> GetXaxis()-> SetTitle("N_{lost hits}");
769  h_ele_lostHits_endcaps -> GetYaxis()-> SetTitle("Events");
770  h_ele_chi2 -> GetXaxis()-> SetTitle("#Chi^{2}");
771  h_ele_chi2 -> GetYaxis()-> SetTitle("Events");
772  h_ele_chi2_barrel -> GetXaxis()-> SetTitle("#Chi^{2}");
773  h_ele_chi2_barrel -> GetYaxis()-> SetTitle("Events");
774  h_ele_chi2_endcaps -> GetXaxis()-> SetTitle("#Chi^{2}");
775  h_ele_chi2_endcaps -> GetYaxis()-> SetTitle("Events");
776  h_ele_charge -> GetXaxis()-> SetTitle("charge");
777  h_ele_charge -> GetYaxis()-> SetTitle("Events");
778  h_ele_vertexP -> GetXaxis()-> SetTitle("p_{vertex} (GeV/c)");
779  h_ele_vertexP -> GetYaxis()-> SetTitle("Events");
780  h_ele_vertexPt -> GetXaxis()-> SetTitle("p_{T vertex} (GeV/c)");
781  h_ele_vertexPt -> GetYaxis()-> SetTitle("Events");
782  h_ele_Et -> GetXaxis()-> SetTitle("E_{T} (GeV)");
783  h_ele_Et -> GetYaxis()-> SetTitle("Events");
784  h_ele_Et_all -> GetXaxis()-> SetTitle("E_{T} (GeV)");
785  h_ele_Et_all -> GetYaxis()-> SetTitle("Events");
786  h_ele_vertexEta -> GetXaxis()-> SetTitle("#eta");
787  h_ele_vertexEta -> GetYaxis()-> SetTitle("Events");
788  h_ele_vertexPhi -> GetXaxis()-> SetTitle("#phi (rad)");
789  h_ele_vertexPhi -> GetYaxis()-> SetTitle("Events");
790  h_ele_PoPtrue -> GetXaxis()-> SetTitle("P/P_{gen}");
791  h_ele_PoPtrue -> GetYaxis()-> SetTitle("Events");
792  h_ele_PoPtrue_barrel -> GetXaxis()-> SetTitle("P/P_{gen}");
793  h_ele_PoPtrue_barrel -> GetYaxis()-> SetTitle("Events");
794  h_ele_PoPtrue_endcaps -> GetXaxis()-> SetTitle("P/P_{gen}");
795  h_ele_PoPtrue_endcaps -> GetYaxis()-> SetTitle("Events");
796  h_ele_PoPtrue_golden_barrel -> GetXaxis()-> SetTitle("P/P_{gen}");
797  h_ele_PoPtrue_golden_barrel -> GetYaxis()-> SetTitle("Events");
798  h_ele_PoPtrue_showering_barrel -> GetXaxis()-> SetTitle("P/P_{gen}");
799  h_ele_PoPtrue_showering_barrel -> GetYaxis()-> SetTitle("Events");
800  h_ele_PoPtrue_golden_endcaps -> GetXaxis()-> SetTitle("P/P_{gen}");
801  h_ele_PoPtrue_golden_endcaps -> GetYaxis()-> SetTitle("Events");
802  h_ele_PoPtrue_showering_endcaps -> GetXaxis()-> SetTitle("P/P_{gen}");
803  h_ele_PoPtrue_showering_endcaps -> GetYaxis()-> SetTitle("Events");
804  h_ele_PtoPttrue -> GetXaxis()-> SetTitle("P_{T}/P_{T}^{gen}");
805  h_ele_PtoPttrue -> GetYaxis()-> SetTitle("Events");
806  h_ele_PtoPttrue_barrel -> GetXaxis()-> SetTitle("P_{T}/P_{T}^{gen}");
807  h_ele_PtoPttrue_barrel -> GetYaxis()-> SetTitle("Events");
808  h_ele_PtoPttrue_endcaps -> GetXaxis()-> SetTitle("P_{T}/P_{T}^{gen}");
809  h_ele_PtoPttrue_endcaps -> GetYaxis()-> SetTitle("Events");
810  histSclEoEtrue_barrel -> GetXaxis()-> SetTitle("E/E_{gen}") ;
811  histSclEoEtrue_barrel -> GetYaxis()-> SetTitle("Events") ;
812  histSclEoEtrue_endcaps -> GetXaxis()-> SetTitle("E/E_{gen}") ;
813  histSclEoEtrue_endcaps -> GetYaxis()-> SetTitle("Events") ;
814  histSclEoEtrueGolden_barrel -> GetXaxis()-> SetTitle("E/E_{gen}") ;
815  histSclEoEtrueGolden_barrel -> GetYaxis()-> SetTitle("Events") ;
816  histSclEoEtrueShowering_barrel -> GetXaxis()-> SetTitle("E/E_{gen}") ;
817  histSclEoEtrueShowering_barrel -> GetYaxis()-> SetTitle("Events") ;
818  histSclEoEtrueGolden_endcaps -> GetXaxis()-> SetTitle("E/E_{gen}") ;
819  histSclEoEtrueGolden_endcaps -> GetYaxis()-> SetTitle("Events") ;
820  histSclEoEtrueShowering_endcaps -> GetXaxis()-> SetTitle("E/E_{gen}") ;
821  histSclEoEtrueShowering_endcaps -> GetYaxis()-> SetTitle("Events") ;
822  histSclEoEtrue_barrel_etagap -> GetXaxis()-> SetTitle("E/E_{gen}");
823  histSclEoEtrue_barrel_etagap -> GetYaxis()-> SetTitle("Events");
824  histSclEoEtrue_barrel_phigap -> GetXaxis()-> SetTitle("E/E_{gen}");
825  histSclEoEtrue_barrel_phigap -> GetYaxis()-> SetTitle("Events");
826  histSclEoEtrue_ebeegap -> GetXaxis()-> SetTitle("E/E_{gen}");
827  histSclEoEtrue_ebeegap -> GetYaxis()-> SetTitle("Events");
828  histSclEoEtrue_endcaps_deegap -> GetXaxis()-> SetTitle("E/E_{gen}");
829  histSclEoEtrue_endcaps_deegap -> GetYaxis()-> SetTitle("Events");
830  histSclEoEtrue_endcaps_ringgap -> GetXaxis()-> SetTitle("E/E_{gen}");
831  histSclEoEtrue_endcaps_ringgap -> GetYaxis()-> SetTitle("Events");
832  histSclEoEtrue_barrel_new -> GetXaxis()-> SetTitle("E/E_{gen}") ;
833  histSclEoEtrue_barrel_new -> GetYaxis()-> SetTitle("Events") ;
834  histSclEoEtrue_endcaps_new -> GetXaxis()-> SetTitle("E/E_{gen}") ;
835  histSclEoEtrue_endcaps_new -> GetYaxis()-> SetTitle("Events") ;
836  histSclEoEtrue_barrel_etagap_new -> GetXaxis()-> SetTitle("E/E_{gen}");
837  histSclEoEtrue_barrel_etagap_new -> GetYaxis()-> SetTitle("Events");
838  histSclEoEtrue_barrel_phigap_new -> GetXaxis()-> SetTitle("E/E_{gen}");
839  histSclEoEtrue_barrel_phigap_new -> GetYaxis()-> SetTitle("Events");
840  histSclEoEtrue_ebeegap_new -> GetXaxis()-> SetTitle("E/E_{gen}");
841  histSclEoEtrue_ebeegap_new -> GetYaxis()-> SetTitle("Events");
842  histSclEoEtrue_endcaps_deegap_new -> GetXaxis()-> SetTitle("E/E_{gen}");
843  histSclEoEtrue_endcaps_deegap_new -> GetYaxis()-> SetTitle("Events");
844  histSclEoEtrue_endcaps_ringgap_new -> GetXaxis()-> SetTitle("E/E_{gen}");
845  histSclEoEtrue_endcaps_ringgap_new -> GetYaxis()-> SetTitle("Events");
846  histSclSigEtaEta_-> GetXaxis()-> SetTitle("#sigma_{#eta #eta}") ;
847  histSclSigEtaEta_-> GetYaxis()-> SetTitle("Events") ;
848  histSclSigEtaEta_barrel_-> GetXaxis()-> SetTitle("#sigma_{#eta #eta}") ;
849  histSclSigEtaEta_barrel_-> GetYaxis()-> SetTitle("Events") ;
850  histSclSigEtaEta_endcaps_-> GetXaxis()-> SetTitle("#sigma_{#eta #eta}") ;
851  histSclSigEtaEta_endcaps_-> GetYaxis()-> SetTitle("Events") ;
852  histSclSigIEtaIEta_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
853  histSclSigIEtaIEta_-> GetYaxis()-> SetTitle("Events") ;
854  histSclSigIEtaIEta_barrel_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
855  histSclSigIEtaIEta_barrel_-> GetYaxis()-> SetTitle("Events") ;
856  histSclSigIEtaIEta_endcaps_-> GetXaxis()-> SetTitle("#sigma_{i#eta i#eta}") ;
857  histSclSigIEtaIEta_endcaps_-> GetYaxis()-> SetTitle("Events") ;
858  histSclE1x5_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
859  histSclE1x5_-> GetYaxis()-> SetTitle("Events") ;
860  histSclE1x5_barrel_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
861  histSclE1x5_barrel_-> GetYaxis()-> SetTitle("Events") ;
862  histSclE1x5_endcaps_-> GetXaxis()-> SetTitle("E1x5 (GeV)") ;
863  histSclE1x5_endcaps_-> GetYaxis()-> SetTitle("Events") ;
864  histSclE2x5max_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
865  histSclE2x5max_-> GetYaxis()-> SetTitle("Events") ;
866  histSclE2x5max_barrel_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
867  histSclE2x5max_barrel_-> GetYaxis()-> SetTitle("Events") ;
868  histSclE2x5max_endcaps_-> GetXaxis()-> SetTitle("E2x5 (GeV)") ;
869  histSclE2x5max_endcaps_-> GetYaxis()-> SetTitle("Events") ;
870  histSclE5x5_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
871  histSclE5x5_-> GetYaxis()-> SetTitle("Events") ;
872  histSclE5x5_barrel_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
873  histSclE5x5_barrel_-> GetYaxis()-> SetTitle("Events") ;
874  histSclE5x5_endcaps_-> GetXaxis()-> SetTitle("E5x5 (GeV)") ;
875  histSclE5x5_endcaps_-> GetYaxis()-> SetTitle("Events") ;
876  histSclEoEtruePfVsEg->GetXaxis()->SetTitle("E/E_{gen} (e/g)") ;
877  histSclEoEtruePfVsEg->GetYaxis()->SetTitle("E/E_{gen} (pflow)") ;
878  h_ele_ChargeMnChargeTrue -> GetXaxis()-> SetTitle("q_{rec} - q_{gen}");
879  h_ele_ChargeMnChargeTrue -> GetYaxis()-> SetTitle("Events");
880  h_ele_EtaMnEtaTrue -> GetXaxis()-> SetTitle("#eta_{rec} - #eta_{gen}");
881  h_ele_EtaMnEtaTrue -> GetYaxis()-> SetTitle("Events");
882  h_ele_EtaMnEtaTrue_barrel -> GetXaxis()-> SetTitle("#eta_{rec} - #eta_{gen}");
883  h_ele_EtaMnEtaTrue_barrel -> GetYaxis()-> SetTitle("Events");
884  h_ele_EtaMnEtaTrue_endcaps -> GetXaxis()-> SetTitle("#eta_{rec} - #eta_{gen}");
885  h_ele_EtaMnEtaTrue_endcaps -> GetYaxis()-> SetTitle("Events");
886  h_ele_PhiMnPhiTrue -> GetXaxis()-> SetTitle("#phi_{rec} - #phi_{gen} (rad)");
887  h_ele_PhiMnPhiTrue -> GetYaxis()-> SetTitle("Events");
888  h_ele_PhiMnPhiTrue_barrel -> GetXaxis()-> SetTitle("#phi_{rec} - #phi_{gen} (rad)");
889  h_ele_PhiMnPhiTrue_barrel -> GetYaxis()-> SetTitle("Events");
890  h_ele_PhiMnPhiTrue_endcaps -> GetXaxis()-> SetTitle("#phi_{rec} - #phi_{gen} (rad)");
891  h_ele_PhiMnPhiTrue_endcaps -> GetYaxis()-> SetTitle("Events");
892  h_ele_PinMnPout -> GetXaxis()-> SetTitle("P_{vertex} - P_{out} (GeV/c)");
893  h_ele_PinMnPout -> GetYaxis()-> SetTitle("Events");
894  h_ele_PinMnPout_mode -> GetXaxis()-> SetTitle("P_{vertex} - P_{out}, mode of GSF components (GeV/c)");
895  h_ele_PinMnPout_mode -> GetYaxis()-> SetTitle("Events");
896  h_ele_outerP -> GetXaxis()-> SetTitle("P_{out} (GeV/c)");
897  h_ele_outerP -> GetYaxis()-> SetTitle("Events");
898  h_ele_outerP_mode -> GetXaxis()-> SetTitle("P_{out} (GeV/c)");
899  h_ele_outerP_mode -> GetYaxis()-> SetTitle("Events");
900  h_ele_outerPt -> GetXaxis()-> SetTitle("P_{T out} (GeV/c)");
901  h_ele_outerPt -> GetYaxis()-> SetTitle("Events");
902  h_ele_outerPt_mode -> GetXaxis()-> SetTitle("P_{T out} (GeV/c)");
903  h_ele_outerPt_mode -> GetYaxis()-> SetTitle("Events");
904  h_ele_EoP -> GetXaxis()-> SetTitle("E/P_{vertex}");
905  h_ele_EoP -> GetYaxis()-> SetTitle("Events");
906  h_ele_EseedOP -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
907  h_ele_EseedOP -> GetYaxis()-> SetTitle("Events");
908  h_ele_EoPout -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
909  h_ele_EoPout -> GetYaxis()-> SetTitle("Events");
910  h_ele_EeleOPout -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
911  h_ele_EeleOPout -> GetYaxis()-> SetTitle("Events");
912  h_ele_EoP_barrel -> GetXaxis()-> SetTitle("E/P_{vertex}");
913  h_ele_EoP_barrel -> GetYaxis()-> SetTitle("Events");
914  h_ele_EseedOP_barrel -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
915  h_ele_EseedOP_barrel -> GetYaxis()-> SetTitle("Events");
916  h_ele_EoPout_barrel -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
917  h_ele_EoPout_barrel -> GetYaxis()-> SetTitle("Events");
918  h_ele_EeleOPout_barrel -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
919  h_ele_EeleOPout_barrel -> GetYaxis()-> SetTitle("Events");
920  h_ele_EoP_endcaps -> GetXaxis()-> SetTitle("E/P_{vertex}");
921  h_ele_EoP_endcaps -> GetYaxis()-> SetTitle("Events");
922  h_ele_EseedOP_endcaps -> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
923  h_ele_EseedOP_endcaps -> GetYaxis()-> SetTitle("Events");
924  h_ele_EoPout_endcaps -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
925  h_ele_EoPout_endcaps -> GetYaxis()-> SetTitle("Events");
926  h_ele_EeleOPout_endcaps -> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
927  h_ele_EeleOPout_endcaps -> GetYaxis()-> SetTitle("Events");
928  h_ele_vertexX-> GetXaxis()-> SetTitle("x (cm)");
929  h_ele_vertexX-> GetYaxis()-> SetTitle("Events");
930  h_ele_vertexY-> GetXaxis()-> SetTitle("y (cm)");
931  h_ele_vertexY-> GetYaxis()-> SetTitle("Events");
932  h_ele_vertexZ-> GetXaxis()-> SetTitle("z (cm)");
933  h_ele_vertexZ-> GetYaxis()-> SetTitle("Events");
934  h_ele_vertexTIP-> GetXaxis()-> SetTitle("TIP (cm)");
935  h_ele_vertexTIP-> GetYaxis()-> SetTitle("Events");
936  h_ele_TIP_all-> GetXaxis()-> SetTitle("r_{T} (cm)");
937  h_ele_TIP_all-> GetYaxis()-> SetTitle("Events");
938  h_ele_vertexTIPVsEta-> GetYaxis()-> SetTitle("TIP (cm)");
939  h_ele_vertexTIPVsEta-> GetXaxis()-> SetTitle("#eta");
940  h_ele_vertexTIPVsPhi-> GetYaxis()-> SetTitle("TIP (cm)");
941  h_ele_vertexTIPVsPhi-> GetXaxis()-> SetTitle("#phi (rad)");
942  h_ele_vertexTIPVsPt-> GetYaxis()-> SetTitle("TIP (cm)");
943  h_ele_vertexTIPVsPt-> GetXaxis()-> SetTitle("p_{T} (GeV/c)");
944  h_ele_dEtaSc_propVtx-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
945  h_ele_dEtaSc_propVtx-> GetYaxis()-> SetTitle("Events");
946  h_ele_dEtaCl_propOut-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
947  h_ele_dEtaCl_propOut-> GetYaxis()-> SetTitle("Events");
948  h_ele_dEtaEleCl_propOut-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
949  h_ele_dEtaEleCl_propOut-> GetYaxis()-> SetTitle("Events");
950  h_ele_dPhiSc_propVtx-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
951  h_ele_dPhiSc_propVtx-> GetYaxis()-> SetTitle("Events");
952  h_ele_dPhiCl_propOut-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
953  h_ele_dPhiCl_propOut-> GetYaxis()-> SetTitle("Events");
954  h_ele_dPhiEleCl_propOut-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
955  h_ele_dPhiEleCl_propOut-> GetYaxis()-> SetTitle("Events");
956  h_ele_dEtaSc_propVtx_barrel-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
957  h_ele_dEtaSc_propVtx_barrel-> GetYaxis()-> SetTitle("Events");
958  h_ele_dEtaCl_propOut_barrel-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
959  h_ele_dEtaCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
960  h_ele_dEtaEleCl_propOut_barrel-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
961  h_ele_dEtaEleCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
962  h_ele_dPhiSc_propVtx_barrel-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
963  h_ele_dPhiSc_propVtx_barrel-> GetYaxis()-> SetTitle("Events");
964  h_ele_dPhiCl_propOut_barrel-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
965  h_ele_dPhiCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
966  h_ele_dPhiEleCl_propOut_barrel-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
967  h_ele_dPhiEleCl_propOut_barrel-> GetYaxis()-> SetTitle("Events");
968  h_ele_dEtaSc_propVtx_endcaps-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
969  h_ele_dEtaSc_propVtx_endcaps-> GetYaxis()-> SetTitle("Events");
970  h_ele_dEtaCl_propOut_endcaps-> GetXaxis()-> SetTitle("#eta_{seedcl} - #eta_{tr}");
971  h_ele_dEtaCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
972  h_ele_dEtaEleCl_propOut_endcaps-> GetXaxis()-> SetTitle("#eta_{elecl} - #eta_{tr}");
973  h_ele_dEtaEleCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
974  h_ele_dPhiSc_propVtx_endcaps-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
975  h_ele_dPhiSc_propVtx_endcaps-> GetYaxis()-> SetTitle("Events");
976  h_ele_dPhiCl_propOut_endcaps-> GetXaxis()-> SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
977  h_ele_dPhiCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
978  h_ele_dPhiEleCl_propOut_endcaps-> GetXaxis()-> SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
979  h_ele_dPhiEleCl_propOut_endcaps-> GetYaxis()-> SetTitle("Events");
980  h_ele_HoE-> GetXaxis()-> SetTitle("H/E") ;
981  h_ele_HoE-> GetYaxis()-> SetTitle("Events") ;
982  h_ele_HoE_barrel-> GetXaxis()-> SetTitle("H/E") ;
983  h_ele_HoE_barrel-> GetYaxis()-> SetTitle("Events") ;
984  h_ele_HoE_endcaps-> GetXaxis()-> SetTitle("H/E") ;
985  h_ele_HoE_endcaps-> GetYaxis()-> SetTitle("Events") ;
986  h_ele_HoE_fiducial-> GetXaxis()-> SetTitle("H/E") ;
987  h_ele_HoE_fiducial-> GetYaxis()-> SetTitle("Events") ;
988  h_ele_fbrem-> GetXaxis()-> SetTitle("P_{in} - P_{out} / P_{in}");
989  h_ele_fbrem-> GetYaxis()-> SetTitle("Events");
990  h_ele_seed_dphi2_-> GetXaxis()-> SetTitle("#phi_{hit}-#phi_{pred} (rad)") ;
991  h_ele_seed_dphi2_-> GetYaxis()-> SetTitle("Events") ;
992  h_ele_seed_drz2_-> GetXaxis()-> SetTitle("r(z)_{hit}-r(z)_{pred} (cm)") ;
993  h_ele_seed_drz2_-> GetYaxis()-> SetTitle("Events") ;
994  h_ele_seed_subdet2_-> GetXaxis()-> SetTitle("2nd hit subdet Id") ;
995  h_ele_seed_subdet2_-> GetYaxis()-> SetTitle("Events") ;
996  h_ele_classes-> GetXaxis()-> SetTitle("class Id") ;
997  h_ele_classes-> GetYaxis()-> SetTitle("Events") ;
998  h_ele_EoverP_all-> GetXaxis()-> SetTitle("E/P_{vertex}");
999  h_ele_EoverP_all-> GetYaxis()-> SetTitle("Events");
1000  h_ele_EseedOP_all-> GetXaxis()-> SetTitle("E_{seed}/P_{vertex}");
1001  h_ele_EseedOP_all-> GetYaxis()-> SetTitle("Events");
1002  h_ele_EoPout_all -> GetXaxis()-> SetTitle("E_{seed}/P_{out}");
1003  h_ele_EoPout_all-> GetYaxis()-> SetTitle("Events");
1004  h_ele_EeleOPout_all-> GetXaxis()-> SetTitle("E_{ele}/P_{out}");
1005  h_ele_EeleOPout_all-> GetYaxis()-> SetTitle("Events");
1006  h_ele_dEtaSc_propVtx_all-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
1007  h_ele_dEtaSc_propVtx_all-> GetYaxis()-> SetTitle("Events");
1008  h_ele_dPhiSc_propVtx_all-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1009  h_ele_dPhiSc_propVtx_all-> GetYaxis()-> SetTitle("Events");
1010  h_ele_dEtaCl_propOut_all-> GetXaxis()-> SetTitle("#eta_{sc} - #eta_{tr}");
1011  h_ele_dEtaCl_propOut_all-> GetYaxis()-> SetTitle("Events");
1012  h_ele_dPhiCl_propOut_all-> GetXaxis()-> SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1013  h_ele_dPhiCl_propOut_all-> GetYaxis()-> SetTitle("Events");
1014  h_ele_HoE_all-> GetXaxis()-> SetTitle("H/E") ;
1015  h_ele_HoE_all-> GetYaxis()-> SetTitle("Events");
1016  h_ele_mee_all-> GetXaxis()-> SetTitle("m_{ee} (GeV/c^{2})");
1017  h_ele_mee_all-> GetYaxis()-> SetTitle("Events");
1018  h_ele_mee_os-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1019  h_ele_mee_os-> GetYaxis()-> SetTitle("Events");
1020  h_ele_mee_os_ebeb-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1021  h_ele_mee_os_ebeb-> GetYaxis()-> SetTitle("Events");
1022  h_ele_mee_os_ebee-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1023  h_ele_mee_os_ebee-> GetYaxis()-> SetTitle("Events");
1024  h_ele_mee_os_eeee-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1025  h_ele_mee_os_eeee-> GetYaxis()-> SetTitle("Events");
1026  h_ele_mee_os_gg-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1027  h_ele_mee_os_gg-> GetYaxis()-> SetTitle("Events");
1028  h_ele_mee_os_gb-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1029  h_ele_mee_os_gb-> GetYaxis()-> SetTitle("Events");
1030  h_ele_mee_os_bb-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1031  h_ele_mee_os_bb-> GetYaxis()-> SetTitle("Events");
1032  h_ele_E2mnE1vsMee_all-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1033  h_ele_E2mnE1vsMee_all-> GetYaxis()-> SetTitle("E2 - E1 (GeV)");
1034  h_ele_E2mnE1vsMee_egeg_all-> GetXaxis()-> SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1035  h_ele_E2mnE1vsMee_egeg_all-> GetYaxis()-> SetTitle("E2 - E1 (GeV)");
1036  histNum_-> GetXaxis()-> SetTitle("N_{ele}");
1037  histNum_-> GetYaxis()-> SetTitle("Events");
1038  h_ele_fbremVsEta_mode-> GetXaxis()-> SetTitle("#eta");
1039  h_ele_fbremVsEta_mean-> GetXaxis()-> SetTitle("#eta");
1040 
1041 }
void GsfElectronMCAnalyzer::endJob ( void  )
virtual

Reimplemented from edm::EDAnalyzer.

Definition at line 1044 of file GsfElectronMCAnalyzer.cc.

References gather_cfg::cout, and create_public_lumi_plots::log.

1044  {
1045 
1046  histfile_->cd();
1047 
1048  std::cout << "[GsfElectronMCAnalyzer] efficiency calculation " << std::endl;
1049  // efficiency vs eta
1050  TH1F *h_ele_etaEff = (TH1F*)h_ele_simEta_matched->Clone("h_ele_etaEff");
1051  h_ele_etaEff->Reset();
1052  h_ele_etaEff->Divide(h_ele_simEta_matched,h_simEta,1,1,"b");
1053  h_ele_etaEff->Print();
1054  h_ele_etaEff->GetXaxis()->SetTitle("#eta");
1055  h_ele_etaEff->GetYaxis()->SetTitle("Efficiency");
1056 
1057  // efficiency vs z
1058  TH1F *h_ele_zEff = (TH1F*)h_ele_simZ_matched->Clone("h_ele_zEff");
1059  h_ele_zEff->Reset();
1060  h_ele_zEff->Divide(h_ele_simZ_matched,h_simZ,1,1,"b");
1061  h_ele_zEff->Print();
1062  h_ele_zEff->GetXaxis()->SetTitle("z (cm)");
1063  h_ele_zEff->GetYaxis()->SetTitle("Efficiency");
1064 
1065  // efficiency vs |eta|
1066  TH1F *h_ele_absetaEff = (TH1F*)h_ele_simAbsEta_matched->Clone("h_ele_absetaEff");
1067  h_ele_absetaEff->Reset();
1068  h_ele_absetaEff->Divide(h_ele_simAbsEta_matched,h_simAbsEta,1,1,"b");
1069  h_ele_absetaEff->GetXaxis()->SetTitle("|#eta|");
1070  h_ele_absetaEff->GetYaxis()->SetTitle("Efficiency");
1071 
1072  // efficiency vs pt
1073  TH1F *h_ele_ptEff = (TH1F*)h_ele_simPt_matched->Clone("h_ele_ptEff");
1074  h_ele_ptEff->Reset();
1075  h_ele_ptEff->Divide(h_ele_simPt_matched,h_simPt,1,1,"b");
1076  h_ele_ptEff->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1077  h_ele_ptEff->GetYaxis()->SetTitle("Efficiency");
1078 
1079  // efficiency vs phi
1080  TH1F *h_ele_phiEff = (TH1F*)h_ele_simPhi_matched->Clone("h_ele_phiEff");
1081  h_ele_phiEff->Reset();
1082  h_ele_phiEff->Divide(h_ele_simPhi_matched,h_simPhi,1,1,"b");
1083  h_ele_phiEff->GetXaxis()->SetTitle("#phi (rad)");
1084  h_ele_phiEff->GetYaxis()->SetTitle("Efficiency");
1085 
1086  // efficiency vs pt eta
1087  TH2F *h_ele_ptEtaEff = (TH2F*)h_ele_simPtEta_matched->Clone("h_ele_ptEtaEff");
1088  h_ele_ptEtaEff->Reset();
1089  h_ele_ptEtaEff->Divide(h_ele_simPtEta_matched,h_simPtEta,1,1,"b");
1090  h_ele_ptEtaEff->GetYaxis()->SetTitle("p_{T} (GeV/c)");
1091  h_ele_ptEtaEff->GetXaxis()->SetTitle("#eta");
1092 
1093  std::cout << "[GsfElectronMCAnalyzer] q-misid calculation " << std::endl;
1094  // misid vs eta
1095  TH1F *h_ele_etaQmisid = (TH1F*)h_ele_simEta_matched_qmisid->Clone("h_ele_etaQmisid");
1096  h_ele_etaQmisid->Reset();
1097  h_ele_etaQmisid->Divide(h_ele_simEta_matched_qmisid,h_simEta,1,1,"b");
1098  h_ele_etaQmisid->Print();
1099  h_ele_etaQmisid->GetXaxis()->SetTitle("#eta");
1100  h_ele_etaQmisid->GetYaxis()->SetTitle("q misId");
1101 
1102  // misid vs z
1103  TH1F *h_ele_zQmisid = (TH1F*)h_ele_simZ_matched_qmisid->Clone("h_ele_zQmisid");
1104  h_ele_zQmisid->Reset();
1105  h_ele_zQmisid->Divide(h_ele_simZ_matched_qmisid,h_simZ,1,1,"b");
1106  h_ele_zQmisid->Print();
1107  h_ele_zQmisid->GetXaxis()->SetTitle("z (cm)");
1108  h_ele_zQmisid->GetYaxis()->SetTitle("q misId");
1109 
1110  // misid vs |eta|
1111  TH1F *h_ele_absetaQmisid = (TH1F*)h_ele_simAbsEta_matched_qmisid->Clone("h_ele_absetaQmisid");
1112  h_ele_absetaQmisid->Reset();
1113  h_ele_absetaQmisid->Divide(h_ele_simAbsEta_matched_qmisid,h_simAbsEta,1,1,"b");
1114  h_ele_absetaQmisid->GetXaxis()->SetTitle("|#eta|");
1115  h_ele_absetaQmisid->GetYaxis()->SetTitle("q misId");
1116 
1117  // misid vs pt
1118  TH1F *h_ele_ptQmisid = (TH1F*)h_ele_simPt_matched_qmisid->Clone("h_ele_ptQmisid");
1119  h_ele_ptQmisid->Reset();
1120  h_ele_ptQmisid->Divide(h_ele_simPt_matched_qmisid,h_simPt,1,1,"b");
1121  h_ele_ptQmisid->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1122  h_ele_ptQmisid->GetYaxis()->SetTitle("q misId");
1123 
1124  std::cout << "[GsfElectronMCAnalyzer] all reco electrons " << std::endl;
1125  // rec/gen all electrons
1126  TH1F *h_ele_etaEff_all = (TH1F*)h_ele_vertexEta_all->Clone("h_ele_etaEff_all");
1127  h_ele_etaEff_all->Reset();
1128  h_ele_etaEff_all->Divide(h_ele_vertexEta_all,h_simEta,1,1,"b");
1129  h_ele_etaEff_all->Print();
1130  h_ele_etaEff_all->GetXaxis()->SetTitle("#eta");
1131  h_ele_etaEff_all->GetYaxis()->SetTitle("N_{rec}/N_{gen}");
1132  TH1F *h_ele_ptEff_all = (TH1F*)h_ele_vertexPt_all->Clone("h_ele_ptEff_all");
1133  h_ele_ptEff_all->Reset();
1134  h_ele_ptEff_all->Divide(h_ele_vertexPt_all,h_simPt,1,1,"b");
1135  h_ele_ptEff_all->Print();
1136  h_ele_ptEff_all->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1137  h_ele_ptEff_all->GetYaxis()->SetTitle("N_{rec}/N_{gen}");
1138 
1139  // classes
1140  TH1F *h_ele_eta_goldenFrac = (TH1F*)h_ele_eta_golden->Clone("h_ele_eta_goldenFrac");
1141  h_ele_eta_goldenFrac->Reset();
1142  h_ele_eta_goldenFrac->Divide(h_ele_eta_golden,h_ele_eta,1,1,"b");
1143  h_ele_eta_goldenFrac->GetXaxis()->SetTitle("|#eta|");
1144  h_ele_eta_goldenFrac->GetYaxis()->SetTitle("Fraction of electrons");
1145  h_ele_eta_goldenFrac->SetTitle("fraction of golden electrons vs eta");
1146  TH1F *h_ele_eta_bbremFrac = (TH1F*)h_ele_eta_bbrem->Clone("h_ele_eta_bbremFrac");
1147  h_ele_eta_bbremFrac->Reset();
1148  h_ele_eta_bbremFrac->GetXaxis()->SetTitle("|#eta|");
1149  h_ele_eta_bbremFrac->GetYaxis()->SetTitle("Fraction of electrons");
1150  h_ele_eta_bbremFrac->Divide(h_ele_eta_bbrem,h_ele_eta,1,1,"b");
1151  h_ele_eta_bbremFrac->SetTitle("fraction of big brem electrons vs eta");
1152  TH1F *h_ele_eta_narrowFrac = (TH1F*)h_ele_eta_narrow->Clone("h_ele_eta_narrowFrac");
1153  h_ele_eta_narrowFrac->Reset();
1154  h_ele_eta_narrowFrac->Divide(h_ele_eta_narrow,h_ele_eta,1,1,"b");
1155  h_ele_eta_narrowFrac->GetXaxis()->SetTitle("|#eta|");
1156  h_ele_eta_narrowFrac->GetYaxis()->SetTitle("Fraction of electrons");
1157  h_ele_eta_narrowFrac->SetTitle("fraction of narrow electrons vs eta");
1158  TH1F *h_ele_eta_showerFrac = (TH1F*)h_ele_eta_shower->Clone("h_ele_eta_showerFrac");
1159  h_ele_eta_showerFrac->Reset();
1160  h_ele_eta_showerFrac->Divide(h_ele_eta_shower,h_ele_eta,1,1,"b");
1161  h_ele_eta_showerFrac->GetXaxis()->SetTitle("|#eta|");
1162  h_ele_eta_showerFrac->GetYaxis()->SetTitle("Fraction of electrons");
1163  h_ele_eta_showerFrac->SetTitle("fraction of showering electrons vs eta");
1164 
1165  // fbrem
1166  TH1F *h_ele_xOverX0VsEta = new TH1F( "h_ele_xOverx0VsEta","mean X/X_0 vs eta",nbineta/2,0.0,2.5);
1167  for (int ibin=1;ibin<h_ele_fbremVsEta_mean->GetNbinsX()+1;ibin++) {
1168  double xOverX0 = 0.;
1169  if (h_ele_fbremVsEta_mean->GetBinContent(ibin)>0.) xOverX0 = -log(h_ele_fbremVsEta_mean->GetBinContent(ibin));
1170  h_ele_xOverX0VsEta->SetBinContent(ibin,xOverX0);
1171  }
1172 
1173  //profiles from 2D histos
1174  TProfile *p_ele_PoPtrueVsEta = h_ele_PoPtrueVsEta->ProfileX();
1175  p_ele_PoPtrueVsEta->SetTitle("mean ele momentum / gen momentum vs eta");
1176  p_ele_PoPtrueVsEta->GetXaxis()->SetTitle("#eta");
1177  p_ele_PoPtrueVsEta->GetYaxis()->SetTitle("<P/P_{gen}>");
1178  p_ele_PoPtrueVsEta->Write();
1179  TProfile *p_ele_PoPtrueVsPhi = h_ele_PoPtrueVsPhi->ProfileX();
1180  p_ele_PoPtrueVsPhi->SetTitle("mean ele momentum / gen momentum vs phi");
1181  p_ele_PoPtrueVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1182  p_ele_PoPtrueVsPhi->GetYaxis()->SetTitle("<P/P_{gen}>");
1183  p_ele_PoPtrueVsPhi->Write();
1184  TProfile *p_ele_EoEtruePfVsEg_x = histSclEoEtruePfVsEg->ProfileX();
1185  p_ele_EoEtruePfVsEg_x->SetTitle("mean pflow sc energy / true energy vs e/g sc energy");
1186  p_ele_EoEtruePfVsEg_x->GetXaxis()->SetTitle("E/E_{gen} (e/g)") ;
1187  p_ele_EoEtruePfVsEg_x->GetYaxis()->SetTitle("<E/E_{gen}> (pflow)") ;
1188  p_ele_EoEtruePfVsEg_x->Write();
1189  TProfile *p_ele_EoEtruePfVsEg_y = histSclEoEtruePfVsEg->ProfileY();
1190  p_ele_EoEtruePfVsEg_y->SetTitle("mean e/g sc energy / true energy vs pflow sc energy");
1191  p_ele_EoEtruePfVsEg_y->GetXaxis()->SetTitle("E/E_{gen} (pflow)") ;
1192  p_ele_EoEtruePfVsEg_y->GetYaxis()->SetTitle("<E/E_{gen}> (eg)") ;
1193  p_ele_EoEtruePfVsEg_y->Write();
1194  TProfile *p_ele_EtaMnEtaTrueVsEta = h_ele_EtaMnEtaTrueVsEta->ProfileX();
1195  p_ele_EtaMnEtaTrueVsEta->SetTitle("mean ele eta - gen eta vs eta");
1196  p_ele_EtaMnEtaTrueVsEta->GetXaxis()->SetTitle("#eta");
1197  p_ele_EtaMnEtaTrueVsEta->GetYaxis()->SetTitle("<#eta_{rec} - #eta_{gen}>");
1198  p_ele_EtaMnEtaTrueVsEta->Write();
1199  TProfile *p_ele_EtaMnEtaTrueVsPhi = h_ele_EtaMnEtaTrueVsPhi->ProfileX();
1200  p_ele_EtaMnEtaTrueVsPhi->SetTitle("mean ele eta - gen eta vs phi");
1201  p_ele_EtaMnEtaTrueVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1202  p_ele_EtaMnEtaTrueVsPhi->GetYaxis()->SetTitle("<#eta_{rec} - #eta_{gen}>");
1203  p_ele_EtaMnEtaTrueVsPhi->Write();
1204  TProfile *p_ele_PhiMnPhiTrueVsEta = h_ele_PhiMnPhiTrueVsEta->ProfileX();
1205  p_ele_PhiMnPhiTrueVsEta->SetTitle("mean ele phi - gen phi vs eta");
1206  p_ele_PhiMnPhiTrueVsEta->GetXaxis()->SetTitle("#eta");
1207  p_ele_PhiMnPhiTrueVsEta->GetYaxis()->SetTitle("<#phi_{rec} - #phi_{gen}> (rad)");
1208  p_ele_PhiMnPhiTrueVsEta->Write();
1209  TProfile *p_ele_PhiMnPhiTrueVsPhi = h_ele_PhiMnPhiTrueVsPhi->ProfileX();
1210  p_ele_PhiMnPhiTrueVsPhi->SetTitle("mean ele phi - gen phi vs phi");
1211  p_ele_PhiMnPhiTrueVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1212  p_ele_PhiMnPhiTrueVsPhi->Write();
1213  TProfile *p_ele_vertexPtVsEta = h_ele_vertexPtVsEta->ProfileX();
1214  p_ele_vertexPtVsEta->SetTitle("mean ele transverse momentum vs eta");
1215  p_ele_vertexPtVsEta->GetXaxis()->SetTitle("#eta");
1216  p_ele_vertexPtVsEta->GetYaxis()->SetTitle("<p_{T}> (GeV/c)");
1217  p_ele_vertexPtVsEta->Write();
1218  TProfile *p_ele_vertexPtVsPhi = h_ele_vertexPtVsPhi->ProfileX();
1219  p_ele_vertexPtVsPhi->SetTitle("mean ele transverse momentum vs phi");
1220  p_ele_vertexPtVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1221  p_ele_vertexPtVsPhi->GetYaxis()->SetTitle("<p_{T}> (GeV/c)");
1222  p_ele_vertexPtVsPhi->Write();
1223  TProfile *p_ele_EoPVsEta = h_ele_EoPVsEta->ProfileX();
1224  p_ele_EoPVsEta->SetTitle("mean ele E/p vs eta");
1225  p_ele_EoPVsEta->GetXaxis()->SetTitle("#eta");
1226  p_ele_EoPVsEta->GetYaxis()->SetTitle("<E/P_{vertex}>");
1227  p_ele_EoPVsEta->Write();
1228  TProfile *p_ele_EoPVsPhi = h_ele_EoPVsPhi->ProfileX();
1229  p_ele_EoPVsPhi->SetTitle("mean ele E/p vs phi");
1230  p_ele_EoPVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1231  p_ele_EoPVsPhi->GetYaxis()->SetTitle("<E/P_{vertex}>");
1232  p_ele_EoPVsPhi->Write();
1233  TProfile *p_ele_EoPoutVsEta = h_ele_EoPoutVsEta->ProfileX();
1234  p_ele_EoPoutVsEta->SetTitle("mean ele E/pout vs eta");
1235  p_ele_EoPoutVsEta->GetXaxis()->SetTitle("#eta");
1236  p_ele_EoPoutVsEta->GetYaxis()->SetTitle("<E_{seed}/P_{out}>");
1237  p_ele_EoPoutVsEta->Write();
1238  TProfile *p_ele_EoPoutVsPhi = h_ele_EoPoutVsPhi->ProfileX();
1239  p_ele_EoPoutVsPhi->SetTitle("mean ele E/pout vs phi");
1240  p_ele_EoPoutVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1241  p_ele_EoPoutVsPhi->GetYaxis()->SetTitle("<E_{seed}/P_{out}>");
1242  p_ele_EoPoutVsPhi->Write();
1243  TProfile *p_ele_EeleOPoutVsEta = h_ele_EeleOPoutVsEta->ProfileX();
1244  p_ele_EeleOPoutVsEta->SetTitle("mean ele Eele/pout vs eta");
1245  p_ele_EeleOPoutVsEta->GetXaxis()->SetTitle("#eta");
1246  p_ele_EeleOPoutVsEta->GetYaxis()->SetTitle("<E_{ele}/P_{out}>");
1247  p_ele_EeleOPoutVsEta->Write();
1248  TProfile *p_ele_EeleOPoutVsPhi = h_ele_EeleOPoutVsPhi->ProfileX();
1249  p_ele_EeleOPoutVsPhi->SetTitle("mean ele Eele/pout vs phi");
1250  p_ele_EeleOPoutVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1251  p_ele_EeleOPoutVsPhi->GetYaxis()->SetTitle("<E_{ele}/P_{out}>");
1252  p_ele_EeleOPoutVsPhi->Write();
1253  TProfile *p_ele_HoEVsEta = h_ele_HoEVsEta->ProfileX();
1254  p_ele_HoEVsEta->SetTitle("mean ele H/E vs eta");
1255  p_ele_HoEVsEta->GetXaxis()->SetTitle("#eta");
1256  p_ele_HoEVsEta->GetYaxis()->SetTitle("<H/E>");
1257  p_ele_HoEVsEta->Write();
1258  TProfile *p_ele_HoEVsPhi = h_ele_HoEVsPhi->ProfileX();
1259  p_ele_HoEVsPhi->SetTitle("mean ele H/E vs phi");
1260  p_ele_HoEVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1261  p_ele_HoEVsPhi->GetYaxis()->SetTitle("<H/E>");
1262  p_ele_HoEVsPhi->Write();
1263  TProfile *p_ele_chi2VsEta = h_ele_chi2VsEta->ProfileX();
1264  p_ele_chi2VsEta->SetTitle("mean ele track chi2 vs eta");
1265  p_ele_chi2VsEta->GetXaxis()->SetTitle("#eta");
1266  p_ele_chi2VsEta->GetYaxis()->SetTitle("<#Chi^{2}>");
1267  p_ele_chi2VsEta->Write();
1268  TProfile *p_ele_chi2VsPhi = h_ele_chi2VsPhi->ProfileX();
1269  p_ele_chi2VsPhi->SetTitle("mean ele track chi2 vs phi");
1270  p_ele_chi2VsPhi->GetXaxis()->SetTitle("#phi (rad)");
1271  p_ele_chi2VsPhi->GetYaxis()->SetTitle("<#Chi^{2}>");
1272  p_ele_chi2VsPhi->Write();
1273  TProfile *p_ele_foundHitsVsEta = h_ele_foundHitsVsEta->ProfileX();
1274  p_ele_foundHitsVsEta->SetTitle("mean ele track # found hits vs eta");
1275  p_ele_foundHitsVsEta->GetXaxis()->SetTitle("#eta");
1276  p_ele_foundHitsVsEta->GetYaxis()->SetTitle("<N_{hits}>");
1277  p_ele_foundHitsVsEta->Write();
1278  TProfile *p_ele_foundHitsVsPhi = h_ele_foundHitsVsPhi->ProfileX();
1279  p_ele_foundHitsVsPhi->SetTitle("mean ele track # found hits vs phi");
1280  p_ele_foundHitsVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1281  p_ele_foundHitsVsPhi->GetYaxis()->SetTitle("<N_{hits}>");
1282  p_ele_foundHitsVsPhi->Write();
1283  TProfile *p_ele_lostHitsVsEta = h_ele_lostHitsVsEta->ProfileX();
1284  p_ele_lostHitsVsEta->SetTitle("mean ele track # lost hits vs eta");
1285  p_ele_lostHitsVsEta->GetXaxis()->SetTitle("#eta");
1286  p_ele_lostHitsVsEta->GetYaxis()->SetTitle("<N_{hits}>");
1287  p_ele_lostHitsVsEta->Write();
1288  TProfile *p_ele_lostHitsVsPhi = h_ele_lostHitsVsPhi->ProfileX();
1289  p_ele_lostHitsVsPhi->SetTitle("mean ele track # lost hits vs phi");
1290  p_ele_lostHitsVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1291  p_ele_lostHitsVsPhi->GetYaxis()->SetTitle("<N_{hits}>");
1292  p_ele_lostHitsVsPhi->Write();
1293  TProfile *p_ele_vertexTIPVsEta = h_ele_vertexTIPVsEta->ProfileX();
1294  p_ele_vertexTIPVsEta->SetTitle("mean tip (wrt gen vtx) vs eta");
1295  p_ele_vertexTIPVsEta->GetXaxis()->SetTitle("#eta");
1296  p_ele_vertexTIPVsEta->GetYaxis()->SetTitle("<TIP> (cm)");
1297  p_ele_vertexTIPVsEta->Write();
1298  TProfile *p_ele_vertexTIPVsPhi = h_ele_vertexTIPVsPhi->ProfileX();
1299  p_ele_vertexTIPVsPhi->SetTitle("mean tip (wrt gen vtx) vs phi");
1300  p_ele_vertexTIPVsPhi->GetXaxis()->SetTitle("#phi");
1301  p_ele_vertexTIPVsPhi->GetYaxis()->SetTitle("<TIP> (cm)");
1302  p_ele_vertexTIPVsPhi->Write();
1303  TProfile *p_ele_vertexTIPVsPt = h_ele_vertexTIPVsPt->ProfileX();
1304  p_ele_vertexTIPVsPt->SetTitle("mean tip (wrt gen vtx) vs phi");
1305  p_ele_vertexTIPVsPt->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1306  p_ele_vertexTIPVsPt->GetYaxis()->SetTitle("<TIP> (cm)");
1307  p_ele_vertexTIPVsPt->Write();
1308 
1309  // mc truth
1310  h_mcNum->Write();
1311  h_eleNum->Write();
1312  h_gamNum->Write();
1313 
1314  // rec event
1315  histNum_->Write();
1316 
1317  // mc
1318  h_simEta->Write();
1319  h_simAbsEta->Write();
1320  h_simP->Write();
1321  h_simPt->Write();
1322  h_simZ->Write();
1323  h_simPhi->Write();
1324  h_simPtEta->Write();
1325 
1326  // all electrons
1327  h_ele_EoverP_all->Write();
1328  h_ele_EseedOP_all->Write();
1329  h_ele_EoPout_all->Write();
1330  h_ele_EeleOPout_all ->Write();
1331  h_ele_dEtaSc_propVtx_all->Write();
1332  h_ele_dPhiSc_propVtx_all->Write();
1333  h_ele_dEtaCl_propOut_all ->Write();
1334  h_ele_dPhiCl_propOut_all->Write();
1335  h_ele_HoE_all->Write();
1336  h_ele_TIP_all->Write();
1337  h_ele_vertexPt_all->Write();
1338  h_ele_Et_all->Write();
1339  h_ele_vertexEta_all->Write();
1340  h_ele_mee_all->Write();
1341  h_ele_mee_os->Write();
1342  h_ele_mee_os_ebeb->Write();
1343  h_ele_mee_os_ebee->Write();
1344  h_ele_mee_os_eeee->Write();
1345  h_ele_mee_os_gg->Write();
1346  h_ele_mee_os_gb->Write();
1347  h_ele_mee_os_bb->Write();
1348  h_ele_E2mnE1vsMee_all ->Write();
1349  h_ele_E2mnE1vsMee_egeg_all->Write();
1350 
1351  // charge ID
1352  h_ele_charge->Write();
1353  h_ele_simEta_matched_qmisid->Write();
1355  h_ele_simPt_matched_qmisid->Write();
1356  h_ele_simPhi_matched_qmisid->Write();
1357  h_ele_simZ_matched_qmisid->Write();
1358 
1359  // matched electrons
1360  h_ele_vertexP->Write();
1361  h_ele_vertexPt->Write();
1362  h_ele_Et->Write();
1363  h_ele_vertexPtVsEta->Write();
1364  h_ele_vertexPtVsPhi->Write();
1365  h_ele_simPt_matched->Write();
1366  h_ele_vertexEta->Write();
1367  h_ele_vertexEtaVsPhi->Write();
1368  h_ele_simAbsEta_matched->Write();
1369  h_ele_simEta_matched->Write();
1370  h_ele_simPhi_matched->Write();
1371  h_ele_simPtEta_matched->Write();
1372  h_ele_vertexPhi->Write();
1373  h_ele_vertexX->Write();
1374  h_ele_vertexY ->Write();
1375  h_ele_vertexZ->Write();
1376  h_ele_vertexTIP->Write();
1377  h_ele_simZ_matched->Write();
1378  h_ele_vertexTIPVsEta->Write();
1379  h_ele_vertexTIPVsPhi->Write();
1380  h_ele_vertexTIPVsPt->Write();
1381  h_ele_PoPtrue->Write();
1382  h_ele_PoPtrueVsEta ->Write();
1383  h_ele_PoPtrueVsPhi->Write();
1384  h_ele_PoPtrueVsPt->Write();
1385  h_ele_PoPtrue_barrel ->Write();
1386  h_ele_PoPtrue_endcaps->Write();
1387  h_ele_PoPtrue_golden_barrel ->Write();
1391  h_ele_PtoPttrue->Write();
1392  h_ele_PtoPttrue_barrel ->Write();
1393  h_ele_PtoPttrue_endcaps->Write();
1394  h_ele_ChargeMnChargeTrue->Write();
1395  h_ele_EtaMnEtaTrue->Write();
1396  h_ele_EtaMnEtaTrue_barrel->Write();
1397  h_ele_EtaMnEtaTrue_endcaps->Write();
1398  h_ele_EtaMnEtaTrueVsEta ->Write();
1399  h_ele_EtaMnEtaTrueVsPhi->Write();
1400  h_ele_EtaMnEtaTrueVsPt->Write();
1401  h_ele_PhiMnPhiTrue ->Write();
1402  h_ele_PhiMnPhiTrue_barrel ->Write();
1403  h_ele_PhiMnPhiTrue_endcaps ->Write();
1404  h_ele_PhiMnPhiTrue2 ->Write();
1405  h_ele_PhiMnPhiTrueVsEta->Write();
1406  h_ele_PhiMnPhiTrueVsPhi->Write();
1407  h_ele_PhiMnPhiTrueVsPt->Write();
1408 
1409  // matched electron, superclusters
1410  histSclEn_->Write();
1411  histSclEoEtrue_barrel->Write();
1412  histSclEoEtrue_endcaps->Write();
1413  histSclEoEtrue_barrel_eg->Write();
1414  histSclEoEtrue_endcaps_eg->Write();
1417  histSclEoEtrue_ebeegap->Write();
1418  histSclEoEtrue_endcaps->Write();
1421  histSclEoEtruePfVsEg->Write();
1422  histSclEoEtrue_barrel_new->Write();
1423  histSclEoEtrue_endcaps_new->Write();
1428  histSclEoEtrue_ebeegap_new->Write();
1429  histSclEoEtrue_endcaps_new->Write();
1432  histSclEoEtruePfVsEg->Write();
1433  histSclEt_->Write();
1434  histSclEtVsEta_->Write();
1435  histSclEtVsPhi_->Write();
1436  histSclEtaVsPhi_ ->Write();
1437  histSclEta_->Write();
1438  histSclPhi_->Write();
1439  histSclSigEtaEta_->Write();
1440  histSclSigEtaEta_barrel_->Write();
1441  histSclSigEtaEta_endcaps_->Write();
1442  histSclSigIEtaIEta_->Write();
1443  histSclSigIEtaIEta_barrel_->Write();
1444  histSclSigIEtaIEta_endcaps_->Write();
1445  histSclE1x5_->Write();
1446  histSclE1x5_barrel_->Write();
1447  histSclE1x5_endcaps_->Write();
1448  histSclE2x5max_->Write();
1449  histSclE2x5max_barrel_->Write();
1450  histSclE2x5max_endcaps_->Write();
1451  histSclE5x5_->Write();
1452  histSclE5x5_barrel_->Write();
1453  histSclE5x5_endcaps_->Write();
1454  histSclSigEtaEta_eg_->Write();
1455  histSclSigEtaEta_eg_barrel_->Write();
1457  histSclSigIEtaIEta_eg_->Write();
1460  histSclE1x5_eg_->Write();
1461  histSclE1x5_eg_barrel_->Write();
1462  histSclE1x5_eg_endcaps_->Write();
1463  histSclE2x5max_eg_->Write();
1464  histSclE2x5max_eg_barrel_->Write();
1465  histSclE2x5max_eg_endcaps_->Write();
1466  histSclE5x5_eg_->Write();
1467  histSclE5x5_eg_barrel_->Write();
1468  histSclE5x5_eg_endcaps_->Write();
1469 
1470  // matched electron, gsf tracks
1471  h_ele_ambiguousTracks->Write();
1472  h_ele_ambiguousTracksVsEta->Write();
1473  h_ele_ambiguousTracksVsPhi->Write();
1474  h_ele_ambiguousTracksVsPt->Write();
1475  h_ele_foundHits->Write();
1476  h_ele_foundHits_barrel->Write();
1477  h_ele_foundHits_endcaps->Write();
1478  h_ele_foundHitsVsEta->Write();
1479  h_ele_foundHitsVsPhi->Write();
1480  h_ele_foundHitsVsPt->Write();
1481  h_ele_lostHits->Write();
1482  h_ele_lostHits_barrel->Write();
1483  h_ele_lostHits_endcaps->Write();
1484  h_ele_lostHitsVsEta->Write();
1485  h_ele_lostHitsVsPhi->Write();
1486  h_ele_lostHitsVsPt->Write();
1487  h_ele_chi2 ->Write();
1488  h_ele_chi2_barrel ->Write();
1489  h_ele_chi2_endcaps ->Write();
1490  h_ele_chi2VsEta ->Write();
1491  h_ele_chi2VsPhi ->Write();
1492  h_ele_chi2VsPt->Write();
1493  h_ele_PinMnPout->Write();
1494  h_ele_PinMnPout_mode->Write();
1495  h_ele_PinMnPoutVsEta_mode->Write();
1496  h_ele_PinMnPoutVsPhi_mode->Write();
1497  h_ele_PinMnPoutVsPt_mode->Write();
1498  h_ele_PinMnPoutVsE_mode->Write();
1499  h_ele_PinMnPoutVsChi2_mode->Write();
1500  h_ele_outerP ->Write();
1501  h_ele_outerP_mode->Write();
1502  h_ele_outerPVsEta_mode->Write();
1503  h_ele_outerPt->Write();
1504  h_ele_outerPt_mode ->Write();
1505  h_ele_outerPtVsEta_mode->Write();
1506  h_ele_outerPtVsPhi_mode->Write();
1507  h_ele_outerPtVsPt_mode->Write();
1508 
1509  // matched electrons, matching
1510  h_ele_EoP ->Write();
1511  h_ele_EoP_eg ->Write();
1512  h_ele_EoP_barrel ->Write();
1513  h_ele_EoP_eg_barrel ->Write();
1514  h_ele_EoP_endcaps ->Write();
1515  h_ele_EoP_eg_endcaps ->Write();
1516  h_ele_EoPVsEta ->Write();
1517  h_ele_EoPVsPhi->Write();
1518  h_ele_EoPVsE->Write();
1519  h_ele_EseedOP ->Write();
1520  h_ele_EseedOP_eg ->Write();
1521  h_ele_EseedOP_barrel ->Write();
1522  h_ele_EseedOP_eg_barrel ->Write();
1523  h_ele_EseedOP_endcaps ->Write();
1524  h_ele_EseedOP_eg_endcaps ->Write();
1525  h_ele_EseedOPVsEta ->Write();
1526  h_ele_EseedOPVsPhi->Write();
1527  h_ele_EseedOPVsE->Write();
1528  h_ele_EoPout->Write();
1529  h_ele_EoPout_eg->Write();
1530  h_ele_EoPout_barrel->Write();
1531  h_ele_EoPout_eg_barrel->Write();
1532  h_ele_EoPout_endcaps->Write();
1533  h_ele_EoPout_eg_endcaps->Write();
1534  h_ele_EoPoutVsEta->Write();
1535  h_ele_EoPoutVsPhi->Write();
1536  h_ele_EoPoutVsE ->Write();
1537  h_ele_EeleOPout->Write();
1538  h_ele_EeleOPout_eg->Write();
1539  h_ele_EeleOPout_barrel->Write();
1540  h_ele_EeleOPout_eg_barrel->Write();
1541  h_ele_EeleOPout_endcaps->Write();
1542  h_ele_EeleOPout_eg_endcaps->Write();
1543  h_ele_EeleOPoutVsEta->Write();
1544  h_ele_EeleOPoutVsPhi->Write();
1545  h_ele_EeleOPoutVsE ->Write();
1546  h_ele_dEtaSc_propVtx->Write();
1547  h_ele_dEtaSc_propVtx_eg->Write();
1548  h_ele_dEtaSc_propVtx_barrel->Write();
1552  h_ele_dEtaScVsEta_propVtx->Write();
1553  h_ele_dEtaScVsPhi_propVtx->Write();
1554  h_ele_dEtaScVsPt_propVtx ->Write();
1555  h_ele_dPhiSc_propVtx->Write();
1556  h_ele_dPhiSc_propVtx_eg->Write();
1557  h_ele_dPhiSc_propVtx_barrel->Write();
1561  h_ele_dPhiScVsEta_propVtx ->Write();
1562  h_ele_dPhiScVsPhi_propVtx->Write();
1563  h_ele_dPhiScVsPt_propVtx->Write();
1564  h_ele_dEtaCl_propOut->Write();
1565  h_ele_dEtaCl_propOut_eg->Write();
1566  h_ele_dEtaCl_propOut_barrel->Write();
1570  h_ele_dEtaClVsEta_propOut->Write();
1571  h_ele_dEtaClVsPhi_propOut->Write();
1572  h_ele_dEtaClVsPt_propOut->Write();
1573  h_ele_dPhiCl_propOut->Write();
1574  h_ele_dPhiCl_propOut_eg->Write();
1575  h_ele_dPhiCl_propOut_barrel->Write();
1579  h_ele_dPhiClVsEta_propOut->Write();
1580  h_ele_dPhiClVsPhi_propOut->Write();
1581  h_ele_dPhiClVsPt_propOut->Write();
1582  h_ele_dEtaEleCl_propOut->Write();
1583  h_ele_dEtaEleCl_propOut_eg->Write();
1590  h_ele_dEtaEleClVsPt_propOut->Write();
1591  h_ele_dPhiEleCl_propOut->Write();
1592  h_ele_dPhiEleCl_propOut_eg->Write();
1599  h_ele_dPhiEleClVsPt_propOut->Write();
1600  h_ele_HoE->Write();
1601  h_ele_HoE_eg->Write();
1602  h_ele_HoE_barrel->Write();
1603  h_ele_HoE_eg_barrel->Write();
1604  h_ele_HoE_endcaps->Write();
1605  h_ele_HoE_eg_endcaps->Write();
1606  h_ele_HoE_fiducial->Write();
1607  h_ele_HoEVsEta->Write();
1608  h_ele_HoEVsPhi->Write();
1609  h_ele_HoEVsE->Write();
1610 
1611  h_ele_seed_dphi2_->Write();
1612  h_ele_seed_subdet2_->Write();
1613  TProfile *p_ele_seed_dphi2VsEta_ = h_ele_seed_dphi2VsEta_->ProfileX();
1614  p_ele_seed_dphi2VsEta_->SetTitle("mean ele seed dphi 2nd layer vs eta");
1615  p_ele_seed_dphi2VsEta_->GetXaxis()->SetTitle("#eta");
1616  p_ele_seed_dphi2VsEta_->GetYaxis()->SetTitle("<#phi_{pred} - #phi_{hit}, 2nd layer> (rad)");
1617  p_ele_seed_dphi2VsEta_->SetMinimum(-0.004);
1618  p_ele_seed_dphi2VsEta_->SetMaximum(0.004);
1619  p_ele_seed_dphi2VsEta_->Write();
1620  TProfile *p_ele_seed_dphi2VsPt_ = h_ele_seed_dphi2VsPt_->ProfileX();
1621  p_ele_seed_dphi2VsPt_->SetTitle("mean ele seed dphi 2nd layer vs pt");
1622  p_ele_seed_dphi2VsPt_->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1623  p_ele_seed_dphi2VsPt_->GetYaxis()->SetTitle("<#phi_{pred} - #phi_{hit}, 2nd layer> (rad)");
1624  p_ele_seed_dphi2VsPt_->SetMinimum(-0.004);
1625  p_ele_seed_dphi2VsPt_->SetMaximum(0.004);
1626  p_ele_seed_dphi2VsPt_->Write();
1627  h_ele_seed_drz2_->Write();
1628  TProfile *p_ele_seed_drz2VsEta_ = h_ele_seed_drz2VsEta_->ProfileX();
1629  p_ele_seed_drz2VsEta_->SetTitle("mean ele seed dr(dz) 2nd layer vs eta");
1630  p_ele_seed_drz2VsEta_->GetXaxis()->SetTitle("#eta");
1631  p_ele_seed_drz2VsEta_->GetYaxis()->SetTitle("<r(z)_{pred} - r(z)_{hit}, 2nd layer> (cm)");
1632  p_ele_seed_drz2VsEta_->SetMinimum(-0.15);
1633  p_ele_seed_drz2VsEta_->SetMaximum(0.15);
1634  p_ele_seed_drz2VsEta_->Write();
1635  TProfile *p_ele_seed_drz2VsPt_ = h_ele_seed_drz2VsPt_->ProfileX();
1636  p_ele_seed_drz2VsPt_->SetTitle("mean ele seed dr(dz) 2nd layer vs pt");
1637  p_ele_seed_drz2VsPt_->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1638  p_ele_seed_drz2VsPt_->GetYaxis()->SetTitle("<r(z)_{pred} - r(z)_{hit}, 2nd layer> (cm)");
1639  p_ele_seed_drz2VsPt_->SetMinimum(-0.15);
1640  p_ele_seed_drz2VsPt_->SetMaximum(0.15);
1641  p_ele_seed_drz2VsPt_->Write();
1642 
1643  // classes
1644  h_ele_classes->Write();
1645  h_ele_eta->Write();
1646  h_ele_eta_golden->Write();
1647  h_ele_eta_bbrem->Write();
1648  h_ele_eta_narrow->Write();
1649  h_ele_eta_shower->Write();
1650  h_ele_PinVsPoutGolden_mode->Write();
1652  h_ele_PinVsPoutGolden_mean->Write();
1658  histSclEoEtrueGolden_barrel->Write();
1662 
1663  // fbrem
1664  h_ele_fbrem->Write();
1665  h_ele_fbrem_eg->Write();
1666  h_ele_fbremVsEta_mode->GetXaxis()->SetTitle("#eta");
1667  h_ele_fbremVsEta_mode->GetYaxis()->SetTitle("<P_{in} - P_{out} / P_{in}>");
1668  h_ele_fbremVsEta_mode->Write();
1669  h_ele_fbremVsEta_mean->GetXaxis()->SetTitle("#eta");
1670  h_ele_fbremVsEta_mean->GetYaxis()->SetTitle("<P_{in} - P_{out} / P_{in}>");
1671  h_ele_fbremVsEta_mean->Write();
1672  h_ele_eta_goldenFrac->Write();
1673  h_ele_eta_bbremFrac->Write();
1674  h_ele_eta_narrowFrac->Write();
1675  h_ele_eta_showerFrac->Write();
1676  h_ele_xOverX0VsEta->Write();
1677 
1678  // efficiencies
1679  h_ele_etaEff->Write();
1680  h_ele_zEff->Write();
1681  h_ele_phiEff->Write();
1682  h_ele_absetaEff->Write();
1683  h_ele_ptEff->Write();
1684  h_ele_ptEtaEff->Write();
1685  h_ele_etaEff_all->Write();
1686  h_ele_ptEff_all->Write();
1687 
1688  // q misid
1689  h_ele_etaQmisid->Write();
1690  h_ele_zQmisid->Write();
1691  h_ele_absetaQmisid->Write();
1692  h_ele_ptQmisid->Write();
1693 
1694  // e/g et pflow electrons
1695  h_ele_mva->Write();
1696  h_ele_mva_eg->Write();
1697  h_ele_provenance->Write();
1698 
1699  // isolation
1700  h_ele_tkSumPt_dr03->GetXaxis()->SetTitle("TkIsoSum, cone 0.3 (GeV/c)");
1701  h_ele_tkSumPt_dr03->GetYaxis()->SetTitle("Events");
1702  h_ele_tkSumPt_dr03->Write();
1703  h_ele_ecalRecHitSumEt_dr03->GetXaxis()->SetTitle("EcalIsoSum, cone 0.3 (GeV)");
1704  h_ele_ecalRecHitSumEt_dr03->GetYaxis()->SetTitle("Events");
1705  h_ele_ecalRecHitSumEt_dr03->Write();
1706  h_ele_hcalDepth1TowerSumEt_dr03->GetXaxis()->SetTitle("Hcal1IsoSum, cone 0.3 (GeV)");
1707  h_ele_hcalDepth1TowerSumEt_dr03->GetYaxis()->SetTitle("Events");
1709  h_ele_hcalDepth2TowerSumEt_dr03->GetXaxis()->SetTitle("Hcal2IsoSum, cone 0.3 (GeV)");
1710  h_ele_hcalDepth2TowerSumEt_dr03->GetYaxis()->SetTitle("Events");
1712  h_ele_tkSumPt_dr04->GetXaxis()->SetTitle("TkIsoSum, cone 0.4 (GeV/c)");
1713  h_ele_tkSumPt_dr04->GetYaxis()->SetTitle("Events");
1714  h_ele_tkSumPt_dr04->Write();
1715  h_ele_ecalRecHitSumEt_dr04->GetXaxis()->SetTitle("EcalIsoSum, cone 0.4 (GeV)");
1716  h_ele_ecalRecHitSumEt_dr04->GetYaxis()->SetTitle("Events");
1717  h_ele_ecalRecHitSumEt_dr04->Write();
1718  h_ele_hcalDepth1TowerSumEt_dr04->GetXaxis()->SetTitle("Hcal1IsoSum, cone 0.4 (GeV)");
1719  h_ele_hcalDepth1TowerSumEt_dr04->GetYaxis()->SetTitle("Events");
1721  h_ele_hcalDepth2TowerSumEt_dr04->GetXaxis()->SetTitle("Hcal2IsoSum, cone 0.4 (GeV)");
1722  h_ele_hcalDepth2TowerSumEt_dr04->GetYaxis()->SetTitle("Events");
1724 
1725 }
tuple cout
Definition: gather_cfg.py:121

Member Data Documentation

double GsfElectronMCAnalyzer::deltaR_
private

Definition at line 437 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::detamatchmax
private

Definition at line 455 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::detamatchmin
private

Definition at line 454 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::detamax
private

Definition at line 451 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::detamin
private

Definition at line 450 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::dphimatchmax
private

Definition at line 457 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::dphimatchmin
private

Definition at line 456 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::dphimax
private

Definition at line 453 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::dphimin
private

Definition at line 452 of file GsfElectronMCAnalyzer.h.

edm::InputTag GsfElectronMCAnalyzer::electronCollection_
private

Definition at line 431 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::eopmax
private

Definition at line 448 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::eopmaxsht
private

Definition at line 449 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::etamax
private

Definition at line 443 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::etamin
private

Definition at line 442 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::fhitsmax
private

Definition at line 458 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_ambiguousTracks
private

Definition at line 215 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_ambiguousTracksVsEta
private

Definition at line 216 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_ambiguousTracksVsPhi
private

Definition at line 217 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_ambiguousTracksVsPt
private

Definition at line 218 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_charge
private

Definition at line 132 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_ChargeMnChargeTrue
private

Definition at line 251 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chargeVsEta
private

Definition at line 133 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chargeVsPhi
private

Definition at line 134 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chargeVsPt
private

Definition at line 135 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_chi2
private

Definition at line 231 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_chi2_barrel
private

Definition at line 232 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_chi2_endcaps
private

Definition at line 233 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chi2VsEta
private

Definition at line 234 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chi2VsPhi
private

Definition at line 235 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_chi2VsPt
private

Definition at line 236 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_classes
private

Definition at line 381 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut
private

Definition at line 336 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_all
private

Definition at line 105 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_all_barrel
private

Definition at line 106 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_all_endcaps
private

Definition at line 107 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_barrel
private

Definition at line 337 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_eg
private

Definition at line 339 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_eg_barrel
private

Definition at line 340 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_eg_endcaps
private

Definition at line 341 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaCl_propOut_endcaps
private

Definition at line 338 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaClVsEta_propOut
private

Definition at line 342 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaClVsPhi_propOut
private

Definition at line 343 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaClVsPt_propOut
private

Definition at line 344 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut
private

Definition at line 354 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut_barrel
private

Definition at line 355 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut_eg
private

Definition at line 357 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut_eg_barrel
private

Definition at line 358 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut_eg_endcaps
private

Definition at line 359 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaEleCl_propOut_endcaps
private

Definition at line 356 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaEleClVsEta_propOut
private

Definition at line 360 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaEleClVsPhi_propOut
private

Definition at line 361 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaEleClVsPt_propOut
private

Definition at line 362 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx
private

Definition at line 318 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_all
private

Definition at line 99 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_all_barrel
private

Definition at line 100 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_all_endcaps
private

Definition at line 101 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_barrel
private

Definition at line 319 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_eg
private

Definition at line 321 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_eg_barrel
private

Definition at line 322 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_eg_endcaps
private

Definition at line 323 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dEtaSc_propVtx_endcaps
private

Definition at line 320 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaScVsEta_propVtx
private

Definition at line 324 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaScVsPhi_propVtx
private

Definition at line 325 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dEtaScVsPt_propVtx
private

Definition at line 326 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut
private

Definition at line 345 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_all
private

Definition at line 108 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_all_barrel
private

Definition at line 109 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_all_endcaps
private

Definition at line 110 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_barrel
private

Definition at line 346 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_eg
private

Definition at line 348 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_eg_barrel
private

Definition at line 349 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_eg_endcaps
private

Definition at line 350 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiCl_propOut_endcaps
private

Definition at line 347 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiClVsEta_propOut
private

Definition at line 351 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiClVsPhi_propOut
private

Definition at line 352 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiClVsPt_propOut
private

Definition at line 353 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut
private

Definition at line 363 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut_barrel
private

Definition at line 364 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut_eg
private

Definition at line 366 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut_eg_barrel
private

Definition at line 367 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut_eg_endcaps
private

Definition at line 368 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiEleCl_propOut_endcaps
private

Definition at line 365 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiEleClVsEta_propOut
private

Definition at line 369 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiEleClVsPhi_propOut
private

Definition at line 370 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiEleClVsPt_propOut
private

Definition at line 371 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx
private

Definition at line 327 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_all
private

Definition at line 102 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_all_barrel
private

Definition at line 103 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_all_endcaps
private

Definition at line 104 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_barrel
private

Definition at line 328 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_eg
private

Definition at line 330 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_eg_barrel
private

Definition at line 331 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_eg_endcaps
private

Definition at line 332 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_dPhiSc_propVtx_endcaps
private

Definition at line 329 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiScVsEta_propVtx
private

Definition at line 333 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiScVsPhi_propVtx
private

Definition at line 334 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_dPhiScVsPt_propVtx
private

Definition at line 335 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_E2mnE1vsMee_all
private

Definition at line 129 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_E2mnE1vsMee_egeg_all
private

Definition at line 130 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_ecalRecHitSumEt_dr03
private

Definition at line 422 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_ecalRecHitSumEt_dr04
private

Definition at line 426 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout
private

Definition at line 308 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_all
private

Definition at line 96 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_all_barrel
private

Definition at line 97 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_all_endcaps
private

Definition at line 98 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_barrel
private

Definition at line 309 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_eg
private

Definition at line 311 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_eg_barrel
private

Definition at line 312 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_eg_endcaps
private

Definition at line 313 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EeleOPout_endcaps
private

Definition at line 310 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EeleOPoutVsE
private

Definition at line 316 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EeleOPoutVsEta
private

Definition at line 314 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EeleOPoutVsPhi
private

Definition at line 315 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP
private

Definition at line 281 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP_barrel
private

Definition at line 282 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP_eg
private

Definition at line 284 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP_eg_barrel
private

Definition at line 285 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP_eg_endcaps
private

Definition at line 286 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoP_endcaps
private

Definition at line 283 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout
private

Definition at line 299 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_all
private

Definition at line 93 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_all_barrel
private

Definition at line 94 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_all_endcaps
private

Definition at line 95 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_barrel
private

Definition at line 300 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_eg
private

Definition at line 302 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_eg_barrel
private

Definition at line 303 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_eg_endcaps
private

Definition at line 304 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoPout_endcaps
private

Definition at line 301 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPoutVsE
private

Definition at line 307 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPoutVsEta
private

Definition at line 305 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPoutVsPhi
private

Definition at line 306 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPVsE
private

Definition at line 289 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPVsEta
private

Definition at line 287 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EoPVsPhi
private

Definition at line 288 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoverP_all
private

Definition at line 87 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoverP_all_barrel
private

Definition at line 88 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EoverP_all_endcaps
private

Definition at line 89 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP
private

Definition at line 290 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_all
private

Definition at line 90 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_all_barrel
private

Definition at line 91 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_all_endcaps
private

Definition at line 92 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_barrel
private

Definition at line 291 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_eg
private

Definition at line 293 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_eg_barrel
private

Definition at line 294 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_eg_endcaps
private

Definition at line 295 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EseedOP_endcaps
private

Definition at line 292 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EseedOPVsE
private

Definition at line 298 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EseedOPVsEta
private

Definition at line 296 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EseedOPVsPhi
private

Definition at line 297 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_Et
private

Definition at line 138 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_Et_all
private

Definition at line 119 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_eta
private

Definition at line 382 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_eta_bbrem
private

Definition at line 384 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_eta_golden
private

Definition at line 383 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_eta_narrow
private

Definition at line 385 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_eta_shower
private

Definition at line 386 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrue
private

Definition at line 252 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrue_barrel
private

Definition at line 253 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrue_endcaps
private

Definition at line 254 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrueVsEta
private

Definition at line 255 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrueVsPhi
private

Definition at line 256 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_EtaMnEtaTrueVsPt
private

Definition at line 257 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_fbrem
private

Definition at line 399 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_fbrem_eg
private

Definition at line 400 of file GsfElectronMCAnalyzer.h.

TProfile* GsfElectronMCAnalyzer::h_ele_fbremVsEta_mean
private

Definition at line 402 of file GsfElectronMCAnalyzer.h.

TProfile* GsfElectronMCAnalyzer::h_ele_fbremVsEta_mode
private

Definition at line 401 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_foundHits
private

Definition at line 219 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_foundHits_barrel
private

Definition at line 220 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_foundHits_endcaps
private

Definition at line 221 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_foundHitsVsEta
private

Definition at line 222 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_foundHitsVsPhi
private

Definition at line 223 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_foundHitsVsPt
private

Definition at line 224 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_hcalDepth1TowerSumEt_dr03
private

Definition at line 423 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_hcalDepth1TowerSumEt_dr04
private

Definition at line 427 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_hcalDepth2TowerSumEt_dr03
private

Definition at line 424 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_hcalDepth2TowerSumEt_dr04
private

Definition at line 428 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE
private

Definition at line 388 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_all
private

Definition at line 114 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_all_barrel
private

Definition at line 115 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_all_endcaps
private

Definition at line 116 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_barrel
private

Definition at line 389 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_eg
private

Definition at line 391 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_eg_barrel
private

Definition at line 392 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_eg_endcaps
private

Definition at line 393 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_endcaps
private

Definition at line 390 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_HoE_fiducial
private

Definition at line 394 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_HoEVsE
private

Definition at line 397 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_HoEVsEta
private

Definition at line 395 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_HoEVsPhi
private

Definition at line 396 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_lostHits
private

Definition at line 225 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_lostHits_barrel
private

Definition at line 226 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_lostHits_endcaps
private

Definition at line 227 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_lostHitsVsEta
private

Definition at line 228 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_lostHitsVsPhi
private

Definition at line 229 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_lostHitsVsPt
private

Definition at line 230 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_all
private

Definition at line 120 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os
private

Definition at line 121 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_bb
private

Definition at line 127 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_ebeb
private

Definition at line 122 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_ebee
private

Definition at line 123 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_eeee
private

Definition at line 124 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_gb
private

Definition at line 126 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mee_os_gg
private

Definition at line 125 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mva
private

Definition at line 417 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_mva_eg
private

Definition at line 418 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_outerP
private

Definition at line 273 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_outerP_mode
private

Definition at line 274 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_outerPt
private

Definition at line 276 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_outerPt_mode
private

Definition at line 277 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_outerPtVsEta_mode
private

Definition at line 278 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_outerPtVsPhi_mode
private

Definition at line 279 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_outerPtVsPt_mode
private

Definition at line 280 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_outerPVsEta_mode
private

Definition at line 275 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrue
private

Definition at line 258 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrue2
private

Definition at line 261 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrue_barrel
private

Definition at line 259 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrue_endcaps
private

Definition at line 260 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrueVsEta
private

Definition at line 262 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrueVsPhi
private

Definition at line 263 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PhiMnPhiTrueVsPt
private

Definition at line 264 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PinMnPout
private

Definition at line 265 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PinMnPout_mode
private

Definition at line 266 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinMnPoutVsChi2_mode
private

Definition at line 271 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinMnPoutVsE_mode
private

Definition at line 270 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinMnPoutVsEta_mode
private

Definition at line 267 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinMnPoutVsPhi_mode
private

Definition at line 268 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinMnPoutVsPt_mode
private

Definition at line 269 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinVsPoutGolden_mean
private

Definition at line 406 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinVsPoutGolden_mode
private

Definition at line 404 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinVsPoutShowering_mean
private

Definition at line 407 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PinVsPoutShowering_mode
private

Definition at line 405 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue
private

Definition at line 238 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_barrel
private

Definition at line 243 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_endcaps
private

Definition at line 244 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_golden_barrel
private

Definition at line 245 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_golden_endcaps
private

Definition at line 246 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_showering_barrel
private

Definition at line 247 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PoPtrue_showering_endcaps
private

Definition at line 248 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PoPtrueVsEta
private

Definition at line 240 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PoPtrueVsPhi
private

Definition at line 241 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PoPtrueVsPt
private

Definition at line 242 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_provenance
private

Definition at line 419 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PtinVsPtoutGolden_mean
private

Definition at line 410 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PtinVsPtoutGolden_mode
private

Definition at line 408 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PtinVsPtoutShowering_mean
private

Definition at line 411 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_PtinVsPtoutShowering_mode
private

Definition at line 409 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PtoPttrue
private

Definition at line 239 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PtoPttrue_barrel
private

Definition at line 249 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_PtoPttrue_endcaps
private

Definition at line 250 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_seed_dphi2_
private

Definition at line 373 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_seed_dphi2VsEta_
private

Definition at line 374 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_seed_dphi2VsPt_
private

Definition at line 375 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_seed_drz2_
private

Definition at line 376 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_seed_drz2VsEta_
private

Definition at line 377 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_seed_drz2VsPt_
private

Definition at line 378 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_seed_subdet2_
private

Definition at line 379 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simAbsEta_matched
private

Definition at line 75 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simAbsEta_matched_qmisid
private

Definition at line 82 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simEta_matched
private

Definition at line 74 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simEta_matched_qmisid
private

Definition at line 81 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simPhi_matched
private

Definition at line 77 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simPhi_matched_qmisid
private

Definition at line 84 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simPt_matched
private

Definition at line 76 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simPt_matched_qmisid
private

Definition at line 83 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_simPtEta_matched
private

Definition at line 79 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simZ_matched
private

Definition at line 78 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_simZ_matched_qmisid
private

Definition at line 85 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_TIP_all
private

Definition at line 111 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_TIP_all_barrel
private

Definition at line 112 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_TIP_all_endcaps
private

Definition at line 113 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_tkSumPt_dr03
private

Definition at line 421 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_tkSumPt_dr04
private

Definition at line 425 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexAbsEta
private

Definition at line 144 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexEta
private

Definition at line 142 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexEta_all
private

Definition at line 117 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexEtaVsPhi
private

Definition at line 143 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexP
private

Definition at line 136 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexPhi
private

Definition at line 145 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexPt
private

Definition at line 137 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexPt_5100
private

Definition at line 141 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexPt_all
private

Definition at line 118 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexPtVsEta
private

Definition at line 139 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexPtVsPhi
private

Definition at line 140 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexTIP
private

Definition at line 149 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexTIPVsEta
private

Definition at line 150 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexTIPVsPhi
private

Definition at line 151 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_ele_vertexTIPVsPt
private

Definition at line 152 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexX
private

Definition at line 146 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexY
private

Definition at line 147 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_ele_vertexZ
private

Definition at line 148 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_eleNum
private

Definition at line 63 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_gamNum
private

Definition at line 64 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_mcNum
private

Definition at line 62 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simAbsEta
private

Definition at line 67 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simEta
private

Definition at line 66 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simP
private

Definition at line 68 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simPhi
private

Definition at line 70 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simPt
private

Definition at line 69 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::h_simPtEta
private

Definition at line 72 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::h_simZ
private

Definition at line 71 of file GsfElectronMCAnalyzer.h.

TFile* GsfElectronMCAnalyzer::histfile_
private

Definition at line 56 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histNum_
private

Definition at line 154 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_
private

Definition at line 190 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_barrel_
private

Definition at line 191 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_eg_
private

Definition at line 205 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_eg_barrel_
private

Definition at line 206 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_eg_endcaps_
private

Definition at line 207 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE1x5_endcaps_
private

Definition at line 192 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_
private

Definition at line 193 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_barrel_
private

Definition at line 194 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_eg_
private

Definition at line 208 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_eg_barrel_
private

Definition at line 209 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_eg_endcaps_
private

Definition at line 210 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE2x5max_endcaps_
private

Definition at line 195 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_
private

Definition at line 196 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_barrel_
private

Definition at line 197 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_eg_
private

Definition at line 211 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_eg_barrel_
private

Definition at line 212 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_eg_endcaps_
private

Definition at line 213 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclE5x5_endcaps_
private

Definition at line 198 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEn_
private

Definition at line 156 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel
private

Definition at line 157 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_eg
private

Definition at line 159 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_eg_new
private

Definition at line 168 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_etagap
private

Definition at line 161 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_etagap_new
private

Definition at line 170 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_new
private

Definition at line 166 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_phigap
private

Definition at line 162 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_barrel_phigap_new
private

Definition at line 171 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_ebeegap
private

Definition at line 163 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_ebeegap_new
private

Definition at line 172 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps
private

Definition at line 158 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_deegap
private

Definition at line 164 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_deegap_new
private

Definition at line 173 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_eg
private

Definition at line 160 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_eg_new
private

Definition at line 169 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_new
private

Definition at line 167 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_ringgap
private

Definition at line 165 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrue_endcaps_ringgap_new
private

Definition at line 174 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrueGolden_barrel
private

Definition at line 412 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrueGolden_endcaps
private

Definition at line 413 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::histSclEoEtruePfVsEg
private

Definition at line 182 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrueShowering_barrel
private

Definition at line 414 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEoEtrueShowering_endcaps
private

Definition at line 415 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEt_
private

Definition at line 175 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclEta_
private

Definition at line 179 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::histSclEtaVsPhi_
private

Definition at line 178 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::histSclEtVsEta_
private

Definition at line 176 of file GsfElectronMCAnalyzer.h.

TH2F* GsfElectronMCAnalyzer::histSclEtVsPhi_
private

Definition at line 177 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclPhi_
private

Definition at line 180 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_
private

Definition at line 184 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_barrel_
private

Definition at line 185 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_eg_
private

Definition at line 199 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_eg_barrel_
private

Definition at line 200 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_eg_endcaps_
private

Definition at line 201 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigEtaEta_endcaps_
private

Definition at line 186 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_
private

Definition at line 187 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_barrel_
private

Definition at line 188 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_eg_
private

Definition at line 202 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_eg_barrel_
private

Definition at line 203 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_eg_endcaps_
private

Definition at line 204 of file GsfElectronMCAnalyzer.h.

TH1F* GsfElectronMCAnalyzer::histSclSigIEtaIEta_endcaps_
private

Definition at line 189 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::hoemax
private

Definition at line 465 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::hoemin
private

Definition at line 464 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::lhitsmax
private

Definition at line 459 of file GsfElectronMCAnalyzer.h.

std::vector<int> GsfElectronMCAnalyzer::matchingIDs_
private

Definition at line 438 of file GsfElectronMCAnalyzer.h.

std::vector<int> GsfElectronMCAnalyzer::matchingMotherIDs_
private

Definition at line 439 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::maxAbsEta_
private

Definition at line 436 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::maxPt_
private

Definition at line 435 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::mcEnergy[10]
private

Definition at line 58 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::mcEta[10]
private

Definition at line 58 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::mcPhi[10]
private

Definition at line 58 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::mcPt[10]
private

Definition at line 58 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::mcQ[10]
private

Definition at line 58 of file GsfElectronMCAnalyzer.h.

edm::InputTag GsfElectronMCAnalyzer::mcTruthCollection_
private

Definition at line 432 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::meemax
private

Definition at line 463 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::meemin
private

Definition at line 462 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindeta
private

Definition at line 480 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindetamatch
private

Definition at line 482 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindetamatch2D
private

Definition at line 484 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindphi
private

Definition at line 481 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindphimatch
private

Definition at line 483 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbindphimatch2D
private

Definition at line 485 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbineop
private

Definition at line 475 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbineop2D
private

Definition at line 476 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbineta
private

Definition at line 466 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbineta2D
private

Definition at line 473 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinfhits
private

Definition at line 477 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinhoe
private

Definition at line 488 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinlhits
private

Definition at line 478 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinmee
private

Definition at line 487 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinp
private

Definition at line 467 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinp2D
private

Definition at line 471 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinphi
private

Definition at line 470 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinphi2D
private

Definition at line 474 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinpoptrue
private

Definition at line 486 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinpt
private

Definition at line 468 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinpt2D
private

Definition at line 472 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinpteff
private

Definition at line 469 of file GsfElectronMCAnalyzer.h.

int GsfElectronMCAnalyzer::nbinxyz
private

Definition at line 479 of file GsfElectronMCAnalyzer.h.

std::string GsfElectronMCAnalyzer::outputFile_
private

Definition at line 430 of file GsfElectronMCAnalyzer.h.

edm::ESHandle<TrackerGeometry> GsfElectronMCAnalyzer::pDD
private

Definition at line 54 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::phimax
private

Definition at line 445 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::phimin
private

Definition at line 444 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::pmax
private

Definition at line 447 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::poptruemax
private

Definition at line 461 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::poptruemin
private

Definition at line 460 of file GsfElectronMCAnalyzer.h.

double GsfElectronMCAnalyzer::ptmax
private

Definition at line 446 of file GsfElectronMCAnalyzer.h.

bool GsfElectronMCAnalyzer::readAOD_
private

Definition at line 433 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::seedEta[10]
private

Definition at line 60 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::seedMomentum[10]
private

Definition at line 60 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::seedPhi[10]
private

Definition at line 60 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::seedPt[10]
private

Definition at line 60 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::seedQ[10]
private

Definition at line 60 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::superclusterEnergy[10]
private

Definition at line 59 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::superclusterEt[10]
private

Definition at line 59 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::superclusterEta[10]
private

Definition at line 59 of file GsfElectronMCAnalyzer.h.

float GsfElectronMCAnalyzer::superclusterPhi[10]
private

Definition at line 59 of file GsfElectronMCAnalyzer.h.

edm::ESHandle<MagneticField> GsfElectronMCAnalyzer::theMagField
private

Definition at line 55 of file GsfElectronMCAnalyzer.h.

TrajectoryStateTransform GsfElectronMCAnalyzer::transformer_
private

Definition at line 53 of file GsfElectronMCAnalyzer.h.

TTree* GsfElectronMCAnalyzer::tree_
private

Definition at line 57 of file GsfElectronMCAnalyzer.h.