CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

myFastSimVal Class Reference

#include <myFastSimVal.h>

Inheritance diagram for myFastSimVal:
edm::EDAnalyzer edm::EDConsumerBase

List of all members.

Public Member Functions

 myFastSimVal (const edm::ParameterSet &)

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &)
void beginJob ()
void endJob ()

Private Attributes

std::string CaloJetAlgorithm1
std::string CaloJetAlgorithm2
std::string CaloJetAlgorithm3
std::string CaloJetAlgorithm4
TH1F dEta1
TH1F dEta12
TH1F dEta2
TH1F dEta3
TH1F dEta4
TH1F dEtaPar1
TH1F dEtaPar2
TH1F dEtaPar3
TH1F dEtaPar4
TH1F dijetMass1
TH1F dijetMass101
TH1F dijetMass102
TH1F dijetMass103
TH1F dijetMass12
TH1F dijetMass13
TH1F dijetMass131
TH1F dijetMass132
TH1F dijetMass133
TH1F dijetMass2
TH1F dijetMass22
TH1F dijetMass23
TH1F dijetMass3
TH1F dijetMass32
TH1F dijetMass33
TH1F dijetMass4
TH1F dijetMass401
TH1F dijetMass402
TH1F dijetMass403
TH1F dijetMass42
TH1F dijetMass43
TH1F dijetMass_2000_101
TH1F dijetMass_2000_131
TH1F dijetMass_2000_401
TH1F dijetMass_5000_101
TH1F dijetMass_5000_131
TH1F dijetMass_5000_401
TH1F dijetMass_700_101
TH1F dijetMass_700_131
TH1F dijetMass_700_401
TH1F dijetMassCor1
TH1F dijetMassCor101
TH1F dijetMassCor131
TH1F dijetMassCor401
TH1F dijetMassCor_2000_1
TH1F dijetMassCor_2000_101
TH1F dijetMassCor_2000_131
TH1F dijetMassCor_2000_401
TH1F dijetMassCor_5000_1
TH1F dijetMassCor_5000_101
TH1F dijetMassCor_5000_131
TH1F dijetMassCor_5000_401
TH1F dijetMassCor_700_1
TH1F dijetMassCor_700_101
TH1F dijetMassCor_700_131
TH1F dijetMassCor_700_401
TH1F dijetMassP1
TH1F dijetMassP101
TH1F dijetMassP131
TH1F dijetMassP2
TH1F dijetMassP3
TH1F dijetMassP401
TH1F dijetMassP_2000_101
TH1F dijetMassP_2000_131
TH1F dijetMassP_2000_401
TH1F dijetMassP_5000_101
TH1F dijetMassP_5000_131
TH1F dijetMassP_5000_401
TH1F dijetMassP_700_101
TH1F dijetMassP_700_131
TH1F dijetMassP_700_401
TH1F dPhi1
TH1F dPhi12
TH1F dPhi2
TH1F dPhi3
TH1F dPhi4
TH1F dPhiPar1
TH1F dPhiPar2
TH1F dPhiPar3
TH1F dPhiPar4
TH1F dPt1
TH1F dPt100Frac1
TH1F dPt100Frac2
TH1F dPt100Frac3
TH1F dPt100Frac4
TH1F dPt12
TH1F dPt2
TH1F dPt20Frac1
TH1F dPt20Frac2
TH1F dPt20Frac3
TH1F dPt20Frac4
TH1F dPt3
TH1F dPt4
TH1F dPt40Frac1
TH1F dPt40Frac2
TH1F dPt40Frac3
TH1F dPt40Frac4
TH1F dPt80Frac1
TH1F dPt80Frac2
TH1F dPt80Frac3
TH1F dPt80Frac4
TH1F dPtFrac1
TH1F dPtFrac2
TH1F dPtFrac3
TH1F dPtFrac4
TH1F dPtPar1
TH1F dPtPar2
TH1F dPtPar3
TH1F dPtPar4
TH1F dR1
TH1F dR12
TH1F dR2
TH1F dR3
TH1F dR4
TH1F dRPar1
TH1F dRPar2
TH1F dRPar3
TH1F dRPar4
TH1F dRParton
TH1F dRPartonMin
TH1F emEneLeadJet1
TH1F emEneLeadJet12
TH1F emEneLeadJet13
TH1F emEneLeadJet2
TH1F emEneLeadJet22
TH1F emEneLeadJet23
TH1F emEneLeadJet3
TH1F emEneLeadJet32
TH1F emEneLeadJet33
TH1F emEneLeadJetEta1_1
TH1F emEneLeadJetEta1_2
TH1F emEneLeadJetEta2_1
TH1F emEneLeadJetEta2_2
TH1F emEneLeadJetEta3_1
TH1F emEneLeadJetEta3_2
std::string GenJetAlgorithm1
std::string GenJetAlgorithm2
std::string GenJetAlgorithm3
std::string GenJetAlgorithm4
TH1F h_etaCal1
TH1F h_etaCal2
TH1F h_etaCal3
TH1F h_etaCal4
TH1F h_etaCalL1
TH1F h_etaCalL2
TH1F h_etaCalL3
TH1F h_etaCalL4
TH1F h_etaGen1
TH1F h_etaGen2
TH1F h_etaGen3
TH1F h_etaGen4
TH1F h_etaGenL1
TH1F h_etaGenL2
TH1F h_etaGenL3
TH1F h_jet1Pt1
TH1F h_jet1Pt2
TH1F h_jet1Pt3
TH1F h_jet1Pt4
TH1F h_jet2Pt1
TH1F h_jet2Pt2
TH1F h_jet2Pt3
TH1F h_jet2Pt4
TH1F h_jet3Pt1
TH1F h_jet3Pt2
TH1F h_jet3Pt3
TH1F h_jet3Pt4
TH1F h_jet4Pt1
TH1F h_jet4Pt2
TH1F h_jet4Pt3
TH1F h_jet4Pt4
TH1F h_jet5Pt1
TH1F h_jet5Pt2
TH1F h_jet5Pt3
TH1F h_jet5Pt4
TH1F h_jet6Pt1
TH1F h_jet6Pt2
TH1F h_jet6Pt3
TH1F h_jet6Pt4
TH1F h_jet7Pt1
TH1F h_jet7Pt2
TH1F h_jet7Pt3
TH1F h_jet7Pt4
TH1F h_jetEt1
TH1F h_jetEt2
TH1F h_jetEt3
TH1F h_lowPtCal11
TH1F h_lowPtCal12
TH1F h_lowPtCal13
TH1F h_lowPtCal1c11
TH1F h_lowPtCal1c12
TH1F h_lowPtCal1c13
TH1F h_lowPtCal21
TH1F h_lowPtCal22
TH1F h_lowPtCal23
TH1F h_lowPtCal2c11
TH1F h_lowPtCal2c12
TH1F h_lowPtCal2c13
TH1F h_lowPtCal31
TH1F h_lowPtCal32
TH1F h_lowPtCal33
TH1F h_lowPtCal3c11
TH1F h_lowPtCal3c12
TH1F h_lowPtCal3c13
TH1F h_lowPtCal41
TH1F h_lowPtCal42
TH1F h_lowPtCal43
TH1F h_lowPtCal4c11
TH1F h_lowPtCal4c12
TH1F h_lowPtCal4c13
TH1F h_missEt1
TH1F h_missEt1s
TH1F h_missEt2
TH1F h_missEt2s
TH1F h_missEt3
TH1F h_missEt3s
TH1F h_nCalJets1
TH1F h_nCalJets2
TH1F h_nCalJets3
TH1F h_nCalJets4
TH1F h_nGenJets1
TH1F h_nGenJets2
TH1F h_nGenJets3
TH1F h_nGenJets4
TH1F h_phiCal1
TH1F h_phiCal2
TH1F h_phiCal3
TH1F h_phiCal4
TH1F h_phiCalL1
TH1F h_phiCalL2
TH1F h_phiCalL3
TH1F h_phiCalL4
TH1F h_phiGen1
TH1F h_phiGen2
TH1F h_phiGen3
TH1F h_phiGen4
TH1F h_phiGenL1
TH1F h_phiGenL2
TH1F h_phiGenL3
TH1F h_ptCal1
TH1F h_ptCal12
TH1F h_ptCal13
TH1F h_ptCal2
TH1F h_ptCal22
TH1F h_ptCal23
TH1F h_ptCal3
TH1F h_ptCal32
TH1F h_ptCal33
TH1F h_ptCal4
TH1F h_ptCal42
TH1F h_ptCal43
TH1F h_ptCalL1
TH1F h_ptCalL12
TH1F h_ptCalL13
TH1F h_ptCalL2
TH1F h_ptCalL22
TH1F h_ptCalL23
TH1F h_ptCalL3
TH1F h_ptCalL32
TH1F h_ptCalL33
TH1F h_ptCalL4
TH1F h_ptCalL42
TH1F h_ptCalL43
TH1F h_ptGen1
TH1F h_ptGen12
TH1F h_ptGen13
TH1F h_ptGen2
TH1F h_ptGen22
TH1F h_ptGen23
TH1F h_ptGen3
TH1F h_ptGen32
TH1F h_ptGen33
TH1F h_ptGen4
TH1F h_ptGen42
TH1F h_ptGen43
TH1F h_ptGenL1
TH1F h_ptGenL12
TH1F h_ptGenL13
TH1F h_ptGenL2
TH1F h_ptGenL22
TH1F h_ptGenL23
TH1F h_ptGenL3
TH1F h_ptGenL32
TH1F h_ptGenL33
TH1F h_totMissEt1
TH1F h_totMissEt2
TH1F h_totMissEt3
TH1F hadEneLeadJet1
TH1F hadEneLeadJet12
TH1F hadEneLeadJet13
TH1F hadEneLeadJet2
TH1F hadEneLeadJet22
TH1F hadEneLeadJet23
TH1F hadEneLeadJet3
TH1F hadEneLeadJet32
TH1F hadEneLeadJet33
TH1F hadEneLeadJetEta1_1
TH1F hadEneLeadJetEta1_2
TH1F hadEneLeadJetEta2_1
TH1F hadEneLeadJetEta2_2
TH1F hadEneLeadJetEta3_1
TH1F hadEneLeadJetEta3_2
TH1F hadFracEta11
TH1F hadFracEta12
TH1F hadFracEta13
TH1F hadFracEta21
TH1F hadFracEta22
TH1F hadFracEta23
TH1F hadFracEta31
TH1F hadFracEta32
TH1F hadFracEta33
TH1F hadFracLeadJet1
TH1F hadFracLeadJet2
TH1F hadFracLeadJet3
TProfile hf_nJet1
TProfile hf_nJet11
TProfile hf_nJet1s
TProfile hf_nJet2
TProfile hf_nJet21
TProfile hf_nJet2s
TProfile hf_nJet3
TProfile hf_nJet31
TProfile hf_nJet3s
TProfile hf_nJet4
TProfile hf_nJet41
TProfile hf_nJet4s
TProfile hf_PtResponse1
TProfile hf_PtResponse2
TProfile hf_PtResponse3
TProfile hf_PtResponse4
TH1F hf_sumTowerAllEx
TH1F hf_sumTowerAllEy
TProfile hf_TowerDelR1
TProfile hf_TowerDelR12
TProfile hf_TowerDelR2
TProfile hf_TowerDelR22
TProfile hf_TowerDelR3
TProfile hf_TowerDelR32
TH1F hf_TowerJetEt1
std::string JetCorrectionService
TFile * m_file
TH1F matchedAllPt11
TH1F matchedAllPt12
TH1F matchedAllPt13
TH1F matchedAllPt21
TH1F matchedAllPt22
TH1F matchedAllPt23
TH1F matchedAllPt31
TH1F matchedAllPt32
TH1F matchedAllPt33
TH1F matchedAllPt41
TH1F matchedAllPt42
TH1F matchedAllPt43
TH1F matchedPt11
TH1F matchedPt12
TH1F matchedPt13
TH1F matchedPt21
TH1F matchedPt22
TH1F matchedPt23
TH1F matchedPt31
TH1F matchedPt32
TH1F matchedPt33
TH1F matchedPt41
TH1F matchedPt42
TH1F matchedPt43
TH1F MET1
TH1F MET12
TH1F MET13
TH1F nTowers1
TH1F nTowers2
TH1F nTowers3
TH1F nTowers4
TH1F nTowersLeadJet1
TH1F nTowersLeadJet2
TH1F nTowersLeadJet3
TH1F nTowersLeadJetPt1
TH1F nTowersLeadJetPt2
TH1F nTowersLeadJetPt3
TH1F nTowersLeadJetPt4
TH1F nTowersSecondJet1
TH1F nTowersSecondJet2
TH1F nTowersSecondJet3
TH1F ParMatch1
TH1F ParMatch2
TH1F ParMatch3
TH1F SumEt1
TH1F SumEt12
TH1F SumEt13
TH1F tbarMass
TH1F tbarMassGen
TH1F tMass
TH1F tMassGen
TH1F topMass1
TH1F topMass2
TH1F topMass3
TH1F topMassParton
TH1F totEneLeadJetEta1_1
TH1F totEneLeadJetEta1_2
TH1F totEneLeadJetEta2_1
TH1F totEneLeadJetEta2_2
TH1F totEneLeadJetEta3_1
TH1F totEneLeadJetEta3_2
TH1F TowerEtLeadJet1
TH1F TowerEtLeadJet12
TH1F TowerEtLeadJet13
TH1F TowerEtLeadJet2
TH1F TowerEtLeadJet22
TH1F TowerEtLeadJet23
TH1F TowerEtLeadJet3
TH1F TowerEtLeadJet32
TH1F TowerEtLeadJet33
TH1F ZpMass
TH1F ZpMass_2000_10
TH1F ZpMass_2000_13
TH1F ZpMass_2000_40
TH1F ZpMass_5000_10
TH1F ZpMass_5000_13
TH1F ZpMass_5000_40
TH1F ZpMass_700_10
TH1F ZpMass_700_13
TH1F ZpMass_700_40
TH1F ZpMassGen
TH1F ZpMassGen10
TH1F ZpMassGen13
TH1F ZpMassGen40
TH1F ZpMassGen_2000_10
TH1F ZpMassGen_2000_13
TH1F ZpMassGen_2000_40
TH1F ZpMassGen_5000_10
TH1F ZpMassGen_5000_13
TH1F ZpMassGen_5000_40
TH1F ZpMassGen_700_10
TH1F ZpMassGen_700_13
TH1F ZpMassGen_700_40
TH1F ZpMassMatched1
TH1F ZpMassMatched2
TH1F ZpMassMatched3
TH1F ZpMassRes101
TH1F ZpMassRes102
TH1F ZpMassRes103
TH1F ZpMassRes131
TH1F ZpMassRes132
TH1F ZpMassRes133
TH1F ZpMassRes401
TH1F ZpMassRes402
TH1F ZpMassRes403
TH1F ZpMassResL101
TH1F ZpMassResL102
TH1F ZpMassResL103
TH1F ZpMassResL131
TH1F ZpMassResL132
TH1F ZpMassResL133
TH1F ZpMassResL401
TH1F ZpMassResL402
TH1F ZpMassResL403
TH1F ZpMassResPRL101
TH1F ZpMassResPRL102
TH1F ZpMassResPRL103
TH1F ZpMassResPRL131
TH1F ZpMassResPRL132
TH1F ZpMassResPRL133
TH1F ZpMassResPRL401
TH1F ZpMassResPRL402
TH1F ZpMassResPRL403
TH1F ZpMassResRL101
TH1F ZpMassResRL102
TH1F ZpMassResRL103
TH1F ZpMassResRL131
TH1F ZpMassResRL132
TH1F ZpMassResRL133
TH1F ZpMassResRL401
TH1F ZpMassResRL402
TH1F ZpMassResRL403
TH1F ZpMassResRLoP101
TH1F ZpMassResRLoP102
TH1F ZpMassResRLoP103
TH1F ZpMassResRLoP131
TH1F ZpMassResRLoP132
TH1F ZpMassResRLoP133
TH1F ZpMassResRLoP401
TH1F ZpMassResRLoP402
TH1F ZpMassResRLoP403

Detailed Description

Definition at line 16 of file myFastSimVal.h.


Constructor & Destructor Documentation

myFastSimVal::myFastSimVal ( const edm::ParameterSet cfg)

Definition at line 34 of file myFastSimVal.cc.

                                                     :
  CaloJetAlgorithm1( cfg.getParameter<string>( "CaloJetAlgorithm1" ) ), 
  CaloJetAlgorithm2( cfg.getParameter<string>( "CaloJetAlgorithm2" ) ), 
  CaloJetAlgorithm3( cfg.getParameter<string>( "CaloJetAlgorithm3" ) ), 
  CaloJetAlgorithm4( cfg.getParameter<string>( "CaloJetAlgorithm4" ) ), 
  GenJetAlgorithm1( cfg.getParameter<string>( "GenJetAlgorithm1" ) ),
  GenJetAlgorithm2( cfg.getParameter<string>( "GenJetAlgorithm2" ) ),
  GenJetAlgorithm3( cfg.getParameter<string>( "GenJetAlgorithm3" ) ),
  GenJetAlgorithm4( cfg.getParameter<string>( "GenJetAlgorithm4" ) ),
  JetCorrectionService( cfg.getParameter<string>( "JetCorrectionService" ) )
{
}

Member Function Documentation

void myFastSimVal::analyze ( const edm::Event evt,
const edm::EventSetup es 
) [private, virtual]

Implements edm::EDAnalyzer.

Definition at line 654 of file myFastSimVal.cc.

References abs, CaloJetAlgorithm1, CaloJetAlgorithm2, CaloJetAlgorithm3, CaloJetAlgorithm4, FamosSequences_cff::caloJets, HiRecoJets_cff::caloTowers, funct::cos(), gather_cfg::cout, reco::Candidate::daughter(), SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), dEta1, dEta12, dEta2, dEta3, dEta4, dEtaPar1, dEtaPar2, dEtaPar3, dijetMass1, dijetMass101, dijetMass102, dijetMass103, dijetMass12, dijetMass13, dijetMass131, dijetMass132, dijetMass133, dijetMass2, dijetMass22, dijetMass23, dijetMass3, dijetMass32, dijetMass33, dijetMass4, dijetMass401, dijetMass402, dijetMass403, dijetMass42, dijetMass43, dijetMass_2000_101, dijetMass_2000_131, dijetMass_2000_401, dijetMass_5000_101, dijetMass_5000_131, dijetMass_5000_401, dijetMass_700_101, dijetMass_700_131, dijetMass_700_401, dijetMassCor1, dijetMassCor101, dijetMassCor131, dijetMassCor401, dijetMassCor_2000_1, dijetMassCor_2000_101, dijetMassCor_2000_131, dijetMassCor_2000_401, dijetMassCor_5000_1, dijetMassCor_5000_101, dijetMassCor_5000_131, dijetMassCor_5000_401, dijetMassCor_700_1, dijetMassCor_700_101, dijetMassCor_700_131, dijetMassCor_700_401, dijetMassP1, dijetMassP101, dijetMassP131, dijetMassP2, dijetMassP3, dijetMassP401, dijetMassP_2000_101, dijetMassP_2000_131, dijetMassP_5000_101, dijetMassP_5000_131, dijetMassP_5000_401, dijetMassP_700_101, dijetMassP_700_131, dPhi1, dPhi12, dPhi2, dPhi3, dPhi4, dPhiPar1, dPhiPar2, dPhiPar3, dPt1, dPt100Frac1, dPt100Frac2, dPt100Frac3, dPt100Frac4, dPt12, dPt2, dPt20Frac1, dPt20Frac2, dPt20Frac3, dPt20Frac4, dPt3, dPt4, dPt40Frac1, dPt40Frac2, dPt40Frac3, dPt40Frac4, dPt80Frac1, dPt80Frac2, dPt80Frac3, dPt80Frac4, dPtFrac1, dPtFrac2, dPtFrac3, dPtFrac4, dPtPar1, dPtPar2, dPtPar3, dR1, dR12, dR2, dR3, dR4, dRPar1, dRPar2, dRPar3, dRParton, dRPartonMin, emEneLeadJet1, emEneLeadJet12, emEneLeadJet13, emEneLeadJetEta1_1, emEneLeadJetEta1_2, emEneLeadJetEta2_1, emEneLeadJetEta2_2, emEneLeadJetEta3_1, emEneLeadJetEta3_2, eta(), relval_steps::gen(), GenJetAlgorithm1, GenJetAlgorithm2, GenJetAlgorithm3, GenJetAlgorithm4, genParticleCandidates2GenParticles_cfi::genParticles, edm::Event::getByLabel(), h_etaCal1, h_etaCal2, h_etaCal3, h_etaCal4, h_etaCalL1, h_etaCalL2, h_etaCalL3, h_etaCalL4, h_etaGen1, h_etaGen2, h_etaGen3, h_etaGenL1, h_etaGenL2, h_etaGenL3, h_jet1Pt1, h_jet1Pt2, h_jet1Pt3, h_jet1Pt4, h_jet2Pt1, h_jet2Pt2, h_jet2Pt3, h_jet2Pt4, h_jet3Pt1, h_jet3Pt2, h_jet3Pt3, h_jet3Pt4, h_jet4Pt1, h_jet4Pt2, h_jet4Pt3, h_jet4Pt4, h_jet5Pt1, h_jet5Pt2, h_jet5Pt3, h_jet5Pt4, h_jet6Pt1, h_jet6Pt2, h_jet6Pt3, h_jet6Pt4, h_jet7Pt1, h_jet7Pt2, h_jet7Pt3, h_jet7Pt4, h_jetEt1, h_jetEt2, h_jetEt3, h_lowPtCal11, h_lowPtCal12, h_lowPtCal13, h_lowPtCal1c11, h_lowPtCal1c12, h_lowPtCal1c13, h_lowPtCal21, h_lowPtCal22, h_lowPtCal23, h_lowPtCal2c11, h_lowPtCal2c12, h_lowPtCal2c13, h_lowPtCal31, h_lowPtCal32, h_lowPtCal33, h_lowPtCal3c11, h_lowPtCal3c12, h_lowPtCal3c13, h_lowPtCal41, h_lowPtCal42, h_lowPtCal43, h_lowPtCal4c11, h_lowPtCal4c12, h_lowPtCal4c13, h_missEt1, h_missEt1s, h_missEt2, h_missEt2s, h_missEt3, h_missEt3s, h_nCalJets1, h_nCalJets2, h_nCalJets3, h_nCalJets4, h_nGenJets1, h_nGenJets2, h_nGenJets3, h_phiCal1, h_phiCal2, h_phiCal3, h_phiCal4, h_phiCalL1, h_phiCalL2, h_phiCalL3, h_phiCalL4, h_phiGen1, h_phiGen2, h_phiGen3, h_phiGenL1, h_phiGenL2, h_phiGenL3, h_ptCal1, h_ptCal12, h_ptCal13, h_ptCal2, h_ptCal22, h_ptCal23, h_ptCal3, h_ptCal32, h_ptCal33, h_ptCal4, h_ptCal42, h_ptCal43, h_ptCalL1, h_ptCalL12, h_ptCalL13, h_ptCalL2, h_ptCalL22, h_ptCalL23, h_ptCalL3, h_ptCalL32, h_ptCalL33, h_ptCalL4, h_ptCalL42, h_ptCalL43, h_ptGen1, h_ptGen12, h_ptGen13, h_ptGen2, h_ptGen22, h_ptGen23, h_ptGen3, h_ptGen32, h_ptGen33, h_ptGenL1, h_ptGenL12, h_ptGenL13, h_ptGenL2, h_ptGenL22, h_ptGenL23, h_ptGenL3, h_ptGenL32, h_ptGenL33, h_totMissEt1, h_totMissEt2, h_totMissEt3, hadEneLeadJet1, hadEneLeadJet12, hadEneLeadJet13, hadEneLeadJetEta1_1, hadEneLeadJetEta1_2, hadEneLeadJetEta2_1, hadEneLeadJetEta2_2, hadEneLeadJetEta3_1, hadEneLeadJetEta3_2, hadFracEta11, hadFracEta21, hadFracEta31, hadFracLeadJet1, hf_nJet1, hf_nJet11, hf_nJet1s, hf_nJet2, hf_nJet21, hf_nJet2s, hf_nJet3, hf_nJet31, hf_nJet3s, hf_nJet4, hf_nJet41, hf_nJet4s, hf_PtResponse1, hf_PtResponse2, hf_PtResponse3, hf_PtResponse4, hf_sumTowerAllEx, hf_sumTowerAllEy, hf_TowerDelR1, hf_TowerDelR12, hf_TowerJetEt1, i, cuy::ii, j, reco::btau::jetPhi, reco::btau::jetPt, fwrapper::jets, findQualityFiles::jj, reco::Candidate::mass(), matchedAllPt11, matchedAllPt12, matchedAllPt13, matchedAllPt21, matchedAllPt22, matchedAllPt23, matchedAllPt31, matchedAllPt32, matchedAllPt33, matchedAllPt41, matchedAllPt42, matchedAllPt43, matchedPt11, matchedPt12, matchedPt13, matchedPt21, matchedPt22, matchedPt23, matchedPt31, matchedPt32, matchedPt33, matchedPt41, matchedPt42, matchedPt43, MAXJETS, MET1, MET12, MET13, reco::Candidate::mother(), nEvent, njet, nTowers1, nTowers2, nTowers3, nTowers4, nTowersLeadJet1, nTowersLeadJetPt1, nTowersLeadJetPt2, nTowersLeadJetPt3, nTowersLeadJetPt4, nTowersSecondJet1, reco::Candidate::numberOfDaughters(), AlCaHLTBitMon_ParallelJobs::p, reco::Candidate::p4(), ParMatch1, ParMatch2, ParMatch3, reco::Candidate::pdgId(), benchmark_cfg::pdgId, phi, pileupReCalc_HLTpaths::scale, funct::sin(), mathSSE::sqrt(), SumEt1, SumEt12, SumEt13, lumiQTWidget::t, tbarMass, tbarMassGen, tMass, tMassGen, topMass1, topMass2, topMass3, topMassParton, totEneLeadJetEta1_1, totEneLeadJetEta1_2, totEneLeadJetEta2_1, totEneLeadJetEta2_2, totEneLeadJetEta3_1, totEneLeadJetEta3_2, TowerEtLeadJet1, TowerEtLeadJet12, TowerEtLeadJet13, reco::Candidate::vx(), reco::Candidate::vy(), reco::Candidate::vz(), ZpMass, ZpMass_2000_10, ZpMass_2000_13, ZpMass_2000_40, ZpMass_5000_10, ZpMass_5000_13, ZpMass_5000_40, ZpMass_700_10, ZpMass_700_13, ZpMass_700_40, ZpMassGen, ZpMassGen10, ZpMassGen13, ZpMassGen40, ZpMassGen_2000_10, ZpMassGen_2000_13, ZpMassGen_2000_40, ZpMassGen_5000_10, ZpMassGen_5000_13, ZpMassGen_5000_40, ZpMassGen_700_10, ZpMassGen_700_13, ZpMassGen_700_40, ZpMassMatched1, ZpMassMatched2, ZpMassMatched3, ZpMassRes101, ZpMassRes131, ZpMassRes401, ZpMassRes402, ZpMassRes403, ZpMassResL101, ZpMassResL102, ZpMassResL103, ZpMassResL131, ZpMassResL132, ZpMassResL133, ZpMassResL401, ZpMassResL402, ZpMassResL403, ZpMassResPRL101, ZpMassResPRL102, ZpMassResPRL103, ZpMassResPRL131, ZpMassResPRL132, ZpMassResPRL133, ZpMassResPRL401, ZpMassResPRL402, ZpMassResPRL403, ZpMassResRL101, ZpMassResRL102, ZpMassResRL103, ZpMassResRL131, ZpMassResRL132, ZpMassResRL133, ZpMassResRL401, ZpMassResRL402, ZpMassResRL403, ZpMassResRLoP101, ZpMassResRLoP102, ZpMassResRLoP103, ZpMassResRLoP131, ZpMassResRLoP132, ZpMassResRLoP133, ZpMassResRLoP401, ZpMassResRLoP402, and ZpMassResRLoP403.

                                                                   {

  int EtaOk10, EtaOk13, EtaOk40;

  double ZpM, ZpMG, ZpMM;
  double LeadMass1, LeadMass2, LeadMass3, LeadMass4;
  double LeadMassP1, LeadMassP2, LeadMassP3;


  float minJetPt = 30.;
  float minJetPt10 = 10.;
  int jetInd, allJetInd;
  int usedInd = -1;  
  //  double matchedDelR = 0.1;
    double matchedDelR = 0.3;

  ZpMG = 0;
  LeadMass1 = -1;
  LeadMass2 = -1;
  LeadMass3 = -1;

  math::XYZTLorentzVector p4tmp[2], p4cortmp[2];
  nEvent++;

  // ********************************
  // **** Get the CaloJet1 collection
  // ********************************

  Handle<CaloJetCollection> caloJets1;
  evt.getByLabel( CaloJetAlgorithm1, caloJets1 );

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (5000./100.));
    for ( CaloJetCollection::const_iterator cal = caloJets1->begin(); cal != caloJets1->end(); ++ cal ) {          
      if ( cal->pt() > ptStep ) njet++;      
    }

    hf_nJet1.Fill( ptStep, njet );
  }

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (200./100.));
    for ( CaloJetCollection::const_iterator cal = caloJets1->begin(); cal != caloJets1->end(); ++ cal ) {          
      if ( cal->pt() > ptStep ) njet++;      
    }

    hf_nJet1s.Fill( ptStep, njet );
  }

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (3000./100.));
    for ( CaloJetCollection::const_iterator cal = caloJets1->begin(); cal != caloJets1->end(); ++ cal ) {          
      if ( cal->pt() > ptStep ) njet++;      
    }

    hf_nJet11.Fill( ptStep, njet );
  }


  //Loop over the two leading CaloJets and fill some histograms
  jetInd    = 0;
  allJetInd = 0;
  EtaOk10 = 0;
  EtaOk13 = 0;
  EtaOk40 = 0;

  //  const JetCorrector* corrector = 
  //    JetCorrector::getJetCorrector (JetCorrectionService, es);

  double highestPt;
  double nextPt;

  highestPt = 0.0;
  nextPt    = 0.0;
  

  for( CaloJetCollection::const_iterator cal = caloJets1->begin(); cal != caloJets1->end(); ++ cal ) {
    
    //    double scale = corrector->correction (*cal);
    double scale = 1.0;
    double corPt = scale*cal->pt();
    //    double corPt = cal->pt();

    
    if (corPt>highestPt) {
      nextPt      = highestPt;
      p4cortmp[1] = p4cortmp[0]; 
      highestPt   = corPt;
      p4cortmp[0] = scale*cal->p4();
    } else if (corPt>nextPt) {
      nextPt      = corPt;
      p4cortmp[1] = scale*cal->p4();
    }

    /***
    std::cout << ">>> Corr Jet: corPt = " 
              << corPt << ", scale = " << scale 
              << " pt = " << cal->pt()
              << " highestPt = " << highestPt 
              << " nextPt = "    << nextPt 
              << std::endl;  
    ****/

    allJetInd++;
    if (allJetInd == 1) {
      h_jet1Pt1.Fill( cal->pt() );
      p4tmp[0] = cal->p4();
      if ( fabs(cal->eta()) < 1.0) EtaOk10++;
      if ( fabs(cal->eta()) < 1.3) EtaOk13++;
      if ( fabs(cal->eta()) < 4.0) EtaOk40++;
    }
    if (allJetInd == 2) {
      h_jet2Pt1.Fill( cal->pt() );
      p4tmp[1] = cal->p4();
      if ( fabs(cal->eta()) < 1.0) EtaOk10++;
      if ( fabs(cal->eta()) < 1.3) EtaOk13++;
      if ( fabs(cal->eta()) < 4.0) EtaOk40++;
    }
    if ( (allJetInd == 1) || (allJetInd == 2) ) {

      h_ptCalL1.Fill( cal->pt() );   
      h_ptCalL12.Fill( cal->pt() );   
      h_ptCalL13.Fill( cal->pt() );   

      h_etaCalL1.Fill( cal->eta() );
      h_phiCalL1.Fill( cal->phi() );
    }

    if (allJetInd == 3) h_jet3Pt1.Fill( cal->pt() );
    if (allJetInd == 4) h_jet4Pt1.Fill( cal->pt() );
    if (allJetInd == 5) h_jet5Pt1.Fill( cal->pt() );
    if (allJetInd == 6) h_jet6Pt1.Fill( cal->pt() );
    if (allJetInd == 7) h_jet7Pt1.Fill( cal->pt() );

    if ( fabs(cal->eta()) < 1.3) {
      h_lowPtCal11.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal1c11.Fill( cal->pt() );   
      }
    }
    if ( (fabs(cal->eta())> 1.3) && ( fabs(cal->eta()) < 3.) )  {
      h_lowPtCal12.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal1c12.Fill( cal->pt() );   
      }
    }
    if ( fabs(cal->eta()) > 3.0) {
      h_lowPtCal13.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal1c13.Fill( cal->pt() );   
      }
    }



    if ( cal->pt() > minJetPt) {
      //    std::cout << "CALO JET1 #" << jetInd << std::endl << cal->print() << std::endl;
      h_ptCal1.Fill( cal->pt() );   
      h_ptCal12.Fill( cal->pt() );   
      h_ptCal13.Fill( cal->pt() );   

      h_etaCal1.Fill( cal->eta() );
      h_phiCal1.Fill( cal->phi() );
      jetInd++;
    }
  }

  //  h_nCalJets1.Fill( caloJets1->size() );   
  h_nCalJets1.Fill( jetInd ); 
  if (jetInd > 1) {
    LeadMass1 = (p4tmp[0]+p4tmp[1]).mass();
    dijetMass1.Fill( LeadMass1 );    
    dijetMass12.Fill( LeadMass1 );    
    dijetMass13.Fill( LeadMass1 );    
    if (EtaOk10 == 2) {
      dijetMass101.Fill( LeadMass1 );        
      dijetMass102.Fill( LeadMass1 );  
      dijetMass103.Fill( LeadMass1 );  
      dijetMass_700_101.Fill( LeadMass1 );  
      dijetMass_2000_101.Fill( LeadMass1 );  
      dijetMass_5000_101.Fill( LeadMass1 );  
    }
    if (EtaOk13 == 2) {
      dijetMass131.Fill( LeadMass1 );  
      dijetMass132.Fill( LeadMass1 );  
      dijetMass133.Fill( LeadMass1 );  
      dijetMass_700_131.Fill( LeadMass1 );  
      dijetMass_2000_131.Fill( LeadMass1 );  
      dijetMass_5000_131.Fill( LeadMass1 );  
    }
    if (EtaOk40 == 2) {
      dijetMass401.Fill( LeadMass1 );        
      dijetMass402.Fill( LeadMass1 );  
      dijetMass403.Fill( LeadMass1 );  
      dijetMass_700_401.Fill( LeadMass1 );  
      dijetMass_2000_401.Fill( LeadMass1 );  
      dijetMass_5000_401.Fill( LeadMass1 );  
    }

    LeadMass1 = (p4cortmp[0]+p4cortmp[1]).mass();

    /****
    if (LeadMass1 < 30.) {
      std::cout << " XXX Low Mass " 
                << (p4tmp[0]+p4tmp[1]).mass() 
                << " / " 
                << (p4cortmp[0]+p4cortmp[1]).mass() 
                << std::endl;

      std::cout << " p4 1 = " << p4tmp[0]
                << " p4 2 = " << p4tmp[1]
                << " p4 cor 1 = " << p4cortmp[0]
                << " p4 cor 2 = " << p4cortmp[0]
                << endl;

    }
    ****/

    /****
    dijetMassCor1.Fill( LeadMass1 );    
    dijetMassCor_700_1.Fill( LeadMass1 );    
    dijetMassCor_2000_1.Fill( LeadMass1 );    
    dijetMassCor_5000_1.Fill( LeadMass1 );    

    if (EtaOk10 == 2) {
      dijetMassCor101.Fill( LeadMass1 );  
      dijetMassCor_700_101.Fill( LeadMass1 );  
      dijetMassCor_2000_101.Fill( LeadMass1 );  
      dijetMassCor_5000_101.Fill( LeadMass1 );  
    }
    if (EtaOk13 == 2) {
      dijetMassCor131.Fill( LeadMass1 );  
      dijetMassCor_700_131.Fill( LeadMass1 );  
      dijetMassCor_2000_131.Fill( LeadMass1 );  
      dijetMassCor_5000_131.Fill( LeadMass1 );  
    }
    if (EtaOk40 == 2) {
      dijetMassCor401.Fill( LeadMass1 ); 
      dijetMassCor_700_401.Fill( LeadMass1 ); 
      dijetMassCor_2000_401.Fill( LeadMass1 ); 
      dijetMassCor_5000_401.Fill( LeadMass1 ); 
    }
    ****/

  }


  // ********************************
  // **** Get the CaloJet2 collection
  // ********************************
  Handle<CaloJetCollection> caloJets2;
  evt.getByLabel( CaloJetAlgorithm2, caloJets2 );

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (5000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets2->begin(); cal != caloJets2->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;      
    
    hf_nJet2.Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (200./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets2->begin(); cal != caloJets2->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;      
    
    hf_nJet2s.Fill( ptStep, njet );
  }


  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (3000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets2->begin(); cal != caloJets2->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;      
    
    hf_nJet21.Fill( ptStep, njet );
  }





  //Loop over the two leading CaloJets and fill some histograms
  jetInd = 0;
  allJetInd = 0;
  for( CaloJetCollection::const_iterator cal = caloJets2->begin(); cal != caloJets2->end(); ++cal ) {

    allJetInd++;
    if (allJetInd == 1) {
      h_jet1Pt2.Fill( cal->pt() );
      p4tmp[0] = cal->p4();
    }
    if (allJetInd == 2) {
      h_jet2Pt2.Fill( cal->pt() );
      p4tmp[1] = cal->p4();
    }
    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptCalL2.Fill( cal->pt() );   
      h_ptCalL22.Fill( cal->pt() );   
      h_ptCalL23.Fill( cal->pt() );   

      h_etaCalL2.Fill( cal->eta() );
      h_phiCalL2.Fill( cal->phi() );
    }
    if (allJetInd == 3) h_jet3Pt2.Fill( cal->pt() );
    if (allJetInd == 4) h_jet4Pt2.Fill( cal->pt() );
    if (allJetInd == 5) h_jet5Pt2.Fill( cal->pt() );
    if (allJetInd == 6) h_jet6Pt2.Fill( cal->pt() );
    if (allJetInd == 7) h_jet7Pt2.Fill( cal->pt() );

    if ( fabs(cal->eta()) < 1.3) {
      h_lowPtCal21.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal2c11.Fill( cal->pt() );   
      }
    }
    if ( (fabs(cal->eta())> 1.3) && ( fabs(cal->eta()) < 3.) )  {
      h_lowPtCal22.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal2c12.Fill( cal->pt() );   
      }
    }
    if ( fabs(cal->eta()) > 3.0) {
      h_lowPtCal23.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal2c13.Fill( cal->pt() );   
      }
    }


    if ( cal->pt() > minJetPt) {
      h_ptCal2.Fill( cal->pt() );   
      h_ptCal22.Fill( cal->pt() );   
      h_ptCal23.Fill( cal->pt() );   

      h_etaCal2.Fill( cal->eta() );
      h_phiCal2.Fill( cal->phi() );
      jetInd++;
    }
  }
  //  h_nCalJets2.Fill( caloJets2->size() ); 
  h_nCalJets2.Fill( jetInd ); 
  if (jetInd > 1) {
    LeadMass2 = (p4tmp[0]+p4tmp[1]).mass();
    dijetMass2.Fill( LeadMass2 );
    dijetMass22.Fill( LeadMass2 );
    dijetMass23.Fill( LeadMass2 );


    dijetMassCor1.Fill( LeadMass2 );    
    dijetMassCor_700_1.Fill( LeadMass2 );    
    dijetMassCor_2000_1.Fill( LeadMass2 );    
    dijetMassCor_5000_1.Fill( LeadMass2 );    

    if (EtaOk10 == 2) {
      dijetMassCor101.Fill( LeadMass2 );  
      dijetMassCor_700_101.Fill( LeadMass2 );  
      dijetMassCor_2000_101.Fill( LeadMass2 );  
      dijetMassCor_5000_101.Fill( LeadMass2 );  
    }
    if (EtaOk13 == 2) {
      dijetMassCor131.Fill( LeadMass2 );  
      dijetMassCor_700_131.Fill( LeadMass2 );  
      dijetMassCor_2000_131.Fill( LeadMass2 );  
      dijetMassCor_5000_131.Fill( LeadMass2 );  
    }
    if (EtaOk40 == 2) {
      dijetMassCor401.Fill( LeadMass2 ); 
      dijetMassCor_700_401.Fill( LeadMass2 ); 
      dijetMassCor_2000_401.Fill( LeadMass2 ); 
      dijetMassCor_5000_401.Fill( LeadMass2 ); 
    }


  }



  // ********************************
  // **** Get the CaloJet3 collection
  // ********************************
  Handle<CaloJetCollection> caloJets3;
  evt.getByLabel( CaloJetAlgorithm3, caloJets3 );

  //Loop over the two leading CaloJets and fill some histograms
  jetInd = 0;
  allJetInd = 0;

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (5000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets3->begin(); cal != caloJets3->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;      
    

    hf_nJet3.Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (200./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets3->begin(); cal != caloJets3->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;          

    hf_nJet3s.Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (3000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets3->begin(); cal != caloJets3->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;          

    hf_nJet31.Fill( ptStep, njet );
  }


  for( CaloJetCollection::const_iterator cal = caloJets3->begin(); cal != caloJets3->end(); ++ cal ) {

    allJetInd++;
    if (allJetInd == 1) {
      h_jet1Pt3.Fill( cal->pt() );
      p4tmp[0] = cal->p4();
    }
    if (allJetInd == 2) {
      h_jet2Pt3.Fill( cal->pt() );
      p4tmp[1] = cal->p4();
    }
    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptCalL3.Fill( cal->pt() );   
      h_ptCalL32.Fill( cal->pt() );   
      h_ptCalL33.Fill( cal->pt() );   

      h_etaCalL3.Fill( cal->eta() );
      h_phiCalL3.Fill( cal->phi() );
    }
    if (allJetInd == 3) h_jet3Pt3.Fill( cal->pt() );
    if (allJetInd == 4) h_jet4Pt3.Fill( cal->pt() );
    if (allJetInd == 5) h_jet5Pt3.Fill( cal->pt() );
    if (allJetInd == 6) h_jet6Pt3.Fill( cal->pt() );
    if (allJetInd == 7) h_jet7Pt3.Fill( cal->pt() );


    if ( fabs(cal->eta()) < 1.3) {
      h_lowPtCal31.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal3c11.Fill( cal->pt() );   
      }
    }
    if ( (fabs(cal->eta())> 1.3) && ( fabs(cal->eta()) < 3.) )  {
      h_lowPtCal32.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal3c12.Fill( cal->pt() );   
      }
    }
    if ( fabs(cal->eta()) > 3.0) {
      h_lowPtCal33.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal3c13.Fill( cal->pt() );   
      }
    }



    if ( cal->pt() > minJetPt) {
      //    std::cout << "CALO JET3 #" << jetInd << std::endl << cal->print() << std::endl;
      h_ptCal3.Fill( cal->pt() );   
      h_ptCal32.Fill( cal->pt() );   
      h_ptCal33.Fill( cal->pt() );   

      h_etaCal3.Fill( cal->eta() );
      h_phiCal3.Fill( cal->phi() );
      jetInd++;
    }
  }
  //  h_nCalJets3.Fill( caloJets3->size() ); 
  h_nCalJets3.Fill( jetInd ); 
  if (jetInd > 1) {
    LeadMass3 = (p4tmp[0]+p4tmp[1]).mass();
    dijetMass3.Fill( LeadMass3 );
    dijetMass32.Fill( LeadMass3 );
    dijetMass33.Fill( LeadMass3 );
  }



  // ********************************
  // **** Get the CaloJet4 collection
  // ********************************

  Handle<CaloJetCollection> caloJets4;
  evt.getByLabel( CaloJetAlgorithm4, caloJets4 );

  //Loop over the two leading CaloJets and fill some histograms
  jetInd = 0;
  allJetInd = 0;

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (5000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets4->begin(); cal != caloJets4->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;      
    

    hf_nJet4.Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (200./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets4->begin(); cal != caloJets4->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;          

    hf_nJet4s.Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (3000./100.));

    for ( CaloJetCollection::const_iterator cal = caloJets4->begin(); cal != caloJets4->end(); ++ cal )
      if ( cal->pt() > ptStep ) njet++;          

    hf_nJet41.Fill( ptStep, njet );
  }


  for( CaloJetCollection::const_iterator cal = caloJets4->begin(); cal != caloJets4->end(); ++ cal ) {

    allJetInd++;
    if (allJetInd == 1) {
      h_jet1Pt4.Fill( cal->pt() );
      p4tmp[0] = cal->p4();
    }
    if (allJetInd == 2) {
      h_jet2Pt4.Fill( cal->pt() );
      p4tmp[1] = cal->p4();
    }
    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptCalL4.Fill(  cal->pt() );   
      h_ptCalL42.Fill( cal->pt() );   
      h_ptCalL43.Fill( cal->pt() );   

      h_etaCalL4.Fill( cal->eta() );
      h_phiCalL4.Fill( cal->phi() );
    }
    if (allJetInd == 3) h_jet3Pt4.Fill( cal->pt() );
    if (allJetInd == 4) h_jet4Pt4.Fill( cal->pt() );
    if (allJetInd == 5) h_jet5Pt4.Fill( cal->pt() );
    if (allJetInd == 6) h_jet6Pt4.Fill( cal->pt() );
    if (allJetInd == 7) h_jet7Pt4.Fill( cal->pt() );


    if ( fabs(cal->eta()) < 1.3) {
      h_lowPtCal41.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal4c11.Fill( cal->pt() );   
      }
    }
    if ( (fabs(cal->eta())> 1.3) && ( fabs(cal->eta()) < 3.) )  {
      h_lowPtCal42.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal4c12.Fill( cal->pt() );   
      }
    }
    if ( fabs(cal->eta()) > 3.0) {
      h_lowPtCal43.Fill( cal->pt() );   
      if ( cal->pt() > 10.) {
        h_lowPtCal4c13.Fill( cal->pt() );   
      }
    }


    if ( cal->pt() > minJetPt) {
      //    std::cout << "CALO JET4 #" << jetInd << std::endl << cal->print() << std::endl;
      h_ptCal4.Fill( cal->pt() );   
      h_ptCal42.Fill( cal->pt() );   
      h_ptCal43.Fill( cal->pt() );   

      h_etaCal4.Fill( cal->eta() );
      h_phiCal4.Fill( cal->phi() );
      jetInd++;
    }
  }
  //  h_nCalJets4.Fill( caloJets4->size() ); 
  h_nCalJets4.Fill( jetInd ); 
  if (jetInd > 1) {
    LeadMass4 = (p4tmp[0]+p4tmp[1]).mass();
    dijetMass4.Fill( LeadMass4 );
    dijetMass42.Fill( LeadMass4 );
    dijetMass43.Fill( LeadMass4 );
  }



  // *********************************************
  // *********************************************


  //**** Get the GenJet1 collection
  Handle<GenJetCollection> genJets1;
  evt.getByLabel( GenJetAlgorithm1, genJets1 );


  //Loop over the two leading GenJets and fill some histograms
  jetInd    = 0;
  allJetInd = 0;
  for( GenJetCollection::const_iterator gen = genJets1->begin(); gen != genJets1->end(); ++ gen ) {
    allJetInd++;
    if (allJetInd == 1) {
      p4tmp[0] = gen->p4();
    }
    if (allJetInd == 2) {
      p4tmp[1] = gen->p4();
    }

    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptGenL1.Fill( gen->pt() );   
      h_ptGenL12.Fill( gen->pt() );   
      h_ptGenL13.Fill( gen->pt() );   

      h_etaGenL1.Fill( gen->eta() );
      h_phiGenL1.Fill( gen->phi() );
    }

    if ( gen->pt() > minJetPt) {
      // std::cout << "GEN JET1 #" << jetInd << std::endl << gen->print() << std::endl;
      h_ptGen1.Fill( gen->pt() );   
      h_ptGen12.Fill( gen->pt() );   
      h_ptGen13.Fill( gen->pt() );   

      h_etaGen1.Fill( gen->eta() );
      h_phiGen1.Fill( gen->phi() );
      jetInd++;
    }
  }

  LeadMassP1 = (p4tmp[0]+p4tmp[1]).mass();
  dijetMassP1.Fill( LeadMassP1 ); 
  if (EtaOk10 == 2) {
    dijetMassP101.Fill( LeadMassP1 ); 
    dijetMassP_700_101.Fill( LeadMassP1 ); 
    dijetMassP_2000_101.Fill( LeadMassP1 ); 
    dijetMassP_5000_101.Fill( LeadMassP1 ); 
   }
  if (EtaOk13 == 2) {
    dijetMassP131.Fill( LeadMassP1 ); 
    dijetMassP_700_131.Fill( LeadMassP1 ); 
    dijetMassP_2000_131.Fill( LeadMassP1 ); 
    dijetMassP_5000_131.Fill( LeadMassP1 ); 

   }
  if (EtaOk40 == 2) {
    dijetMassP401.Fill( LeadMassP1 );
    dijetMassP_5000_401.Fill( LeadMassP1 );
    dijetMassP_5000_401.Fill( LeadMassP1 );
    dijetMassP_5000_401.Fill( LeadMassP1 );
  } 

  //  h_nGenJets1.Fill( genJets1->size() ); 
  h_nGenJets1.Fill( jetInd ); 

  //**** Get the GenJet2 collection
  Handle<GenJetCollection> genJets2;
  evt.getByLabel( GenJetAlgorithm2, genJets2 );

  //Loop over the two leading GenJets and fill some histograms
  jetInd    = 0;
  allJetInd = 0;
  for( GenJetCollection::const_iterator gen = genJets2->begin(); gen != genJets2->end(); ++ gen ) {
    allJetInd++;
    if (allJetInd == 1) {
      p4tmp[0] = gen->p4();
    }
    if (allJetInd == 2) {
      p4tmp[1] = gen->p4();
    }
    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptGenL2.Fill( gen->pt() );   
      h_ptGenL22.Fill( gen->pt() );   
      h_ptGenL23.Fill( gen->pt() );   

      h_etaGenL2.Fill( gen->eta() );
      h_phiGenL2.Fill( gen->phi() );
    }

    if ( gen->pt() > minJetPt) {
      // std::cout << "GEN JET2 #" << jetInd << std::endl << gen->print() << std::endl;
      h_ptGen2.Fill( gen->pt() );   
      h_ptGen22.Fill( gen->pt() );   
      h_ptGen23.Fill( gen->pt() );   

      h_etaGen2.Fill( gen->eta() );
      h_phiGen2.Fill( gen->phi() );
      jetInd++;
    }
  }
  
  LeadMassP2 = (p4tmp[0]+p4tmp[1]).mass();
  dijetMassP2.Fill( LeadMassP2 ); 


  //  h_nGenJets2.Fill( genJets2->size() ); 
  h_nGenJets2.Fill( jetInd ); 

  //**** Get the GenJet3 collection
  Handle<GenJetCollection> genJets3;
  evt.getByLabel( GenJetAlgorithm3, genJets3 );

  //Loop over the two leading GenJets and fill some histograms
  jetInd    = 0;
  allJetInd = 0;
  for( GenJetCollection::const_iterator gen = genJets3->begin(); gen != genJets3->end(); ++ gen ) {
    allJetInd++;
    if (allJetInd == 1) {
      p4tmp[0] = gen->p4();
    }
    if (allJetInd == 2) {
      p4tmp[1] = gen->p4();
    }    
    if ( (allJetInd == 1) || (allJetInd == 2) ) {
      h_ptGenL3.Fill( gen->pt() );   
      h_ptGenL32.Fill( gen->pt() );   
      h_ptGenL33.Fill( gen->pt() );   

      h_etaGenL3.Fill( gen->eta() );
      h_phiGenL3.Fill( gen->phi() );
    }

    if ( gen->pt() > minJetPt) {
      // std::cout << "GEN JET3 #" << jetInd << std::endl << gen->print() << std::endl;
      h_ptGen3.Fill( gen->pt() );   
      h_ptGen32.Fill( gen->pt() );   
      h_ptGen33.Fill( gen->pt() );   

      h_etaGen3.Fill( gen->eta() );
      h_phiGen3.Fill( gen->phi() );
      jetInd++;
    }
  }

  LeadMassP3 = (p4tmp[0]+p4tmp[1]).mass();
  dijetMassP3.Fill( LeadMassP3 ); 


  //  h_nGenJets3.Fill( genJets3->size() ); 
  h_nGenJets3.Fill( jetInd ); 


  // *********************
  // MidPoint Jet Matching
  
  Handle<GenJetCollection>  genJets;
  Handle<CaloJetCollection> caloJets;

  //  evt.getByLabel( "midPointCone5GenJets",  genJets );
  //  evt.getByLabel( "midPointCone5CaloJets", caloJets );
  evt.getByLabel( GenJetAlgorithm1, genJets );
  evt.getByLabel( CaloJetAlgorithm1, caloJets );


  int maxJets = MAXJETS;

  jetInd = 0;
  double dRmin[MAXJETS];
  math::XYZTLorentzVector  p4gen[MAXJETS], p4cal[MAXJETS],  
    p4par[MAXJETS], p4Zp[MAXJETS], p4part[MAXJETS];

  int used[MAXJETS];
  int nj;

  for( int i=0; i<maxJets; ++i ) used[i] = 0;  

  //  cout << ">>>>>>>>> " << endl;



  for( GenJetCollection::const_iterator gen = genJets->begin(); 
       gen != genJets->end() && jetInd<maxJets; ++ gen ) { 

    p4gen[jetInd] = gen->p4();    //Gen 4-vector
    dRmin[jetInd] = 1000.0;

    nj      = 0;
    usedInd = -1;
    
    for( CaloJetCollection::const_iterator cal = caloJets->begin(); cal != caloJets->end(); ++ cal ) { 
 
      double delR = deltaR( cal->eta(), cal->phi(), gen->eta(), gen->phi() ); 
 
      if ( (delR<dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
        dRmin[jetInd] = delR;        // delta R of match
        p4cal[jetInd] = cal->p4();   // Matched Cal 4-vector
        usedInd       = nj;     
      }

      nj++;
    }

    if (fabs(p4gen[jetInd].eta()) < 1.3) {
      matchedAllPt11.Fill(p4gen[jetInd].pt());
    }
    if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
      matchedAllPt12.Fill(p4gen[jetInd].pt());
    }
    if (fabs(p4gen[jetInd].eta()) > 3.) {
      matchedAllPt13.Fill(p4gen[jetInd].pt());     
    }

    if (usedInd != -1) {

      used[usedInd] = 1;

      if (p4cal[jetInd].pt() > minJetPt10)
        hf_PtResponse1.Fill(p4cal[jetInd].eta(), p4cal[jetInd].pt()/p4gen[jetInd].pt());

      if (fabs(p4gen[jetInd].eta()) < 1.3) {
        matchedPt11.Fill(p4gen[jetInd].pt());
      } 
      if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
        matchedPt12.Fill(p4gen[jetInd].pt());
      }
      if (fabs(p4gen[jetInd].eta()) > 3.) {
        matchedPt13.Fill(p4gen[jetInd].pt());
      }
      /***
      cout << " >>>SISCone "     
           << jetInd                 << " " 
           << p4gen[jetInd].pt()     << " " 
           << p4gen[jetInd].eta()    << " " 
           << p4gen[jetInd].phi()    << " " 
           << p4cal[jetInd].pt()     << " " 
           << p4cal[jetInd].eta()    << " " 
           << p4cal[jetInd].phi()    
           << endl;
      ***/

      double dpt = p4cal[jetInd].pt() - p4gen[jetInd].pt();
      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        if ( (p4gen[jetInd].pt() > 20) && (p4gen[jetInd].pt() < 40) ) {
          dPt20Frac1.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 40) && (p4gen[jetInd].pt() < 60) ) {
          dPt40Frac1.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 80) && (p4gen[jetInd].pt() < 100) ) {
          dPt80Frac1.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 100) && (p4gen[jetInd].pt() < 120) ) {
          dPt100Frac1.Fill(dpt/p4gen[jetInd].pt());
        }
      }
      if ( (p4gen[jetInd].pt() > minJetPt10) && (fabs(p4gen[jetInd].eta()) < 1.3) ) {

        dR1.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4gen[jetInd].phi());
        dPhi1.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4gen[jetInd].eta();
        dEta1.Fill(deta);
        dPt1.Fill(dpt);         
        dPtFrac1.Fill(dpt/p4gen[jetInd].pt());

        if ( ( (dpt/p4gen[jetInd].pt()) < -0.5 ) &&  ( fabs(dpt) > 90. ) ) {

          cout << " deltaR min = "     << dRmin[jetInd]
               << " Ind = " << jetInd  << " / " << usedInd << " / " << used[nj]
               << " Del pt / frac  = " << dpt
               << " / "                << dpt/p4gen[jetInd].pt()
               << " cal/gen pt   = "   << p4cal[jetInd].pt()
               << " / "                << p4gen[jetInd].pt()
               << " cal/gen eta  = "   << p4cal[jetInd].eta()
               << " / "                << p4gen[jetInd].eta()
               << " cal/gen phi  = "   << p4cal[jetInd].phi()
               << " / "                << p4gen[jetInd].phi()
               << endl;
        }

      }
      
      jetInd++;    

    }

  }



  // *********************
  // Seedless Jet Matching
  
  //  Handle<GenJetCollection>  genJets;
  //  Handle<CaloJetCollection> caloJets;

  //  evt.getByLabel( "sisCone5GenJets",  genJets );
  //  evt.getByLabel( "sisCone5CaloJets", caloJets );
  evt.getByLabel( GenJetAlgorithm2, genJets );
  evt.getByLabel( CaloJetAlgorithm2, caloJets );

  // int maxJets = 20;
  jetInd = 0;
  //  double dRmin[20];
  //  math::XYZTLorentzVector p4jet[20], p4gen[20], p4cal[20], p4cor[20];

  for( int i=0; i<maxJets; ++i ) used[i] = 0;    
  for( GenJetCollection::const_iterator gen = genJets->begin(); 
       gen != genJets->end() && jetInd<maxJets; ++ gen ) { 
    p4gen[jetInd] = gen->p4();    //Gen 4-vector
    dRmin[jetInd] = 1000.0;

    nj      = 0;
    usedInd = -1;

    for( CaloJetCollection::const_iterator cal = caloJets->begin(); 
         cal != caloJets->end(); ++ cal ) { 
      double delR = deltaR( cal->eta(), cal->phi(), gen->eta(), gen->phi() ); 

      if ( (delR<dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
        dRmin[jetInd] = delR;       // delta R of match
        p4cal[jetInd] = cal->p4();  // Matched Cal 4-vector
        usedInd       = nj;
      }
      nj++;
    }

    if (fabs(p4gen[jetInd].eta()) < 1.3)   {      
      matchedAllPt21.Fill(p4gen[jetInd].pt());
    }
    if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
      matchedAllPt22.Fill(p4gen[jetInd].pt());
    }
    if (fabs(p4gen[jetInd].eta()) > 3.) {
      matchedAllPt23.Fill(p4gen[jetInd].pt());
    }


    if (usedInd != -1) {

      used[usedInd] = 1;

      if (p4cal[jetInd].pt() > minJetPt10)
        hf_PtResponse2.Fill(p4cal[jetInd].eta(), p4cal[jetInd].pt()/p4gen[jetInd].pt());

      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        matchedPt21.Fill(p4gen[jetInd].pt());
      }
      if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
        matchedPt22.Fill(p4gen[jetInd].pt());
      }
      if (fabs(p4gen[jetInd].eta()) > 3.) {
        matchedPt23.Fill(p4gen[jetInd].pt());
      }
      /***
      cout << " >>>IterCone "     
           << jetInd                 << " " 
           << p4gen[jetInd].pt()     << " " 
           << p4gen[jetInd].eta()    << " " 
           << p4gen[jetInd].phi()    << " " 
           << p4cal[jetInd].pt()     << " " 
           << p4cal[jetInd].eta()    << " " 
           << p4cal[jetInd].phi()    
           << endl;
      ***/


      double dpt = p4cal[jetInd].pt() - p4gen[jetInd].pt();
      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        if ( (p4gen[jetInd].pt() > 20) && (p4gen[jetInd].pt() < 40) ) {
          dPt20Frac2.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 40) && (p4gen[jetInd].pt() < 60) ) {
          dPt40Frac2.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 80) && (p4gen[jetInd].pt() < 100) ) {
          dPt80Frac2.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 100) && (p4gen[jetInd].pt() < 120) ) {
          dPt100Frac2.Fill(dpt/p4gen[jetInd].pt());
        }
      }
      if ( (p4gen[jetInd].pt() > minJetPt10) && (fabs(p4gen[jetInd].eta()) < 1.3) )  {

        dR2.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4gen[jetInd].phi());
        dPhi2.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4gen[jetInd].eta();
        dEta2.Fill(deta);
        dPt2.Fill(dpt);
        dPtFrac2.Fill(dpt/p4gen[jetInd].pt());       

      }      

      jetInd++;    
    }

  }

  // *********************
  // Kt Jet Matching
  
  //  Handle<GenJetCollection>  genJets;
  //  Handle<CaloJetCollection> caloJets;

  //  evt.getByLabel( "sisCone5GenJets",  genJets );
  //  evt.getByLabel( "sisCone5CaloJets", caloJets );
  evt.getByLabel( GenJetAlgorithm3, genJets );
  evt.getByLabel( CaloJetAlgorithm3, caloJets );

  // int maxJets = 20;
  jetInd = 0;
  //  double dRmin[20];
  //  math::XYZTLorentzVector p4jet[20], p4gen[20], p4cal[20], p4cor[20];

  for( int i=0; i<maxJets; ++i ) used[i] = 0;
  for( GenJetCollection::const_iterator gen = genJets->begin(); 
       gen != genJets->end() && jetInd<maxJets; ++ gen ) { 
    p4gen[jetInd] = gen->p4();    //Gen 4-vector
    dRmin[jetInd] = 1000.0;

    nj = 0;
    usedInd = -1;

    for( CaloJetCollection::const_iterator cal = caloJets->begin(); cal != caloJets->end(); ++ cal ) { 
      double delR = deltaR( cal->eta(), cal->phi(), gen->eta(), gen->phi() ); 

      if ( (delR<dRmin[jetInd]) &&  (delR < matchedDelR) && (used[nj] == 0) ) {
        dRmin[jetInd] = delR;        // delta R of match
        p4cal[jetInd] = cal->p4();   // Matched Cal 4-vector
        usedInd       = nj;
      }
      nj++;
    }

    if (fabs(p4gen[jetInd].eta()) < 1.3) {
      matchedAllPt31.Fill(p4gen[jetInd].pt());
    }
    if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
      matchedAllPt32.Fill(p4gen[jetInd].pt());
    }
   if (fabs(p4gen[jetInd].eta()) > 3.) {
      matchedAllPt33.Fill(p4gen[jetInd].pt());
    }


    if (usedInd != -1) {
      used[usedInd] = 1;

      if (p4cal[jetInd].pt() > minJetPt10)
        hf_PtResponse3.Fill(p4cal[jetInd].eta(), p4cal[jetInd].pt()/p4gen[jetInd].pt());

      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        matchedPt31.Fill(p4gen[jetInd].pt());
      }
      if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
        matchedPt32.Fill(p4gen[jetInd].pt());
      }
      if (fabs(p4gen[jetInd].eta()) > 3.) {
        matchedPt33.Fill(p4gen[jetInd].pt());
      }
      /***
      cout << " >>>MidPoint "     
           << jetInd                 << " " 
           << p4gen[jetInd].pt()     << " " 
           << p4gen[jetInd].eta()    << " " 
           << p4gen[jetInd].phi()    << " " 
           << p4cal[jetInd].pt()     << " " 
           << p4cal[jetInd].eta()    << " " 
           << p4cal[jetInd].phi()    
           << endl;
      ***/

      double dpt = p4cal[jetInd].pt() - p4gen[jetInd].pt();
      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        if ( (p4gen[jetInd].pt() > 20) && (p4gen[jetInd].pt() < 40) ) {
          dPt20Frac3.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 40) && (p4gen[jetInd].pt() < 60) ) {
          dPt40Frac3.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 80) && (p4gen[jetInd].pt() < 100) ) {
          dPt80Frac3.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 100) && (p4gen[jetInd].pt() < 120) ) {
          dPt100Frac3.Fill(dpt/p4gen[jetInd].pt());
        }
      }

      if ( (p4gen[jetInd].pt() > minJetPt10) && (fabs(p4gen[jetInd].eta()) < 1.3) ) {

        dR3.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4gen[jetInd].phi());
        dPhi3.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4gen[jetInd].eta();
        dEta3.Fill(deta);
        dPt3.Fill(dpt);
        dPtFrac3.Fill(dpt/p4gen[jetInd].pt());


      }
      
      jetInd++;    
    }
  }

  // *********************
  // Jet Algorithm 4
  
  evt.getByLabel( GenJetAlgorithm4,  genJets );
  evt.getByLabel( CaloJetAlgorithm4, caloJets );

  // int maxJets = 20;
  jetInd = 0;
  //  double dRmin[20];
  //  math::XYZTLorentzVector p4jet[20], p4gen[20], p4cal[20], p4cor[20];

  for( int i=0; i<maxJets; ++i ) used[i] = 0;    
  for( GenJetCollection::const_iterator gen = genJets->begin(); 
       gen != genJets->end() && jetInd<maxJets; ++ gen ) { 
    p4gen[jetInd] = gen->p4();    //Gen 4-vector
    dRmin[jetInd] = 1000.0;

    nj      = 0;
    usedInd = -1;

    for( CaloJetCollection::const_iterator cal = caloJets->begin(); 
         cal != caloJets->end(); ++ cal ) { 
      double delR = deltaR( cal->eta(), cal->phi(), gen->eta(), gen->phi() ); 

      if ( (delR<dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
        dRmin[jetInd] = delR;       // delta R of match
        p4cal[jetInd] = cal->p4();  // Matched Cal 4-vector
        usedInd       = nj;
      }
      nj++;
    }

    if (fabs(p4gen[jetInd].eta()) < 1.3)   {      
      matchedAllPt41.Fill(p4gen[jetInd].pt());
    }
    if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
      matchedAllPt42.Fill(p4gen[jetInd].pt());
    }
    if (fabs(p4gen[jetInd].eta()) > 3.) {
      matchedAllPt43.Fill(p4gen[jetInd].pt());
    }


    if (usedInd != -1) {

      used[usedInd] = 1;

      if (p4cal[jetInd].pt() > minJetPt10)
        hf_PtResponse4.Fill(p4cal[jetInd].eta(), p4cal[jetInd].pt()/p4gen[jetInd].pt());

      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        matchedPt41.Fill(p4gen[jetInd].pt());
      }
      if ((fabs(p4gen[jetInd].eta()) > 1.3) && (fabs(p4gen[jetInd].eta()) < 3.) ) {
        matchedPt42.Fill(p4gen[jetInd].pt());
      }
      if (fabs(p4gen[jetInd].eta()) > 3.) {
        matchedPt43.Fill(p4gen[jetInd].pt());
      }

      /***
      cout << " >>>KtClus "     
           << jetInd                 << " " 
           << p4gen[jetInd].pt()     << " " 
           << p4gen[jetInd].eta()    << " " 
           << p4gen[jetInd].phi()    << " " 
           << p4cal[jetInd].pt()     << " " 
           << p4cal[jetInd].eta()    << " " 
           << p4cal[jetInd].phi()    
           << endl;
      ***/


      double dpt = p4cal[jetInd].pt() - p4gen[jetInd].pt();
      if (fabs(p4gen[jetInd].eta()) < 1.3)  {
        if ( (p4gen[jetInd].pt() > 20) && (p4gen[jetInd].pt() < 40) ) {
          dPt20Frac4.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 40) && (p4gen[jetInd].pt() < 60) ) {
          dPt40Frac4.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 80) && (p4gen[jetInd].pt() < 100) ) {
          dPt80Frac4.Fill(dpt/p4gen[jetInd].pt());
        }
        if ( (p4gen[jetInd].pt() > 100) && (p4gen[jetInd].pt() < 120) ) {
          dPt100Frac4.Fill(dpt/p4gen[jetInd].pt());
        }
      }

      if ( (p4gen[jetInd].pt() > minJetPt10) && (fabs(p4gen[jetInd].eta()) < 1.3) )  {

        dR4.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4gen[jetInd].phi());
        dPhi4.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4gen[jetInd].eta();
        dEta4.Fill(deta);
        dPt4.Fill(dpt);
        dPtFrac4.Fill(dpt/p4gen[jetInd].pt());       

      }      

      jetInd++;    
    }

  }



  // *********************
  // MidPoint - Seedless Jet Matching
  
  Handle<CaloJetCollection> calo1Jets;
  Handle<CaloJetCollection> calo2Jets;
  Handle<CaloJetCollection> calo3Jets;

  evt.getByLabel( CaloJetAlgorithm1, calo1Jets );
  evt.getByLabel( CaloJetAlgorithm2, calo2Jets );
  evt.getByLabel( CaloJetAlgorithm3, calo3Jets );

  jetInd = 0;

  for( int i=0; i<maxJets; ++i ) used[i] = 0;
  for( CaloJetCollection::const_iterator cal1 = calo1Jets->begin(); 
       cal1 != calo1Jets->end() && jetInd<maxJets; ++cal1 ) { 

    p4gen[jetInd] = cal1->p4();    //Gen 4-vector
    dRmin[jetInd] = 1000.0;

    nj = 0;
    for( CaloJetCollection::const_iterator cal2 = calo2Jets->begin(); cal2 != calo2Jets->end(); ++cal2 ) { 

      double delR = deltaR( cal1->eta(), cal1->phi(), cal2->eta(), cal2->phi() ); 
      if ( (delR<dRmin[jetInd]) && (used[nj] == 0) ) {
        dRmin[jetInd] = delR;        // delta R of match
        p4cal[jetInd] = cal2->p4();  // Matched Cal 4-vector
        usedInd       = nj;
      }
      nj++;
    }
    used[usedInd] = 1;

    if (p4gen[jetInd].pt() > minJetPt) {
      dR12.Fill(dRmin[jetInd]);
      double dphi = deltaPhi(p4cal[jetInd].phi(), p4gen[jetInd].phi());
      dPhi12.Fill(dphi);
      double deta = p4cal[jetInd].eta() - p4gen[jetInd].eta();
      dEta12.Fill(deta);
      double dpt = p4cal[jetInd].pt() - p4gen[jetInd].pt();
      dPt12.Fill(dpt);
    }

    jetInd++;    
  }

  // ******************************************
  // ******************************************


  Handle<CandidateCollection> genParticles;
  evt.getByLabel("genParticleCandidates",genParticles);


  // *********************
  // Partons (Z')

  int nPart = 0;
  for (size_t i =0;i< genParticles->size(); i++) {

    const Candidate &p = (*genParticles)[i];
    //    int Status =  p.status();
    //    bool ParticleIsStable = Status==1;
    int id = p.pdgId();

    if (id == 32) {

      if (p.numberOfDaughters() != 0) {
        /***
        cout << "Z': part = "   << i << " id = " << id 
             << " daughters = " << p.numberOfDaughters() 
             << " mass = "      << p.mass()
             << endl;
        ***/
        ZpMG =  p.mass();
        ZpMassGen.Fill( ZpMG );
        if (EtaOk10 == 2) {
          ZpMassGen10.Fill( ZpMG );
          ZpMassGen_700_10.Fill( ZpMG );
          ZpMassGen_2000_10.Fill( ZpMG );
          ZpMassGen_5000_10.Fill( ZpMG );
        }
        if (EtaOk13 == 2) {
          ZpMassGen13.Fill( ZpMG );
          ZpMassGen_700_13.Fill( ZpMG );
          ZpMassGen_2000_13.Fill( ZpMG );
          ZpMassGen_5000_13.Fill( ZpMG );
        }
        if (EtaOk40 == 2) {
          ZpMassGen40.Fill( ZpMG );
          ZpMassGen_700_40.Fill( ZpMG );
          ZpMassGen_2000_40.Fill( ZpMG );
          ZpMassGen_5000_40.Fill( ZpMG );
        }
      }

      for( int id1=0, nd1=p.numberOfDaughters(); id1 < nd1; ++id1 ) {

        const Candidate * d1 = p.daughter(id1);

        if ( abs(d1->pdgId()) != 32) {  
          math::XYZTLorentzVector momentum=d1->p4();
          p4Zp[nPart] = momentum=d1->p4();
          nPart++;
        }

      }
    }

  }

  // *********************
  // Match jets to Zp
  int genInd = 0;

  if (nPart == 2) {
    
    ZpM = (p4Zp[0]+p4Zp[1]).mass();
    ZpMass.Fill( ZpM );

    if (EtaOk10 == 2) {
      ZpMass_700_10.Fill( ZpM );
      ZpMass_2000_10.Fill( ZpM );
      ZpMass_5000_10.Fill( ZpM );
    }
    if (EtaOk13 == 2) {
      ZpMass_700_13.Fill( ZpM );
      ZpMass_2000_13.Fill( ZpM );
      ZpMass_5000_13.Fill( ZpM );
    }
    if (EtaOk40 == 2) {
      ZpMass_700_40.Fill( ZpM );
      ZpMass_2000_40.Fill( ZpM );
      ZpMass_5000_40.Fill( ZpM );
    }

    int usedInd;   

    // ***********
    // **** Calor1
    usedInd = -1;
    jetInd  = 0;

    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<2; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;
      for( CaloJetCollection::const_iterator cal1 = calo1Jets->begin(); 
           cal1 != calo1Jets->end() && jetInd<maxJets; ++cal1 ) { 
        
        double delR = deltaR( cal1->eta(), cal1->phi(), p4Zp[i].eta(), p4Zp[i].phi() ); 

        //      if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
        if ( (delR < dRmin[jetInd]) && (used[nj] == 0) ) {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal1->p4();  // Matched Cal 4-vector
          usedInd       = nj;
          genInd        = i;
        }

        /****
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " cal1 eta  = " << cal1->eta()
             << " p4par eta = " << p4Zp[i].eta()
             << " cal1 phi  = " << cal1->phi()
             << " p4par phi = " << p4Zp[i].phi()
             << endl;
        cout << "    " 
             << " p4par = " << p4Zp[i]
             << " p4cal = " << cal1->p4()
             << endl;
        ***/
                
        nj++;
      }

      // Found matched jet
      if (usedInd != -1) {
        used[usedInd] = 1;
        jetInd++;    
      }

    }
    
    ZpMM = (p4cal[0]+p4cal[1]).mass();
    ZpMassMatched1.Fill( ZpMM );

    if ((ZpMG != 0) && (EtaOk40 == 2)) {
      ZpMassRes401.Fill( (ZpMM - ZpMG) / ZpMG );

      ZpMassResL401.Fill( (LeadMass1 - ZpMG) / ZpMG );
      ZpMassResL402.Fill( (LeadMass2 - ZpMG) / ZpMG );
      ZpMassResL403.Fill( (LeadMass3 - ZpMG) / ZpMG );
      
      ZpMassResRL401.Fill( LeadMass1 / ZpMG );
      ZpMassResRL402.Fill( LeadMass2 / ZpMG );
      ZpMassResRL403.Fill( LeadMass3 / ZpMG );

      ZpMassResRLoP401.Fill( LeadMass1 / LeadMassP1 );
      ZpMassResRLoP402.Fill( LeadMass2 / LeadMassP2 );
      ZpMassResRLoP403.Fill( LeadMass3 / LeadMassP2 );

      ZpMassResPRL401.Fill( LeadMassP1 / ZpMG );
      ZpMassResPRL402.Fill( LeadMassP2 / ZpMG );
      ZpMassResPRL403.Fill( LeadMassP3 / ZpMG );
      
    }

    if ((ZpMG != 0) && (EtaOk10 == 2)) {
      ZpMassRes101.Fill( (ZpMM - ZpMG) / ZpMG );

      ZpMassResL101.Fill( (LeadMass1 - ZpMG) / ZpMG );
      ZpMassResL102.Fill( (LeadMass2 - ZpMG) / ZpMG );
      ZpMassResL103.Fill( (LeadMass3 - ZpMG) / ZpMG );
      
      ZpMassResRL101.Fill( LeadMass1 / ZpMG );
      ZpMassResRL102.Fill( LeadMass2 / ZpMG );
      ZpMassResRL103.Fill( LeadMass3 / ZpMG );

      ZpMassResRLoP101.Fill( LeadMass1 / LeadMassP1 );
      ZpMassResRLoP102.Fill( LeadMass2 / LeadMassP2 );
      ZpMassResRLoP103.Fill( LeadMass3 / LeadMassP2 );

      ZpMassResPRL101.Fill( LeadMassP1 / ZpMG );
      ZpMassResPRL102.Fill( LeadMassP2 / ZpMG );
      ZpMassResPRL103.Fill( LeadMassP3 / ZpMG );
      
    }

    if ((ZpMG != 0) && (EtaOk13 == 2)) {
      ZpMassRes131.Fill( (ZpMM - ZpMG) / ZpMG );

      ZpMassResL131.Fill( (LeadMass1 - ZpMG) / ZpMG );
      ZpMassResL132.Fill( (LeadMass2 - ZpMG) / ZpMG );
      ZpMassResL133.Fill( (LeadMass3 - ZpMG) / ZpMG );
      
      ZpMassResRL131.Fill( LeadMass1 / ZpMG );
      ZpMassResRL132.Fill( LeadMass2 / ZpMG );
      ZpMassResRL133.Fill( LeadMass3 / ZpMG );

      ZpMassResRLoP131.Fill( LeadMass1 / LeadMassP1 );
      ZpMassResRLoP132.Fill( LeadMass2 / LeadMassP2 );
      ZpMassResRLoP133.Fill( LeadMass3 / LeadMassP2 );

      ZpMassResPRL131.Fill( LeadMassP1 / ZpMG );
      ZpMassResPRL132.Fill( LeadMassP2 / ZpMG );
      ZpMassResPRL133.Fill( LeadMassP3 / ZpMG );
      
    }



    // ***********
    // **** Calor2
    usedInd = -1;
    jetInd  = 0;

    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<2; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;
      for( CaloJetCollection::const_iterator cal2 = calo2Jets->begin(); 
           cal2 != calo2Jets->end() && jetInd<maxJets; ++cal2 ) { 
        
        double delR = deltaR( cal2->eta(), cal2->phi(), p4Zp[i].eta(), p4Zp[i].phi() ); 

        if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal2->p4();  // Matched Cal 4-vector
          usedInd       = nj;
        }

        /****   
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " p4par = " << p4par[i]
             << " p4cal = " << cal1->p4()
             << " cal1 eta  = " << cal1->eta()
             << " p4par eta = " << p4par[i].eta()
             << endl;
        ****/
                
        nj++;
      }

      // Found matched jet
      if (usedInd != -1) {
        used[usedInd] = 1;
        jetInd++;    
      }

    }
    
    ZpMM = (p4cal[0]+p4cal[1]).mass();
    ZpMassMatched2.Fill( ZpMM );
    ZpMassRes402.Fill( (ZpMM - ZpM) / ZpM );


    // ***********
    // **** Calor3
    usedInd = -1;
    jetInd  = 0;

    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<2; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;
      for( CaloJetCollection::const_iterator cal3 = calo3Jets->begin(); 
           cal3 != calo3Jets->end() && jetInd<maxJets; ++cal3 ) { 
        
        double delR = deltaR( cal3->eta(), cal3->phi(), p4Zp[i].eta(), p4Zp[i].phi() ); 

        if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal3->p4();  // Matched Cal 4-vector
          usedInd       = nj;
        }

        /****   
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " p4par = " << p4par[i]
             << " p4cal = " << cal1->p4()
             << " cal1 eta  = " << cal1->eta()
             << " p4par eta = " << p4par[i].eta()
             << endl;
        ****/
                
        nj++;
      }


      // Found matched jet
      if (usedInd != -1) {
        used[usedInd] = 1;
        jetInd++;    
      }

    }
    
    ZpMM = (p4cal[0]+p4cal[1]).mass();
    ZpMassMatched3.Fill( ZpMM );
    ZpMassRes403.Fill( (ZpMM - ZpM) / ZpM );
    
  } else {
    cout << "Z' (3): nPart = " << nPart << endl;
  }



  // *********************
  // Partons (ttbar) Jet Matching

  //  cout << ">>> Begin MC list" << endl;
  int nJet = 0;


  int ii = 1;
  int jj = 4;

  for (size_t i =0;i< genParticles->size(); i++) {

    const Candidate &p = (*genParticles)[i];
    //    int Status =  p.status();
    //    bool ParticleIsStable = Status==1;
    int id = p.pdgId();

    // Top Quarks
    if (abs(id) == 6) {
      cout << "TOP: id = " << id << " mass = " << p.mass() << endl;

      topMassParton.Fill(p.mass());

      if (id == 6)  tMassGen.Fill(p.mass());
      if (id == -6) tbarMassGen.Fill(p.mass());

      for( size_t id1=0, nd1=p.numberOfDaughters(); id1 < nd1; ++id1 ) {

        const Candidate * d1 = p.daughter(id1);

        // b - quark
        if ( abs(d1->pdgId()) == 5) {

          math::XYZTLorentzVector momentum=d1->p4();
          p4par[nJet++] = momentum=d1->p4();

          cout << "Daughter1: id = " << d1->pdgId() 
               << " daughters = " << d1->numberOfDaughters() 
               << " mother 1   = " << (d1->mother())->pdgId() 
               << " Momentum " << momentum << " GeV/c"
               << endl;   

          
          if ( (d1->mother())->pdgId() == 6 ) {
            p4part[0] = momentum=d1->p4();
            cout << ">>> part0 = " << p4part[0] << endl;
          }
          if ( (d1->mother())->pdgId() == -6) {
            p4part[3] = momentum=d1->p4();
            cout << ">>> part3 = " << p4part[3] << endl;
          }

        }

        
        // W
        // Check for fully hadronic decay

        if ( abs(d1->pdgId()) == 24) {

          for( size_t id2=0, nd2=d1->numberOfDaughters(); id2 < nd2; ++id2 ) {

            const Candidate * d2 = d1->daughter(id2);

            if (abs(d2->pdgId()) < 9) {

              math::XYZVector vertex(d2->vx(),d2->vy(),d2->vz());
              math::XYZTLorentzVector momentum=d2->p4();
              p4par[nJet++] = momentum=d2->p4();

              if ( (d1->mother())->pdgId() == 6 ) {
                p4part[ii] = momentum=d2->p4();
                cout << ">>> part" << ii << " = " << p4part[ii] << endl;
                ii++;
              }
              if ( (d1->mother())->pdgId() == -6 ) {
                p4part[jj] = momentum=d2->p4();
                cout << ">>> part" << jj << " = " << p4part[jj] << endl;
                jj++;
              }

              cout << "Daughter2: id = " << d2->pdgId() 
                   << " daughters = " << d2->numberOfDaughters() 
                   << " mother 2   = " << (d2->mother())->pdgId() 
                   << " Momentum " << momentum << " GeV/c"
                   << endl;
            }

          }
        }

        //      if ( pdgId == d->pdgId() && d->status() == 1 ) {        
        //      }
      }
    }

  }
  //  cout << ">>> N Jets = " << nJet << endl;
    
  if (nJet == 6) {

    double tmass    = (p4part[0]+p4part[1]+p4part[2]).mass();
    double tbarmass = (p4part[3]+p4part[4]+p4part[5]).mass();

    tMass.Fill(tmass);
    tbarMass.Fill(tbarmass);
    
    cout << ">>> T Mass = " << tmass << " / " << tbarmass << endl;

    double mindR = 1000.;
    for( size_t i=0; i<6; ++i ) { 
      for( size_t j=0; j<6; ++j ) { 
        if (j > i) {
          double delR = deltaR( p4par[i].eta(), p4par[i].phi(), p4par[j].eta(), p4par[j].phi() ); 
          if (delR < mindR) mindR = delR;
          dRParton.Fill(delR);
        }
      }
    }
    dRPartonMin.Fill(mindR);

    int usedInd;
    usedInd = -1;
    jetInd  = 0;
    
    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<6; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;
      for( CaloJetCollection::const_iterator cal1 = calo1Jets->begin(); 
           cal1 != calo1Jets->end() && jetInd<maxJets; ++cal1 ) { 
        
        double delR = deltaR( cal1->eta(), cal1->phi(), p4par[i].eta(), p4par[i].phi() ); 

        if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal1->p4();  // Matched Cal 4-vector
          usedInd       = nj;
          genInd        = i;
        }

        /****   
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " p4par = " << p4par[i]
             << " p4cal = " << cal1->p4()
             << " cal1 eta  = " << cal1->eta()
             << " p4par eta = " << p4par[i].eta()
             << endl;
        ****/

        
        nj++;
      }


      // Found matched jet
      if (usedInd != -1) {
        used[usedInd] = 1;
            
        dRPar1.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4par[genInd].phi());
        dPhiPar1.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4par[genInd].eta();
        dEtaPar1.Fill(deta);
        double dpt = p4cal[jetInd].pt() - p4par[genInd].pt();
        dPtPar1.Fill(dpt);
        jetInd++;    
      }

    }
    ParMatch1.Fill(jetInd);
    if (jetInd == 6) {
      topMass1.Fill( (p4cal[0]+p4cal[1]+p4cal[2]).mass() );
      topMass1.Fill( (p4cal[3]+p4cal[4]+p4cal[5]).mass() );
    }

    /***
    cout << "Collection Size = " <<  calo1Jets->size() 
         << " / " << jetInd
         << endl;
    ***/

    // ***********************
    jetInd = 0;
    usedInd = -1;

    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<6; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;      
      for( CaloJetCollection::const_iterator cal2 = calo2Jets->begin(); 
           cal2 != calo2Jets->end() && jetInd<maxJets; ++cal2 ) { 
        
        double delR = deltaR( cal2->eta(), cal2->phi(), p4par[i].eta(), p4par[i].phi() ); 

        if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) ) {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal2->p4();  // Matched Cal 4-vector
          usedInd       = nj;
          genInd        = i;
        }

        /****
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " cal2 eta  = " << cal2->eta()
             << " p4par eta = " << p4par[i].eta()
             << endl;
        ****/
        
        nj++;   
      }
      if (usedInd != -1) {
        used[usedInd] = 1;

        dRPar2.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4par[genInd].phi());
        dPhiPar2.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4par[genInd].eta();
        dEtaPar2.Fill(deta);
        double dpt = p4cal[jetInd].pt() - p4par[genInd].pt();
        dPtPar2.Fill(dpt);
        
        jetInd++;    
      }

    }
    ParMatch2.Fill(jetInd);
    if (jetInd == 6) {
      topMass2.Fill( (p4cal[0]+p4cal[1]+p4cal[2]).mass() );
      topMass2.Fill( (p4cal[3]+p4cal[4]+p4cal[5]).mass() );
    }


    /***
    cout << "Collection Size = " <<  calo2Jets->size() 
         << " / " << jetInd
         << endl;
    ***/


    // ***********************
    jetInd = 0;
    usedInd = -1;

    for( int i=0; i<maxJets; ++i ) used[i] = 0;
    for( int i=0; i<6; ++i ) { 
      
      dRmin[jetInd]  = 1000.0;

      int nj = 0;
      for( CaloJetCollection::const_iterator cal3 = calo3Jets->begin(); 
           cal3 != calo3Jets->end() && jetInd<maxJets; ++cal3 ) { 
        
        double delR = deltaR( cal3->eta(), cal3->phi(), p4par[i].eta(), p4par[i].phi() ); 

        if ( (delR < dRmin[jetInd]) && (delR < matchedDelR) && (used[nj] == 0) )  {
          dRmin[jetInd] = delR;        // delta R of match
          p4cal[jetInd] = cal3->p4();  // Matched Cal 4-vector
          usedInd       = nj;
          genInd        = i;
        }
        /****
        cout << "Delta R = " << delR
             << " deltaR min = " << dRmin[jetInd]
             << " Ind = " << jetInd << " / " << nj << " / " << used[nj]
             << " cal3 eta  = " << cal3->eta()
             << " p4par eta = " << p4par[i].eta()
             << endl;
        ****/
        
        nj++;
      }
      if (usedInd != -1) {
        used[usedInd] = 1;

        dRPar3.Fill(dRmin[jetInd]);
        double dphi = deltaPhi(p4cal[jetInd].phi(), p4par[genInd].phi());
        dPhiPar3.Fill(dphi);
        double deta = p4cal[jetInd].eta() - p4par[genInd].eta();
        dEtaPar3.Fill(deta);
        double dpt = p4cal[jetInd].pt() - p4par[genInd].pt();
        dPtPar3.Fill(dpt);
        
        jetInd++;    
      }
    }
    ParMatch3.Fill(jetInd);
    if (jetInd == 6) {
      topMass3.Fill( (p4cal[0]+p4cal[1]+p4cal[2]).mass() );
      topMass3.Fill( (p4cal[3]+p4cal[4]+p4cal[5]).mass() );
    }

    /***
    cout << "Collection Size = " <<  calo3Jets->size() 
         << " / " << jetInd
         << endl;
    ***/

  }

  int nTow1, nTow2, nTow3, nTow4;

  Handle<CaloJetCollection> jets;

  // *********************
  // Jet Properties
  // *********************



  // --- Loop over jets and make a list of all the used towers
  evt.getByLabel( CaloJetAlgorithm1, jets );
  int jjet = 0;
  for ( CaloJetCollection::const_iterator ijet=jets->begin(); ijet!=jets->end(); ijet++) {
    jjet++;

    float hadEne  = ijet->hadEnergyInHB() + ijet->hadEnergyInHO() + 
                    ijet->hadEnergyInHE() + ijet->hadEnergyInHF();                   
    float emEne   = ijet->emEnergyInEB() + ijet->emEnergyInEE() + ijet->emEnergyInHF();
    float had     = ijet->energyFractionHadronic();    

    float j_et = ijet->et();

    if (fabs(ijet->eta()) < 1.3) {
      totEneLeadJetEta1_1.Fill(hadEne+emEne); 
      hadEneLeadJetEta1_1.Fill(hadEne); 
      emEneLeadJetEta1_1.Fill(emEne);       

      totEneLeadJetEta1_2.Fill(hadEne+emEne); 
      hadEneLeadJetEta1_2.Fill(hadEne); 
      emEneLeadJetEta1_2.Fill(emEne);       

      if (ijet->pt() > minJetPt10) 
        hadFracEta11.Fill(had);
    }
    if ((fabs(ijet->eta()) > 1.3) && (fabs(ijet->eta()) < 3.) ) {

      totEneLeadJetEta2_1.Fill(hadEne+emEne); 
      hadEneLeadJetEta2_1.Fill(hadEne); 
      emEneLeadJetEta2_1.Fill(emEne);   
    
      totEneLeadJetEta2_2.Fill(hadEne+emEne); 
      hadEneLeadJetEta2_2.Fill(hadEne); 
      emEneLeadJetEta2_2.Fill(emEne);       

      if (ijet->pt() > minJetPt10) 
        hadFracEta21.Fill(had);
    }
    if (fabs(ijet->eta()) > 3.) {

      totEneLeadJetEta3_1.Fill(hadEne+emEne); 
      hadEneLeadJetEta3_1.Fill(hadEne); 
      emEneLeadJetEta3_1.Fill(emEne); 

      totEneLeadJetEta3_2.Fill(hadEne+emEne); 
      hadEneLeadJetEta3_2.Fill(hadEne); 
      emEneLeadJetEta3_2.Fill(emEne); 

      if (ijet->pt() > minJetPt10) 
        hadFracEta31.Fill(had);
    }

    
    if (jjet == 1) {
      hadFracLeadJet1.Fill(had);
      hadEneLeadJet1.Fill(hadEne);
      hadEneLeadJet12.Fill(hadEne);
      hadEneLeadJet13.Fill(hadEne);
      emEneLeadJet1.Fill(emEne);
      emEneLeadJet12.Fill(emEne);
      emEneLeadJet13.Fill(emEne);
    }

    const std::vector<CaloTowerPtr> jetCaloRefs = ijet->getCaloConstituents();
    int nConstituents = jetCaloRefs.size();

    if (jjet == 1) {

      nTow1 = nTow2 = nTow3 = nTow4 = 0;
      for (int i = 0; i <nConstituents ; i++){

        float et  = jetCaloRefs[i]->et();

        if (et > 0.5) nTow1++;
        if (et > 1.0) nTow2++;
        if (et > 1.5) nTow3++;
        if (et > 2.0) nTow4++;
        
        hf_TowerJetEt1.Fill(et/j_et);

      }

      nTowersLeadJetPt1.Fill(nTow1);
      nTowersLeadJetPt2.Fill(nTow2);
      nTowersLeadJetPt3.Fill(nTow3);
      nTowersLeadJetPt4.Fill(nTow4);

    }

    if ( (jjet == 1) && (fabs(ijet->eta()) < 1.3) ) {
      nTowersLeadJet1.Fill( nConstituents );    
      
      for (int i = 0; i <nConstituents ; i++){
        float t_et  = jetCaloRefs[i]->et();
        double delR = deltaR( ijet->eta(), ijet->phi(), jetCaloRefs[i]->eta(), jetCaloRefs[i]->phi() );
        hf_TowerDelR1.Fill( delR,  t_et/j_et);
        hf_TowerDelR12.Fill( delR,  t_et/j_et);
        TowerEtLeadJet1.Fill( t_et );
        TowerEtLeadJet12.Fill( t_et );
        TowerEtLeadJet13.Fill( t_et );
      }
    }


    if ( (jjet == 2) && (fabs(ijet->eta()) < 1.3) ) {
      nTowersSecondJet1.Fill( nConstituents );    
    }



  }

  // *********************
  // Unclustered Energy
  // *********************

  double SumPtJet(0);

  double SumEtNotJets(0);
  double SumEtJets(0);
  double SumEtTowers(0);

  double sumJetPx(0);
  double sumJetPy(0);  

  double sumTowerAllPx(0);
  double sumTowerAllPy(0);

  double sumTowerAllEx(0);
  double sumTowerAllEy(0);

  std::vector<CaloTowerPtr>   UsedTowerList;
  std::vector<CaloTower>      TowerUsedInJets;
  std::vector<CaloTower>      TowerNotUsedInJets;


  // *********************
  // Towers

  Handle<CaloTowerCollection> caloTowers;
  evt.getByLabel( "towerMaker", caloTowers );



  nTow1 = nTow2 = nTow3 = nTow4 = 0;

  double sum_et = 0.0;
  double sum_ex = 0.0;
  double sum_ey = 0.0;
  //  double sum_ez = 0.0;

  // --- Loop over towers and make a lists of used and unused towers
  for (CaloTowerCollection::const_iterator tower = caloTowers->begin();
       tower != caloTowers->end(); tower++) {
    
    Double_t  et = tower->et();
    
    if (et > 0.5) nTow1++;
    if (et > 1.0) nTow2++;
    if (et > 1.5) nTow3++;
    if (et > 2.0) nTow4++;

    if(et>0.5) {

      // ********
      double phix   = tower->phi();
      //      double theta = tower->theta();
      //      double e     = tower->energy();
      //      double et    = e*sin(theta);
      //      double et    = tower->emEt() + tower->hadEt();
      double et    = tower->et();

      //      sum_ez += e*cos(theta);
      sum_et += et;
      sum_ex += et*cos(phix);
      sum_ey += et*sin(phix);
      // ********

      Double_t phi = tower->phi();
      SumEtTowers += tower->et();
      
      sumTowerAllEx += et*cos(phi);
      sumTowerAllEy += et*sin(phi);

    }
        
  }

  SumEt1.Fill(sum_et);
  SumEt12.Fill(sum_et);
  SumEt13.Fill(sum_et);

  MET1.Fill(sqrt( sum_ex*sum_ex + sum_ey*sum_ey));
  MET12.Fill(sqrt( sum_ex*sum_ex + sum_ey*sum_ey));
  MET13.Fill(sqrt( sum_ex*sum_ex + sum_ey*sum_ey));

  //  met->mex   = -sum_ex;
  //  met->mey   = -sum_ey;
  //  met->mez   = -sum_ez;
  //  met->met   = sqrt( sum_ex*sum_ex + sum_ey*sum_ey );
  // cout << "MET = " << met->met << endl;
  //  met->sumet = sum_et;
  //  met->phi   = atan2( -sum_ey, -sum_ex ); 

  

  hf_sumTowerAllEx.Fill(sumTowerAllEx);
  hf_sumTowerAllEy.Fill(sumTowerAllEy);

  nTowers1.Fill(nTow1);
  nTowers2.Fill(nTow2);
  nTowers3.Fill(nTow3);
  nTowers4.Fill(nTow4);

  // *********************
  // MidPoint 
  //
  UsedTowerList.clear();
  TowerUsedInJets.clear();
  TowerNotUsedInJets.clear();

  // --- Loop over jets and make a list of all the used towers
  evt.getByLabel( CaloJetAlgorithm1, jets );
  for ( CaloJetCollection::const_iterator ijet=jets->begin(); ijet!=jets->end(); ijet++) {

    Double_t jetPt  = ijet->pt();
    Double_t jetPhi = ijet->phi();
    
    //    if (jetPt>5.0) {

      Double_t jetPx = jetPt*cos(jetPhi);
      Double_t jetPy = jetPt*sin(jetPhi);
      
      sumJetPx +=jetPx;
      sumJetPy +=jetPy;

      const std::vector<CaloTowerPtr> jetCaloRefs = ijet->getCaloConstituents();
      int nConstituents = jetCaloRefs.size();
      for (int i = 0; i <nConstituents ; i++){
        UsedTowerList.push_back(jetCaloRefs[i]);
      }

      SumPtJet +=jetPt;
    //    }

  }


  int NTowersUsed = UsedTowerList.size();
      
  // --- Loop over towers and make a lists of used and unused towers
  for (CaloTowerCollection::const_iterator tower = caloTowers->begin();
       tower != caloTowers->end(); tower++) {
    
    CaloTower  t = *tower;
    Double_t  et = tower->et();

    if(et>0) {

      Double_t phi = tower->phi();
      SumEtTowers += tower->et();
      
      sumTowerAllPx += et*cos(phi);
      sumTowerAllPy += et*sin(phi);

      bool used = false;

      for(int i=0; i<NTowersUsed; i++){
        if(tower->id() == UsedTowerList[i]->id()){
          used=true;
          break;
        }
      }
      
      if (used) {
        TowerUsedInJets.push_back(t);
      } else {
        TowerNotUsedInJets.push_back(t);
      }

    }

  }

  int nUsed    = TowerUsedInJets.size();
  int nNotUsed = TowerNotUsedInJets.size();
  
  SumEtJets    = 0;
  SumEtNotJets = 0;

  for(int i=0;i<nUsed;i++){
    SumEtJets += TowerUsedInJets[i].et();
  }
  h_jetEt1.Fill(SumEtJets);

  for(int i=0;i<nNotUsed;i++){
    if (TowerNotUsedInJets[i].et() > 0.5) 
      SumEtNotJets += TowerNotUsedInJets[i].et();
    h_missEt1.Fill(TowerNotUsedInJets[i].et());
    h_missEt1s.Fill(TowerNotUsedInJets[i].et());
  }
  h_totMissEt1.Fill(SumEtNotJets);



  // *********************
  // SISCone
  //
  UsedTowerList.clear();
  TowerUsedInJets.clear();
  TowerNotUsedInJets.clear();

  // --- Loop over jets and make a list of all the used towers
  evt.getByLabel( CaloJetAlgorithm2, jets );
  for ( CaloJetCollection::const_iterator ijet=jets->begin(); ijet!=jets->end(); ijet++) {

    Double_t jetPt  = ijet->pt();
    Double_t jetPhi = ijet->phi();
    
    //    if (jetPt>5.0) {

      Double_t jetPx = jetPt*cos(jetPhi);
      Double_t jetPy = jetPt*sin(jetPhi);
      
      sumJetPx +=jetPx;
      sumJetPy +=jetPy;

      const std::vector<CaloTowerPtr> jetCaloRefs = ijet->getCaloConstituents();
      int nConstituents = jetCaloRefs.size();
      for (int i = 0; i <nConstituents ; i++){
        UsedTowerList.push_back(jetCaloRefs[i]);
      }

      SumPtJet +=jetPt;
    //    }

  }


  //  Handle<CaloTowerCollection> caloTowers;
  //  evt.getByLabel( "towerMaker", caloTowers );

  NTowersUsed = UsedTowerList.size();
      
  // --- Loop over towers and make a lists of used and unused towers
  for (CaloTowerCollection::const_iterator tower = caloTowers->begin();
       tower != caloTowers->end(); tower++) {
    
    CaloTower  t = *tower;
    Double_t  et = tower->et();

    if(et>0) {

      Double_t phi = tower->phi();

      SumEtTowers += tower->et();
      
      sumTowerAllPx += et*cos(phi);
      sumTowerAllPy += et*sin(phi);

      bool used = false;

      for(int i=0; i<NTowersUsed; i++){
        if(tower->id() == UsedTowerList[i]->id()){
          used=true;
          break;
        }
      }
      
      if (used) {
        TowerUsedInJets.push_back(t);
      } else {
        TowerNotUsedInJets.push_back(t);
      }

    }

  }

  nUsed    = TowerUsedInJets.size();
  nNotUsed = TowerNotUsedInJets.size();
  
  SumEtJets    = 0;
  SumEtNotJets = 0;

  for(int i=0;i<nUsed;i++){
    SumEtJets += TowerUsedInJets[i].et();
  }
  h_jetEt2.Fill(SumEtJets);

  for(int i=0;i<nNotUsed;i++){
    if (TowerNotUsedInJets[i].et() > 0.5) 
      SumEtNotJets += TowerNotUsedInJets[i].et();
    h_missEt2.Fill(TowerNotUsedInJets[i].et());
    h_missEt2s.Fill(TowerNotUsedInJets[i].et());
  }
  h_totMissEt2.Fill(SumEtNotJets);


  // *********************
  // KtClus
  //
  UsedTowerList.clear();
  TowerUsedInJets.clear();
  TowerNotUsedInJets.clear();

  // --- Loop over jets and make a list of all the used towers
  evt.getByLabel( CaloJetAlgorithm3, jets );
  for ( CaloJetCollection::const_iterator ijet=jets->begin(); ijet!=jets->end(); ijet++) {

    Double_t jetPt  = ijet->pt();
    Double_t jetPhi = ijet->phi();
    
    //    if (jetPt>5.0) {

      Double_t jetPx = jetPt*cos(jetPhi);
      Double_t jetPy = jetPt*sin(jetPhi);
      
      sumJetPx +=jetPx;
      sumJetPy +=jetPy;

      const std::vector<CaloTowerPtr> jetCaloRefs = ijet->getCaloConstituents();
      int nConstituents = jetCaloRefs.size();
      for (int i = 0; i <nConstituents ; i++){
        UsedTowerList.push_back(jetCaloRefs[i]);
      }

      SumPtJet +=jetPt;
    //    }

  }


  //  Handle<CaloTowerCollection> caloTowers;
  //  evt.getByLabel( "towerMaker", caloTowers );

  NTowersUsed = UsedTowerList.size();
      
  // --- Loop over towers and make a lists of used and unused towers
  for (CaloTowerCollection::const_iterator tower = caloTowers->begin();
       tower != caloTowers->end(); tower++) {
    
    CaloTower  t = *tower;
    Double_t  et = tower->et();

    if(et>0) {

      //      Double_t phi = tower->phi();

      //      SumEtTowers   += tower->et();      
      //      sumTowerAllPx += et*cos(phi);
      //      sumTowerAllPy += et*sin(phi);

      bool used = false;

      for(int i=0; i<NTowersUsed; i++){
        if(tower->id() == UsedTowerList[i]->id()){
          used=true;
          break;
        }
      }
      
      if (used) {
        TowerUsedInJets.push_back(t);
      } else {
        TowerNotUsedInJets.push_back(t);
      }

    }

  }

  nUsed    = TowerUsedInJets.size();
  nNotUsed = TowerNotUsedInJets.size();
  
  SumEtJets    = 0;
  SumEtNotJets = 0;

  for(int i=0;i<nUsed;i++){
    SumEtJets += TowerUsedInJets[i].et();
  }
  h_jetEt3.Fill(SumEtJets);

  for(int i=0;i<nNotUsed;i++){
    if (TowerNotUsedInJets[i].et() > 0.5) 
      SumEtNotJets += TowerNotUsedInJets[i].et();
    h_missEt3.Fill(TowerNotUsedInJets[i].et());
    h_missEt3s.Fill(TowerNotUsedInJets[i].et());
  }
  h_totMissEt3.Fill(SumEtNotJets);

}
void myFastSimVal::beginJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 51 of file myFastSimVal.cc.

References dEta1, dEta12, dEta2, dEta3, dEta4, dEtaPar1, dEtaPar2, dEtaPar3, dEtaPar4, dijetMass1, dijetMass101, dijetMass102, dijetMass103, dijetMass12, dijetMass13, dijetMass131, dijetMass132, dijetMass133, dijetMass2, dijetMass22, dijetMass23, dijetMass3, dijetMass32, dijetMass33, dijetMass4, dijetMass401, dijetMass402, dijetMass403, dijetMass42, dijetMass43, dijetMass_2000_101, dijetMass_2000_131, dijetMass_2000_401, dijetMass_5000_101, dijetMass_5000_131, dijetMass_5000_401, dijetMass_700_101, dijetMass_700_131, dijetMass_700_401, dijetMassCor1, dijetMassCor101, dijetMassCor131, dijetMassCor401, dijetMassCor_2000_1, dijetMassCor_2000_101, dijetMassCor_2000_131, dijetMassCor_2000_401, dijetMassCor_5000_1, dijetMassCor_5000_101, dijetMassCor_5000_131, dijetMassCor_5000_401, dijetMassCor_700_1, dijetMassCor_700_101, dijetMassCor_700_131, dijetMassCor_700_401, dijetMassP1, dijetMassP101, dijetMassP131, dijetMassP2, dijetMassP3, dijetMassP401, dijetMassP_2000_101, dijetMassP_2000_131, dijetMassP_2000_401, dijetMassP_5000_101, dijetMassP_5000_131, dijetMassP_5000_401, dijetMassP_700_101, dijetMassP_700_131, dijetMassP_700_401, dPhi1, dPhi12, dPhi2, dPhi3, dPhi4, dPhiPar1, dPhiPar2, dPhiPar3, dPhiPar4, dPt1, dPt100Frac1, dPt100Frac2, dPt100Frac3, dPt100Frac4, dPt12, dPt2, dPt20Frac1, dPt20Frac2, dPt20Frac3, dPt20Frac4, dPt3, dPt4, dPt40Frac1, dPt40Frac2, dPt40Frac3, dPt40Frac4, dPt80Frac1, dPt80Frac2, dPt80Frac3, dPt80Frac4, dPtFrac1, dPtFrac2, dPtFrac3, dPtFrac4, dPtPar1, dPtPar2, dPtPar3, dPtPar4, dR1, dR12, dR2, dR3, dR4, dRPar1, dRPar2, dRPar3, dRPar4, dRParton, dRPartonMin, emEneLeadJet1, emEneLeadJet12, emEneLeadJet13, emEneLeadJet2, emEneLeadJet22, emEneLeadJet23, emEneLeadJet3, emEneLeadJet32, emEneLeadJet33, emEneLeadJetEta1_1, emEneLeadJetEta1_2, emEneLeadJetEta2_1, emEneLeadJetEta2_2, emEneLeadJetEta3_1, emEneLeadJetEta3_2, h_etaCal1, h_etaCal2, h_etaCal3, h_etaCal4, h_etaCalL1, h_etaCalL2, h_etaCalL3, h_etaCalL4, h_etaGen1, h_etaGen2, h_etaGen3, h_etaGenL1, h_etaGenL2, h_etaGenL3, h_jet1Pt1, h_jet1Pt2, h_jet1Pt3, h_jet1Pt4, h_jet2Pt1, h_jet2Pt2, h_jet2Pt3, h_jet2Pt4, h_jet3Pt1, h_jet3Pt2, h_jet3Pt3, h_jet3Pt4, h_jet4Pt1, h_jet4Pt2, h_jet4Pt3, h_jet4Pt4, h_jet5Pt1, h_jet5Pt2, h_jet5Pt3, h_jet5Pt4, h_jet6Pt1, h_jet6Pt2, h_jet6Pt3, h_jet6Pt4, h_jet7Pt1, h_jet7Pt2, h_jet7Pt3, h_jet7Pt4, h_jetEt1, h_jetEt2, h_jetEt3, h_lowPtCal11, h_lowPtCal12, h_lowPtCal13, h_lowPtCal1c11, h_lowPtCal1c12, h_lowPtCal1c13, h_lowPtCal21, h_lowPtCal22, h_lowPtCal23, h_lowPtCal2c11, h_lowPtCal2c12, h_lowPtCal2c13, h_lowPtCal31, h_lowPtCal32, h_lowPtCal33, h_lowPtCal3c11, h_lowPtCal3c12, h_lowPtCal3c13, h_lowPtCal41, h_lowPtCal42, h_lowPtCal43, h_lowPtCal4c11, h_lowPtCal4c12, h_lowPtCal4c13, h_missEt1, h_missEt1s, h_missEt2, h_missEt2s, h_missEt3, h_missEt3s, h_nCalJets1, h_nCalJets2, h_nCalJets3, h_nCalJets4, h_nGenJets1, h_nGenJets2, h_nGenJets3, h_nGenJets4, h_phiCal1, h_phiCal2, h_phiCal3, h_phiCal4, h_phiCalL1, h_phiCalL2, h_phiCalL3, h_phiCalL4, h_phiGen1, h_phiGen2, h_phiGen3, h_phiGenL1, h_phiGenL2, h_phiGenL3, h_ptCal1, h_ptCal12, h_ptCal13, h_ptCal2, h_ptCal22, h_ptCal23, h_ptCal3, h_ptCal32, h_ptCal33, h_ptCal4, h_ptCal42, h_ptCal43, h_ptCalL1, h_ptCalL12, h_ptCalL13, h_ptCalL2, h_ptCalL22, h_ptCalL23, h_ptCalL3, h_ptCalL32, h_ptCalL33, h_ptCalL4, h_ptCalL42, h_ptCalL43, h_ptGen1, h_ptGen12, h_ptGen13, h_ptGen2, h_ptGen22, h_ptGen23, h_ptGen3, h_ptGen32, h_ptGen33, h_ptGen4, h_ptGen42, h_ptGen43, h_ptGenL1, h_ptGenL12, h_ptGenL13, h_ptGenL2, h_ptGenL22, h_ptGenL23, h_ptGenL3, h_ptGenL32, h_ptGenL33, h_totMissEt1, h_totMissEt2, h_totMissEt3, hadEneLeadJet1, hadEneLeadJet12, hadEneLeadJet13, hadEneLeadJet2, hadEneLeadJet22, hadEneLeadJet23, hadEneLeadJet3, hadEneLeadJet32, hadEneLeadJet33, hadEneLeadJetEta1_1, hadEneLeadJetEta1_2, hadEneLeadJetEta2_1, hadEneLeadJetEta2_2, hadEneLeadJetEta3_1, hadEneLeadJetEta3_2, hadFracEta11, hadFracEta12, hadFracEta13, hadFracEta21, hadFracEta22, hadFracEta23, hadFracEta31, hadFracEta32, hadFracEta33, hadFracLeadJet1, hadFracLeadJet2, hadFracLeadJet3, hf_nJet1, hf_nJet11, hf_nJet1s, hf_nJet2, hf_nJet21, hf_nJet2s, hf_nJet3, hf_nJet31, hf_nJet3s, hf_nJet4, hf_nJet41, hf_nJet4s, hf_PtResponse1, hf_PtResponse2, hf_PtResponse3, hf_PtResponse4, hf_sumTowerAllEx, hf_sumTowerAllEy, hf_TowerDelR1, hf_TowerDelR12, hf_TowerDelR2, hf_TowerDelR22, hf_TowerDelR3, hf_TowerDelR32, hf_TowerJetEt1, m_file, M_PI, matchedAllPt11, matchedAllPt12, matchedAllPt13, matchedAllPt21, matchedAllPt22, matchedAllPt23, matchedAllPt31, matchedAllPt32, matchedAllPt33, matchedAllPt41, matchedAllPt42, matchedAllPt43, matchedPt11, matchedPt12, matchedPt13, matchedPt21, matchedPt22, matchedPt23, matchedPt31, matchedPt32, matchedPt33, matchedPt41, matchedPt42, matchedPt43, MET1, MET12, MET13, nTowers1, nTowers2, nTowers3, nTowers4, nTowersLeadJet1, nTowersLeadJet2, nTowersLeadJet3, nTowersLeadJetPt1, nTowersLeadJetPt2, nTowersLeadJetPt3, nTowersLeadJetPt4, nTowersSecondJet1, nTowersSecondJet2, nTowersSecondJet3, ParMatch1, ParMatch2, ParMatch3, SumEt1, SumEt12, SumEt13, tbarMass, tbarMassGen, tMass, tMassGen, topMass1, topMass2, topMass3, topMassParton, totEneLeadJetEta1_1, totEneLeadJetEta1_2, totEneLeadJetEta2_1, totEneLeadJetEta2_2, totEneLeadJetEta3_1, totEneLeadJetEta3_2, TowerEtLeadJet1, TowerEtLeadJet12, TowerEtLeadJet13, TowerEtLeadJet2, TowerEtLeadJet22, TowerEtLeadJet23, TowerEtLeadJet3, TowerEtLeadJet32, TowerEtLeadJet33, ZpMass, ZpMass_2000_10, ZpMass_2000_13, ZpMass_2000_40, ZpMass_5000_10, ZpMass_5000_13, ZpMass_5000_40, ZpMass_700_10, ZpMass_700_13, ZpMass_700_40, ZpMassGen, ZpMassGen10, ZpMassGen13, ZpMassGen40, ZpMassGen_2000_10, ZpMassGen_2000_13, ZpMassGen_2000_40, ZpMassGen_5000_10, ZpMassGen_5000_13, ZpMassGen_5000_40, ZpMassGen_700_10, ZpMassGen_700_13, ZpMassGen_700_40, ZpMassMatched1, ZpMassMatched2, ZpMassMatched3, ZpMassRes101, ZpMassRes102, ZpMassRes103, ZpMassRes131, ZpMassRes132, ZpMassRes133, ZpMassRes401, ZpMassRes402, ZpMassRes403, ZpMassResL101, ZpMassResL102, ZpMassResL103, ZpMassResL131, ZpMassResL132, ZpMassResL133, ZpMassResL401, ZpMassResL402, ZpMassResL403, ZpMassResPRL101, ZpMassResPRL102, ZpMassResPRL103, ZpMassResPRL131, ZpMassResPRL132, ZpMassResPRL133, ZpMassResPRL401, ZpMassResPRL402, ZpMassResPRL403, ZpMassResRL101, ZpMassResRL102, ZpMassResRL103, ZpMassResRL131, ZpMassResRL132, ZpMassResRL133, ZpMassResRL401, ZpMassResRL402, ZpMassResRL403, ZpMassResRLoP101, ZpMassResRLoP102, ZpMassResRLoP103, ZpMassResRLoP131, ZpMassResRLoP132, ZpMassResRLoP133, ZpMassResRLoP401, ZpMassResRLoP402, and ZpMassResRLoP403.

                             {

  // Open the histogram file and book some associated histograms
  m_file=new TFile("histo.root","RECREATE"); 

  tMassGen      =  TH1F("tMassGen","T Mass Gen",100,0,200);
  tbarMassGen   =  TH1F("tbarMassGen","Tbar Mass Gen",100,0,200);

  tMass         =  TH1F("tMass","T Mass",100,0,200);
  tbarMass      =  TH1F("tbarMass","Tbar Mass",100,0,200);

  topMassParton =  TH1F("topMassParton","Top Mass Parton",100,0,200);
  topMass1      =  TH1F("topMass1","Top Mass 1",100,0,200);
  topMass2      =  TH1F("topMass2","Top Mass 2",100,0,200);
  topMass3      =  TH1F("topMass3","Top Mass 3",100,0,200);

  ZpMass         =  TH1F("ZpMass","Generated Zp Mass",160,0,8000);
  ZpMassGen      =  TH1F("ZpMassGen","Gen Zp Mass",160,0,8000);
  ZpMassMatched1 =  TH1F("ZpMassMatched1","Calor Zp Mass 1",160,0,8000);
  ZpMassMatched2 =  TH1F("ZpMassMatched2","Calor Zp Mass 2",160,0,8000);
  ZpMassMatched3 =  TH1F("ZpMassMatched3","Calor Zp Mass 3",160,0,8000);

  ZpMassGen10      =  TH1F("ZpMassGen10","Gen Zp Mass",160,0,8000);
  ZpMassGen13      =  TH1F("ZpMassGen13","Gen Zp Mass",160,0,8000);
  ZpMassGen40      =  TH1F("ZpMassGen40","Gen Zp Mass",160,0,8000);

  ZpMass_700_10      =  TH1F("ZpMass_700_10","Parton Zp Mass",100,0,1000);
  ZpMass_700_13      =  TH1F("ZpMass_700_13","Parton Zp Mass",100,0,1000);
  ZpMass_700_40      =  TH1F("ZpMass_700_40","Parton Zp Mass",100,0,1000);

  ZpMassGen_700_10      =  TH1F("ZpMassGen_700_10","Gen Zp Mass",100,0,1000);
  ZpMassGen_700_13      =  TH1F("ZpMassGen_700_13","Gen Zp Mass",100,0,1000);
  ZpMassGen_700_40      =  TH1F("ZpMassGen_700_40","Gen Zp Mass",100,0,1000);

  ZpMassGen_2000_10      =  TH1F("ZpMassGen_2000_10","Gen Zp Mass",100,1500,2500);
  ZpMassGen_2000_13      =  TH1F("ZpMassGen_2000_13","Gen Zp Mass",100,1500,2500);
  ZpMassGen_2000_40      =  TH1F("ZpMassGen_2000_40","Gen Zp Mass",100,1500,2500);

  ZpMass_2000_10      =  TH1F("ZpMass_2000_10","Parton Zp Mass",100,1500,2500);
  ZpMass_2000_13      =  TH1F("ZpMass_2000_13","Parton Zp Mass",100,1500,2500);
  ZpMass_2000_40      =  TH1F("ZpMass_2000_40","Parton Zp Mass",100,1500,2500);

  ZpMassGen_5000_10      =  TH1F("ZpMassGen_5000_10","Gen Zp Mass",150,4000,5500);
  ZpMassGen_5000_13      =  TH1F("ZpMassGen_5000_13","Gen Zp Mass",150,4000,5500);
  ZpMassGen_5000_40      =  TH1F("ZpMassGen_5000_40","Gen Zp Mass",150,4000,5500);

  ZpMass_5000_10      =  TH1F("ZpMass_5000_10","Parton Zp Mass",150,4000,5500);
  ZpMass_5000_13      =  TH1F("ZpMass_5000_13","Parton Zp Mass",150,4000,5500);
  ZpMass_5000_40      =  TH1F("ZpMass_5000_40","Parton Zp Mass",150,4000,5500);

  ZpMassRes101     =  TH1F("ZpMassRes101","Zp Mass Resolution 1",100,-2,2);
  ZpMassRes102     =  TH1F("ZpMassRes102","Zp Mass Resolution 2",100,-2,2);
  ZpMassRes103     =  TH1F("ZpMassRes103","Zp Mass Resolution 3",100,-2,2);

  ZpMassRes131     =  TH1F("ZpMassRes131","Zp Mass Resolution 1",100,-2,2);
  ZpMassRes132     =  TH1F("ZpMassRes132","Zp Mass Resolution 2",100,-2,2);
  ZpMassRes133     =  TH1F("ZpMassRes133","Zp Mass Resolution 3",100,-2,2);

  ZpMassRes401     =  TH1F("ZpMassRes401","Zp Mass Resolution 1",100,-2,2);
  ZpMassRes402     =  TH1F("ZpMassRes402","Zp Mass Resolution 2",100,-2,2);
  ZpMassRes403     =  TH1F("ZpMassRes403","Zp Mass Resolution 3",100,-2,2);

  ZpMassResL101     =  TH1F("ZpMassResL101","Zp Mass Resolution Leading Jets 1",100,0,2);
  ZpMassResL102     =  TH1F("ZpMassResL102","Zp Mass Resolution Leading Jets 2",100,0,2);
  ZpMassResL103     =  TH1F("ZpMassResL103","Zp Mass Resolution Leading Jets 3",100,0,2);

  ZpMassResRL101     =  TH1F("ZpMassResRL101","Zp Mass Res. Ratio Leading Jets 1",100,0,2);
  ZpMassResRL102     =  TH1F("ZpMassResRL102","Zp Mass Res. Ratio Leading Jets 2",100,0,2);
  ZpMassResRL103     =  TH1F("ZpMassResRL103","Zp Mass Res. Ratio Leading Jets 3",100,0,2);

  ZpMassResRLoP101     =  TH1F("ZpMassResRLoP101","Zp Mass RLoP Ratio Leading Jets 1",100,0,2);
  ZpMassResRLoP102     =  TH1F("ZpMassResRLoP102","Zp Mass RLoP Ratio Leading Jets 2",100,0,2);
  ZpMassResRLoP103     =  TH1F("ZpMassResRLoP103","Zp Mass RLoP Ratio Leading Jets 3",100,0,2);

  ZpMassResPRL101     =  TH1F("ZpMassResPRL101","Zp Mass Res. P Ratio Leading Jets 1",100,0,2);
  ZpMassResPRL102     =  TH1F("ZpMassResPRL102","Zp Mass Res. P Ratio Leading Jets 2",100,0,2);
  ZpMassResPRL103     =  TH1F("ZpMassResPRL103","Zp Mass Res. P Ratio Leading Jets 3",100,0,2);


  ZpMassResL131     =  TH1F("ZpMassResL131","Zp Mass Resolution Leading Jets 1",100,0,2);
  ZpMassResL132     =  TH1F("ZpMassResL132","Zp Mass Resolution Leading Jets 2",100,0,2);
  ZpMassResL133     =  TH1F("ZpMassResL133","Zp Mass Resolution Leading Jets 3",100,0,2);

  ZpMassResRL131     =  TH1F("ZpMassResRL131","Zp Mass Res. Ratio Leading Jets 1",100,0,2);
  ZpMassResRL132     =  TH1F("ZpMassResRL132","Zp Mass Res. Ratio Leading Jets 2",100,0,2);
  ZpMassResRL133     =  TH1F("ZpMassResRL133","Zp Mass Res. Ratio Leading Jets 3",100,0,2);

  ZpMassResRLoP131     =  TH1F("ZpMassResRLoP131","Zp Mass RLoP Ratio Leading Jets 1",100,0,2);
  ZpMassResRLoP132     =  TH1F("ZpMassResRLoP132","Zp Mass RLoP Ratio Leading Jets 2",100,0,2);
  ZpMassResRLoP133     =  TH1F("ZpMassResRLoP133","Zp Mass RLoP Ratio Leading Jets 3",100,0,2);

  ZpMassResPRL131     =  TH1F("ZpMassResPRL131","Zp Mass Res. P Ratio Leading Jets 1",100,0,2);
  ZpMassResPRL132     =  TH1F("ZpMassResPRL132","Zp Mass Res. P Ratio Leading Jets 2",100,0,2);
  ZpMassResPRL133     =  TH1F("ZpMassResPRL133","Zp Mass Res. P Ratio Leading Jets 3",100,0,2);


  ZpMassResL401     =  TH1F("ZpMassResL401","Zp Mass Resolution Leading Jets 1",100,0,2);
  ZpMassResL402     =  TH1F("ZpMassResL402","Zp Mass Resolution Leading Jets 2",100,0,2);
  ZpMassResL403     =  TH1F("ZpMassResL403","Zp Mass Resolution Leading Jets 3",100,0,2);

  ZpMassResRL401     =  TH1F("ZpMassResRL401","Zp Mass Res. Ratio Leading Jets 1",100,0,2);
  ZpMassResRL402     =  TH1F("ZpMassResRL402","Zp Mass Res. Ratio Leading Jets 2",100,0,2);
  ZpMassResRL403     =  TH1F("ZpMassResRL403","Zp Mass Res. Ratio Leading Jets 3",100,0,2);

  ZpMassResRLoP401     =  TH1F("ZpMassResRLoP401","Zp Mass RLoP Ratio Leading Jets 1",100,0,2);
  ZpMassResRLoP402     =  TH1F("ZpMassResRLoP402","Zp Mass RLoP Ratio Leading Jets 2",100,0,2);
  ZpMassResRLoP403     =  TH1F("ZpMassResRLoP403","Zp Mass RLoP Ratio Leading Jets 3",100,0,2);

  ZpMassResPRL401     =  TH1F("ZpMassResPRL401","Zp Mass Res. P Ratio Leading Jets 1",100,0,2);
  ZpMassResPRL402     =  TH1F("ZpMassResPRL402","Zp Mass Res. P Ratio Leading Jets 2",100,0,2);
  ZpMassResPRL403     =  TH1F("ZpMassResPRL403","Zp Mass Res. P Ratio Leading Jets 3",100,0,2);

  dijetMass1 =  TH1F("dijetMass1","DiJet Mass 1",100,0,4000);
  dijetMass12 =  TH1F("dijetMass12","DiJet Mass 1 2",100,0,6000);
  dijetMass13 =  TH1F("dijetMass13","DiJet Mass 1 3",100,0,12000);
  dijetMass2 =  TH1F("dijetMass2","DiJet Mass 2",100,0,4000);
  dijetMass22 =  TH1F("dijetMass22","DiJet Mass 2 2",100,0,6000);
  dijetMass23 =  TH1F("dijetMass23","DiJet Mass 2 3",100,0,12000);
  dijetMass3 =  TH1F("dijetMass3","DiJet Mass 3",100,0,4000);
  dijetMass32 =  TH1F("dijetMass32","DiJet Mass 3 2",100,0,6000);
  dijetMass33 =  TH1F("dijetMass33","DiJet Mass 3 3",100,0,12000);
  dijetMass4 =  TH1F("dijetMass4","DiJet Mass 4",100,0,4000);
  dijetMass42 =  TH1F("dijetMass42","DiJet Mass 4 2",100,0,6000);
  dijetMass43 =  TH1F("dijetMass43","DiJet Mass 4 3",100,0,12000);

  dijetMass101 =  TH1F("dijetMass101","DiJet Mass 1",100,0,6000);
  dijetMass131 =  TH1F("dijetMass131","DiJet Mass 1",100,0,6000);
  dijetMass401 =  TH1F("dijetMass401","DiJet Mass 1",100,0,6000);

  dijetMass102 =  TH1F("dijetMass102","DiJet Mass 2",100,0,6000);
  dijetMass132 =  TH1F("dijetMass132","DiJet Mass 2",100,0,6000);
  dijetMass402 =  TH1F("dijetMass402","DiJet Mass 2",100,0,6000);

  dijetMass103 =  TH1F("dijetMass103","DiJet Mass 3",100,0,10000);
  dijetMass133 =  TH1F("dijetMass133","DiJet Mass 3",100,0,10000);
  dijetMass403 =  TH1F("dijetMass403","DiJet Mass 3",100,0,10000);

  dijetMass_700_101 =  TH1F("dijetMass_700_101","DiJet Mass 1",100,0,1000);
  dijetMass_700_131 =  TH1F("dijetMass_700_131","DiJet Mass 1",100,0,1000);
  dijetMass_700_401 =  TH1F("dijetMass_700_401","DiJet Mass 1",100,0,1000);

  dijetMass_2000_101 =  TH1F("dijetMass_2000_101","DiJet Mass 1",100,1500,2500);
  dijetMass_2000_131 =  TH1F("dijetMass_2000_131","DiJet Mass 1",100,1500,2500);
  dijetMass_2000_401 =  TH1F("dijetMass_2000_401","DiJet Mass 1",100,1500,2500);

  dijetMass_5000_101 =  TH1F("dijetMass_5000_101","DiJet Mass 1",150,4000,5500);
  dijetMass_5000_131 =  TH1F("dijetMass_5000_131","DiJet Mass 1",150,4000,5500);
  dijetMass_5000_401 =  TH1F("dijetMass_5000_401","DiJet Mass 1",150,4000,5500);


  dijetMassCor1   =  TH1F("dijetMassCor1","DiJet Mass 1",160,0,8000);
  dijetMassCor101 =  TH1F("dijetMassCor101","DiJet Mass Cor 101",160,0,8000);
  dijetMassCor131 =  TH1F("dijetMassCor131","DiJet Mass Cor 131",160,0,8000);
  dijetMassCor401 =  TH1F("dijetMassCor401","DiJet Mass Cor 401",160,0,8000);

  dijetMassCor_700_1   =  TH1F("dijetMassCor_700_1","DiJet Mass 1",100,0,1000);
  dijetMassCor_700_101 =  TH1F("dijetMassCor_700_101","DiJet Mass Cor 101",100,0,1000);
  dijetMassCor_700_131 =  TH1F("dijetMassCor_700_131","DiJet Mass Cor 131",100,0,1000);
  dijetMassCor_700_401 =  TH1F("dijetMassCor_700_401","DiJet Mass Cor 401",100,0,1000);

  dijetMassCor_2000_1   =  TH1F("dijetMassCor_2000_1","DiJet Mass 1",100,1500,2500);
  dijetMassCor_2000_101 =  TH1F("dijetMassCor_2000_101","DiJet Mass Cor 101",100,1500,2500);
  dijetMassCor_2000_131 =  TH1F("dijetMassCor_2000_131","DiJet Mass Cor 131",100,1500,2500);
  dijetMassCor_2000_401 =  TH1F("dijetMassCor_2000_401","DiJet Mass Cor 401",100,1500,2500);

  dijetMassCor_5000_1   =  TH1F("dijetMassCor_5000_1","DiJet Mass 1",150,4000,5500);
  dijetMassCor_5000_101 =  TH1F("dijetMassCor_5000_101","DiJet Mass Cor 101",150,4000,5500);
  dijetMassCor_5000_131 =  TH1F("dijetMassCor_5000_131","DiJet Mass Cor 131",150,4000,5500);
  dijetMassCor_5000_401 =  TH1F("dijetMassCor_5000_401","DiJet Mass Cor 401",150,4000,5500);

  dijetMassP1 =  TH1F("dijetMassP1","DiJet Mass P 1",160,0,8000);
  dijetMassP2 =  TH1F("dijetMassP2","DiJet Mass P 2",160,0,8000);
  dijetMassP3 =  TH1F("dijetMassP3","DiJet Mass P 3",160,0,8000);


  dijetMassP101 =  TH1F("dijetMassP101","DiJet Mass P 1",160,0,8000);
  dijetMassP131 =  TH1F("dijetMassP131","DiJet Mass P 1",160,0,8000);
  dijetMassP401 =  TH1F("dijetMassP401","DiJet Mass P 1",160,0,8000);

  dijetMassP_700_101 =  TH1F("dijetMassP_700_101","DiJet Mass P 1",100,0,1000);
  dijetMassP_700_131 =  TH1F("dijetMassP_700_131","DiJet Mass P 1",100,0,1000);
  dijetMassP_700_401 =  TH1F("dijetMassP_700_401","DiJet Mass P 1",100,0,1000);

  dijetMassP_2000_101 =  TH1F("dijetMassP_2000_101","DiJet Mass P 1",100,1500,2500);
  dijetMassP_2000_131 =  TH1F("dijetMassP_2000_131","DiJet Mass P 1",100,1500,2500);
  dijetMassP_2000_401 =  TH1F("dijetMassP_2000_401","DiJet Mass P 1",100,1500,2500);

  dijetMassP_5000_101 =  TH1F("dijetMassP_5000_101","DiJet Mass P 1",150,4000,5500);
  dijetMassP_5000_131 =  TH1F("dijetMassP_5000_131","DiJet Mass P 1",150,4000,5500);
  dijetMassP_5000_401 =  TH1F("dijetMassP_5000_401","DiJet Mass P 1",150,4000,5500);

  totEneLeadJetEta1_1 = TH1F("totEneLeadJetEta1_1","Total Energy Lead Jet Eta1 1",100,0,1500);
  totEneLeadJetEta2_1 = TH1F("totEneLeadJetEta2_1","Total Energy Lead Jet Eta2 1",100,0,1500);
  totEneLeadJetEta3_1 = TH1F("totEneLeadJetEta3_1","Total Energy Lead Jet Eta3 1",100,0,1500);
  hadEneLeadJetEta1_1 = TH1F("hadEneLeadJetEta1_1","Hadronic Energy Lead Jet Eta1 1",100,0,1500);
  hadEneLeadJetEta2_1 = TH1F("hadEneLeadJetEta2_1","Hadronic Energy Lead Jet Eta2 1",100,0,1500);
  hadEneLeadJetEta3_1 = TH1F("hadEneLeadJetEta3_1","Hadronic Energy Lead Jet Eta3 1",100,0,1500);
  emEneLeadJetEta1_1 = TH1F("emEneLeadJetEta1_1","EM Energy Lead Jet Eta1 1",100,0,1500);
  emEneLeadJetEta2_1 = TH1F("emEneLeadJetEta2_1","EM Energy Lead Jet Eta2 1",100,0,1500);
  emEneLeadJetEta3_1 = TH1F("emEneLeadJetEta3_1","EM Energy Lead Jet Eta3 1",100,0,1500);

  totEneLeadJetEta1_2 = TH1F("totEneLeadJetEta1_2","Total Energy Lead Jet Eta1 2",100,0,6000);
  totEneLeadJetEta2_2 = TH1F("totEneLeadJetEta2_2","Total Energy Lead Jet Eta2 2",100,0,6000);
  totEneLeadJetEta3_2 = TH1F("totEneLeadJetEta3_2","Total Energy Lead Jet Eta3 2",100,0,6000);
  hadEneLeadJetEta1_2 = TH1F("hadEneLeadJetEta1_2","Hadronic Energy Lead Jet Eta1 2",100,0,6000);
  hadEneLeadJetEta2_2 = TH1F("hadEneLeadJetEta2_2","Hadronic Energy Lead Jet Eta2 2",100,0,6000);
  hadEneLeadJetEta3_2 = TH1F("hadEneLeadJetEta3_2","Hadronic Energy Lead Jet Eta3 2",100,0,6000);
  emEneLeadJetEta1_2 = TH1F("emEneLeadJetEta1_2","EM Energy Lead Jet Eta1 2",100,0,5000);
  emEneLeadJetEta2_2 = TH1F("emEneLeadJetEta2_2","EM Energy Lead Jet Eta2 2",100,0,5000);
  emEneLeadJetEta3_2 = TH1F("emEneLeadJetEta3_2","EM Energy Lead Jet Eta3 2",100,0,5000);

  hadEneLeadJet1 = TH1F("hadEneLeadJet1","Hadronic Energy Lead Jet 1",100,0,3000);
  hadEneLeadJet12 = TH1F("hadEneLeadJet12","Hadronic Energy Lead Jet 1 2",100,0,4000);
  hadEneLeadJet13 = TH1F("hadEneLeadJet13","Hadronic Energy Lead Jet 1 3",100,0,6000);
  hadEneLeadJet2 = TH1F("hadEneLeadJet2","Hadronic Energy Lead Jet 2",100,0,3000);
  hadEneLeadJet22 = TH1F("hadEneLeadJet22","Hadronic Energy Lead Jet 2 2",100,0,4000);
  hadEneLeadJet23 = TH1F("hadEneLeadJet23","Hadronic Energy Lead Jet 2 3",100,0,6000);
  hadEneLeadJet3 = TH1F("hadEneLeadJet3","Hadronic Energy Lead Jet 3",100,0,3000);
  hadEneLeadJet32 = TH1F("hadEneLeadJet32","Hadronic Energy Lead Jet 3 2",100,0,4000);
  hadEneLeadJet33 = TH1F("hadEneLeadJet33","Hadronic Energy Lead Jet 3 3",100,0,6000);

  emEneLeadJet1 = TH1F("emEneLeadJet1","EM Energy Lead Jet 1",100,0,1500);
  emEneLeadJet12 = TH1F("emEneLeadJet12","EM Energy Lead Jet 1 2",100,0,3000);
  emEneLeadJet13 = TH1F("emEneLeadJet13","EM Energy Lead Jet 1 3",100,0,5000);
  emEneLeadJet2 = TH1F("emEneLeadJet2","EM Energy Lead Jet 2",100,0,1500);
  emEneLeadJet22 = TH1F("emEneLeadJet22","EM Energy Lead Jet 2 2",100,0,3000);
  emEneLeadJet23 = TH1F("emEneLeadJet23","EM Energy Lead Jet 2 3",100,0,5000);
  emEneLeadJet3 = TH1F("emEneLeadJet3","EM Energy Lead Jet 3",100,0,1500);
  emEneLeadJet32 = TH1F("emEneLeadJet32","EM Energy Lead Jet 3 2",100,0,3000);
  emEneLeadJet33 = TH1F("emEneLeadJet33","EM Energy Lead Jet 3 3",100,0,5000);

  hadFracEta11 = TH1F("hadFracEta11","Hadronic Fraction Eta1 Jet 1",100,0,1);
  hadFracEta21 = TH1F("hadFracEta21","Hadronic Fraction Eta2 Jet 1",100,0,1);
  hadFracEta31 = TH1F("hadFracEta31","Hadronic Fraction Eta3 Jet 1",100,0,1);

  hadFracEta12 = TH1F("hadFracEta12","Hadronic Fraction Eta1 Jet 2",100,0,1);
  hadFracEta22 = TH1F("hadFracEta22","Hadronic Fraction Eta2 Jet 2",100,0,1);
  hadFracEta32 = TH1F("hadFracEta32","Hadronic Fraction Eta3 Jet 2",100,0,1);

  hadFracEta13 = TH1F("hadFracEta13","Hadronic Fraction Eta1 Jet 3",100,0,1);
  hadFracEta23 = TH1F("hadFracEta23","Hadronic Fraction Eta2 Jet 3",100,0,1);
  hadFracEta33 = TH1F("hadFracEta33","Hadronic Fraction Eta3 Jet 3",100,0,1);

  hadFracLeadJet1 = TH1F("hadFracLeadJet1","Hadronic Fraction Lead Jet 1",100,0,1);
  hadFracLeadJet2 = TH1F("hadFracLeadJet2","Hadronic Fraction Lead Jet 2",100,0,1);
  hadFracLeadJet3 = TH1F("hadFracLeadJet3","Hadronic Fraction Lead Jet 3",100,0,1);

  SumEt1 = TH1F("SumEt1","SumEt 1",100,0,1000);
  SumEt12 = TH1F("SumEt12","SumEt 1 2",100,0,4000);
  SumEt13 = TH1F("SumEt13","SumEt 1 3",100,0,15000);

  MET1   = TH1F("MET1",  "MET 1",100,0,200);
  MET12   = TH1F("MET12",  "MET 1 2",100,0,1000);
  MET13   = TH1F("MET13",  "MET 1 3",100,0,3000);

  nTowersLeadJet1  = TH1F("nTowersLeadJet1","Number of Towers Lead Jet 1",100,0,100);
  nTowersLeadJet2  = TH1F("nTowersLeadJet2","Number of Towers Lead Jet 2",100,0,100);
  nTowersLeadJet3  = TH1F("nTowersLeadJet3","Number of Towers Lead Jet 3",100,0,100);

  nTowersSecondJet1  = TH1F("nTowersSecondJet1","Number of Towers Second Jet 1",100,0,100);
  nTowersSecondJet2  = TH1F("nTowersSecondJet2","Number of Towers Second Jet 2",100,0,100);
  nTowersSecondJet3  = TH1F("nTowersSecondJet3","Number of Towers Second Jet 3",100,0,100);

  hf_PtResponse1   = TProfile("PtResponse1","Pt Response 1", 100, -5, 5, 0, 10);
  hf_PtResponse2   = TProfile("PtResponse2","Pt Response 2", 100, -5, 5, 0, 10);
  hf_PtResponse3   = TProfile("PtResponse3","Pt Response 3", 100, -5, 5, 0, 10);
  hf_PtResponse4   = TProfile("PtResponse4","Pt Response 4", 100, -5, 5, 0, 10);

  hf_TowerDelR1   = TProfile("hf_TowerDelR1","Tower Del R 1", 100, 0, 2, 0, 10);
  hf_TowerDelR12   = TProfile("hf_TowerDelR12","Tower Del R 1", 80, 0, 0.8, 0, 10);
  hf_TowerDelR2   = TProfile("hf_TowerDelR2","Tower Del R 2", 100, 0, 2, 0, 10);
  hf_TowerDelR22   = TProfile("hf_TowerDelR22","Tower Del R 2", 80, 0, 0.8, 0, 10);
  hf_TowerDelR3   = TProfile("hf_TowerDelR3","Tower Del R 3", 100, 0, 2, 0, 10);
  hf_TowerDelR32   = TProfile("hf_TowerDelR32","Tower Del R 3", 80, 0, 0.8, 0, 10);

  hf_sumTowerAllEx = TH1F("sumTowerAllEx","Tower Ex",100,-1000,1000);
  hf_sumTowerAllEy = TH1F("sumTowerAllEy","Tower Ey",100,-1000,1000);

  hf_TowerJetEt1  = TH1F("TowerJetEt1","Tower/Jet Et 1",50,0,1);

  nTowers1  = TH1F("nTowers1","Number of Towers pt 0.5",100,0,500);
  nTowers2  = TH1F("nTowers2","Number of Towers pt 1.0",100,0,500);
  nTowers3  = TH1F("nTowers3","Number of Towers pt 1.5",100,0,500);
  nTowers4  = TH1F("nTowers4","Number of Towers pt 2.0",100,0,500);

  nTowersLeadJetPt1  = TH1F("nTowersLeadJetPt1","Number of Towers in Lead Jet pt 0.5",100,0,200);
  nTowersLeadJetPt2  = TH1F("nTowersLeadJetPt2","Number of Towers in Lead Jet pt 1.0",100,0,200);
  nTowersLeadJetPt3  = TH1F("nTowersLeadJetPt3","Number of Towers in Lead Jet pt 1.5",100,0,200);
  nTowersLeadJetPt4  = TH1F("nTowersLeadJetPt4","Number of Towers in Lead Jet pt 2.0",100,0,200);

  TowerEtLeadJet1 = TH1F("TowerEtLeadJet1","Towers Et Lead Jet 1",100,0,2000);
  TowerEtLeadJet12 = TH1F("TowerEtLeadJet12","Towers Et Lead Jet 1 2",100,0,6000);
  TowerEtLeadJet13 = TH1F("TowerEtLeadJet13","Towers Et Lead Jet 1 3",100,0,300);
  TowerEtLeadJet2 = TH1F("TowerEtLeadJet2","Towers Et Lead Jet 2",100,0,2000);
  TowerEtLeadJet22 = TH1F("TowerEtLeadJet22","Towers Et Lead Jet 2 2",100,0,6000);
  TowerEtLeadJet23 = TH1F("TowerEtLeadJet23","Towers Et Lead Jet 2 3",100,0,300);
  TowerEtLeadJet3 = TH1F("TowerEtLeadJet3","Towers Et Lead Jet 3",100,0,2000);
  TowerEtLeadJet32 = TH1F("TowerEtLeadJet32","Towers Et Lead Jet 3 2",100,0,6000);
  TowerEtLeadJet33 = TH1F("TowerEtLeadJet33","Towers Et Lead Jet 3 3",100,0,300);

  hf_nJet1 = TProfile("hf_nJet1", "Num Jets 1", 100, 0, 5000, 0, 50);
  hf_nJet2 = TProfile("hf_nJet2", "Num Jets 2", 100, 0, 5000, 0, 50);
  hf_nJet3 = TProfile("hf_nJet3", "Num Jets 3", 100, 0, 5000, 0, 50);
  hf_nJet4 = TProfile("hf_nJet4", "Num Jets 4", 100, 0, 5000, 0, 50);

  hf_nJet1s = TProfile("hf_nJet1s", "Num Jets 1", 100, 0, 200, 0, 50);
  hf_nJet2s = TProfile("hf_nJet2s", "Num Jets 2", 100, 0, 200, 0, 50);
  hf_nJet3s = TProfile("hf_nJet3s", "Num Jets 3", 100, 0, 200, 0, 50);
  hf_nJet4s = TProfile("hf_nJet4s", "Num Jets 4", 100, 0, 200, 0, 50);

  hf_nJet11 = TProfile("hf_nJet11", "Num Jets 1 1", 100, 0, 3000, 0, 50);
  hf_nJet21 = TProfile("hf_nJet21", "Num Jets 2 1", 100, 0, 3000, 0, 50);
  hf_nJet31 = TProfile("hf_nJet31", "Num Jets 3 1", 100, 0, 3000, 0, 50);
  hf_nJet41 = TProfile("hf_nJet41", "Num Jets 4 1", 100, 0, 3000, 0, 50);

  dRPar1   = TH1F("dRPar1","Parton dR with matched CaloJet1",100,0,0.5);
  dPhiPar1 = TH1F("dPhiPar1","Parton dPhi with matched CaloJet1",200,-0.5,0.5);
  dEtaPar1 = TH1F("dEtaPar1","Parton dEta with matched CaloJet1",200,-0.5,0.5);
  dPtPar1  = TH1F("dPtPar1","Parton dPt with matched CaloJet1",200,-50,50);

  dRPar2   = TH1F("dRPar2","Parton dR with matched CaloJet2",100,0,0.5);
  dPhiPar2 = TH1F("dPhiPar2","Parton dPhi with matched CaloJet2",200,-0.5,0.5);
  dEtaPar2 = TH1F("dEtaPar2","Parton dEta with matched CaloJet2",200,-0.5,0.5);
  dPtPar2  = TH1F("dPtPar2","Parton dPt with matched CaloJet2",200,-50,50);

  dRPar3   = TH1F("dRPar3","Parton dR with matched CaloJet3",100,0,0.5);
  dPhiPar3 = TH1F("dPhiPar3","Parton dPhi with matched CaloJet3",200,-0.5,0.5);
  dEtaPar3 = TH1F("dEtaPar3","Parton dEta with matched CaloJet3",200,-0.5,0.5);
  dPtPar3  = TH1F("dPtPar3","Parton dPt with matched CaloJet3",200,-50,50);

  dRPar4   = TH1F("dRPar4","Parton dR with matched CaloJet4",100,0,0.5);
  dPhiPar4 = TH1F("dPhiPar4","Parton dPhi with matched CaloJet4",200,-0.5,0.5);
  dEtaPar4 = TH1F("dEtaPar4","Parton dEta with matched CaloJet4",200,-0.5,0.5);
  dPtPar4  = TH1F("dPtPar4","Parton dPt with matched CaloJet4",200,-50,50);

  dRParton    = TH1F("dRParton","dR Parton",100,0,10.0);
  dRPartonMin = TH1F("dRPartonMin","Min dR Parton",100,0,2.0);

  dR1   = TH1F("dR1","GenJets dR with matched CaloJet",100,0,0.5);
  dPhi1 = TH1F("dPhi1","GenJets dPhi with matched CaloJet",200,-0.5,0.5);
  dEta1 = TH1F("dEta1","GenJets dEta with matched CaloJet",200,-0.5,0.5);
  dPt1  = TH1F("dPt1","GenJets dPt with matched CaloJet",200,-100,100);
  dPtFrac1  = TH1F("dPtFrac1","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt20Frac1   = TH1F("dPt20Frac1","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt40Frac1   = TH1F("dPt40Frac1","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt80Frac1   = TH1F("dPt80Frac1","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt100Frac1  = TH1F("dPt100Frac1","GenJets dPt frac with matched CaloJet",100,-1,1);

  dR2   = TH1F("dR2","GenJets dR with matched CaloJet",100,0,0.5);
  dPhi2 = TH1F("dPhi2","GenJets dPhi with matched CaloJet",200,-0.5,0.5);
  dEta2 = TH1F("dEta2","GenJets dEta with matched CaloJet",200,-0.5,0.5);
  dPt2  = TH1F("dPt2","GenJets dPt with matched CaloJet",200,-100,100);
  dPtFrac2  = TH1F("dPtFrac2","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt20Frac2   = TH1F("dPt20Frac2","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt40Frac2   = TH1F("dPt40Frac2","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt80Frac2   = TH1F("dPt80Frac2","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt100Frac2  = TH1F("dPt100Frac2","GenJets dPt frac with matched CaloJet",100,-1,1);

  dR3   = TH1F("dR3","GenJets dR with matched CaloJet",100,0,0.5);
  dPhi3 = TH1F("dPhi3","GenJets dPhi with matched CaloJet",200,-0.5,0.5);
  dEta3 = TH1F("dEta3","GenJets dEta with matched CaloJet",200,-0.5,0.5);
  dPt3  = TH1F("dPt3","GenJets dPt with matched CaloJet",200,-100,100);
  dPtFrac3  = TH1F("dPtFrac3","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt20Frac3   = TH1F("dPt20Frac3","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt40Frac3   = TH1F("dPt40Frac3","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt80Frac3   = TH1F("dPt80Frac3","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt100Frac3  = TH1F("dPt100Frac3","GenJets dPt frac with matched CaloJet",100,-1,1);

  dR4   = TH1F("dR4","GenJets dR with matched CaloJet",100,0,0.5);
  dPhi4 = TH1F("dPhi4","GenJets dPhi with matched CaloJet",200,-0.5,0.5);
  dEta4 = TH1F("dEta4","GenJets dEta with matched CaloJet",200,-0.5,0.5);
  dPt4  = TH1F("dPt4","GenJets dPt with matched CaloJet",200,-100,100);
  dPtFrac4  = TH1F("dPtFrac4","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt20Frac4   = TH1F("dPt20Frac4","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt40Frac4   = TH1F("dPt40Frac4","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt80Frac4   = TH1F("dPt80Frac4","GenJets dPt frac with matched CaloJet",100,-1,1);
  dPt100Frac4  = TH1F("dPt100Frac4","GenJets dPt frac with matched CaloJet",100,-1,1);

  dR12   = TH1F("dR12","dR MidPoint - SISCone",100,0,0.5);
  dPhi12 = TH1F("dPhi12","dPhi MidPoint - SISCone",200,-0.5,0.5);
  dEta12 = TH1F("dEta12","dEta MidPoint - SISCone",200,-0.5,0.5);
  dPt12  = TH1F("dPt12","dPt MidPoint - SISCone",200,-100,100);



  h_nCalJets1 =  TH1F( "nCalJets1",  "Number of CalJets1", 20, 0, 20 );
  h_nCalJets2 =  TH1F( "nCalJets2",  "Number of CalJets2", 20, 0, 20 );
  h_nCalJets3 =  TH1F( "nCalJets3",  "Number of CalJets3", 20, 0, 20 );
  h_nCalJets4 =  TH1F( "nCalJets4",  "Number of CalJets4", 20, 0, 20 );

  h_lowPtCal11 =  TH1F( "lowPtCal11",  "Low p_{T} of CalJet1 Eta1", 100, 0, 100 );
  h_lowPtCal21 =  TH1F( "lowPtCal21",  "Low p_{T} of CalJet2 Eta1", 100, 0, 100 );
  h_lowPtCal31 =  TH1F( "lowPtCal31",  "Low p_{T} of CalJet3 Eta1", 100, 0, 100 );
  h_lowPtCal41 =  TH1F( "lowPtCal41",  "Low p_{T} of CalJet4 Eta1", 100, 0, 100 );

  h_lowPtCal12 =  TH1F( "lowPtCal12",  "Low p_{T} of CalJet1 Eta2", 100, 0, 100 );
  h_lowPtCal22 =  TH1F( "lowPtCal22",  "Low p_{T} of CalJet2 Eta2", 100, 0, 100 );
  h_lowPtCal32 =  TH1F( "lowPtCal32",  "Low p_{T} of CalJet3 Eta2", 100, 0, 100 );
  h_lowPtCal42 =  TH1F( "lowPtCal42",  "Low p_{T} of CalJet4 Eta2", 100, 0, 100 );

  h_lowPtCal13 =  TH1F( "lowPtCal13",  "Low p_{T} of CalJet1 Eta3", 100, 0, 100 );
  h_lowPtCal23 =  TH1F( "lowPtCal23",  "Low p_{T} of CalJet2 Eta3", 100, 0, 100 );
  h_lowPtCal33 =  TH1F( "lowPtCal33",  "Low p_{T} of CalJet3 Eta3", 100, 0, 100 );
  h_lowPtCal43 =  TH1F( "lowPtCal43",  "Low p_{T} of CalJet4 Eta3", 100, 0, 100 );

  h_lowPtCal1c11 =  TH1F( "lowPtCal1c11",  "Low p_{T} of CalJet1 c1 Eta1", 100, 0, 100 );
  h_lowPtCal2c11 =  TH1F( "lowPtCal2c11",  "Low p_{T} of CalJet2 c1 Eta1", 100, 0, 100 );
  h_lowPtCal3c11 =  TH1F( "lowPtCal3c11",  "Low p_{T} of CalJet3 c1 Eta1", 100, 0, 100 );
  h_lowPtCal4c11 =  TH1F( "lowPtCal4c11",  "Low p_{T} of CalJet4 c1 Eta1", 100, 0, 100 );

  h_lowPtCal1c12 =  TH1F( "lowPtCal1c12",  "Low p_{T} of CalJet1 c1 Eta2", 100, 0, 100 );
  h_lowPtCal2c12 =  TH1F( "lowPtCal2c12",  "Low p_{T} of CalJet2 c1 Eta2", 100, 0, 100 );
  h_lowPtCal3c12 =  TH1F( "lowPtCal3c12",  "Low p_{T} of CalJet3 c1 Eta2", 100, 0, 100 );
  h_lowPtCal4c12 =  TH1F( "lowPtCal4c12",  "Low p_{T} of CalJet4 c1 Eta2", 100, 0, 100 );

  h_lowPtCal1c13 =  TH1F( "lowPtCal1c13",  "Low p_{T} of CalJet1 c1 Eta3", 100, 0, 100 );
  h_lowPtCal2c13 =  TH1F( "lowPtCal2c13",  "Low p_{T} of CalJet2 c1 Eta3", 100, 0, 100 );
  h_lowPtCal3c13 =  TH1F( "lowPtCal3c13",  "Low p_{T} of CalJet3 c1 Eta3", 100, 0, 100 );
  h_lowPtCal4c13 =  TH1F( "lowPtCal4c13",  "Low p_{T} of CalJet4 c1 Eta3", 100, 0, 100 );


  matchedAllPt11 =  TH1F( "matchedAllPt11",  "p_{T} of CalJet1 Eta1", 50, 0, 250 );
  matchedAllPt12 =  TH1F( "matchedAllPt12",  "p_{T} of CalJet1 Eta2", 50, 0, 250 );
  matchedAllPt13 =  TH1F( "matchedAllPt13",  "p_{T} of CalJet1 Eta3", 50, 0, 250 );
  matchedPt11    =  TH1F( "matchedPt11",  "p_{T} of CalJet1 Eta1", 50, 0, 250 );
  matchedPt12    =  TH1F( "matchedPt12",  "p_{T} of CalJet1 Eta2", 50, 0, 250 );
  matchedPt13    =  TH1F( "matchedPt13",  "p_{T} of CalJet1 Eta3", 50, 0, 250 );

  matchedAllPt21 =  TH1F( "matchedAllPt21",  "p_{T} of CalJet2 Eta1", 50, 0, 250 );
  matchedAllPt22 =  TH1F( "matchedAllPt22",  "p_{T} of CalJet2 Eta2", 50, 0, 250 );
  matchedAllPt23 =  TH1F( "matchedAllPt23",  "p_{T} of CalJet2 Eta3", 50, 0, 250 );
  matchedPt21    =  TH1F( "matchedPt21",  "p_{T} of CalJet2 Eta1", 50, 0, 250 );
  matchedPt22    =  TH1F( "matchedPt22",  "p_{T} of CalJet2 Eta2", 50, 0, 250 );
  matchedPt23    =  TH1F( "matchedPt23",  "p_{T} of CalJet2 Eta3", 50, 0, 250 );

  matchedAllPt31 =  TH1F( "matchedAllPt31",  "p_{T} of CalJet3 Eta1", 50, 0, 250 );
  matchedAllPt32 =  TH1F( "matchedAllPt32",  "p_{T} of CalJet3 Eta2", 50, 0, 250 );
  matchedAllPt33 =  TH1F( "matchedAllPt33",  "p_{T} of CalJet3 Eta3", 50, 0, 250 );
  matchedPt31    =  TH1F( "matchedPt31",  "p_{T} of CalJet3 Eta1", 50, 0, 250 );
  matchedPt32    =  TH1F( "matchedPt32",  "p_{T} of CalJet3 Eta2", 50, 0, 250 );
  matchedPt33    =  TH1F( "matchedPt33",  "p_{T} of CalJet3 Eta3", 50, 0, 250 );

  matchedAllPt41 =  TH1F( "matchedAllPt41",  "p_{T} of CalJet4 Eta1", 50, 0, 250 );
  matchedAllPt42 =  TH1F( "matchedAllPt42",  "p_{T} of CalJet4 Eta2", 50, 0, 250 );
  matchedAllPt43 =  TH1F( "matchedAllPt43",  "p_{T} of CalJet4 Eta3", 50, 0, 250 );
  matchedPt41    =  TH1F( "matchedPt41",  "p_{T} of CalJet4 Eta1", 50, 0, 250 );
  matchedPt42    =  TH1F( "matchedPt42",  "p_{T} of CalJet4 Eta2", 50, 0, 250 );
  matchedPt43    =  TH1F( "matchedPt43",  "p_{T} of CalJet4 Eta3", 50, 0, 250 );



  h_ptCal1 =  TH1F( "ptCal1",  "p_{T} of CalJet1", 50, 0, 1000 );
  h_ptCal12 =  TH1F( "ptCal12",  "p_{T} of CalJet1 2", 50, 0, 6000 );
  h_ptCal13 =  TH1F( "ptCal13",  "p_{T} of CalJet1 2", 50, 0, 300 );

  h_ptCal2 =  TH1F( "ptCal2",  "p_{T} of CalJet2", 50, 0, 1000 );
  h_ptCal22 =  TH1F( "ptCal22",  "p_{T} of CalJet2 2", 50, 0, 6000 );
  h_ptCal23 =  TH1F( "ptCal23",  "p_{T} of CalJet2 2", 50, 0, 300 );

  h_ptCal3 =  TH1F( "ptCal3",  "p_{T} of CalJet3", 50, 0, 1000 );
  h_ptCal32 =  TH1F( "ptCal32",  "p_{T} of CalJet3 2", 50, 0, 6000 );
  h_ptCal33 =  TH1F( "ptCal33",  "p_{T} of CalJet3 2", 50, 0, 300 );

  h_ptCal4 =  TH1F( "ptCal4",  "p_{T} of CalJet4", 50, 0, 1000 );
  h_ptCal42 =  TH1F( "ptCal42",  "p_{T} of CalJet4 2", 50, 0, 6000 );
  h_ptCal43 =  TH1F( "ptCal43",  "p_{T} of CalJet4 2", 50, 0, 300 );

  h_etaCal1 = TH1F( "etaCal1", "#eta of  CalJet1", 100, -4, 4 );
  h_etaCal2 = TH1F( "etaCal2", "#eta of  CalJet2", 100, -4, 4 );
  h_etaCal3 = TH1F( "etaCal3", "#eta of  CalJet3", 100, -4, 4 );
  h_etaCal4 = TH1F( "etaCal4", "#eta of  CalJet4", 100, -4, 4 );

  h_phiCal1 = TH1F( "phiCal1", "#phi of  CalJet1", 50, -M_PI, M_PI );
  h_phiCal2 = TH1F( "phiCal2", "#phi of  CalJet2", 50, -M_PI, M_PI );
  h_phiCal3 = TH1F( "phiCal3", "#phi of  CalJet3", 50, -M_PI, M_PI );
  h_phiCal4 = TH1F( "phiCal4", "#phi of  CalJet4", 50, -M_PI, M_PI );

  h_ptCalL1 =  TH1F( "ptCalL1",  "p_{T} of CalJetL1", 50, 0, 300 );
  h_ptCalL12 =  TH1F( "ptCalL12",  "p_{T} of CalJetL1 2", 50, 0, 1200 );
  h_ptCalL13 =  TH1F( "ptCalL13",  "p_{T} of CalJetL1 3", 50, 0, 6000 );
  h_ptCalL2 =  TH1F( "ptCalL2",  "p_{T} of CalJetL2", 50, 0, 300 );
  h_ptCalL22 =  TH1F( "ptCalL22",  "p_{T} of CalJetL2 2", 50, 0, 1200 );
  h_ptCalL23 =  TH1F( "ptCalL23",  "p_{T} of CalJetL2 3", 50, 0, 6000 );
  h_ptCalL3 =  TH1F( "ptCalL3",  "p_{T} of CalJetL3", 50, 0, 300 );
  h_ptCalL32 =  TH1F( "ptCalL32",  "p_{T} of CalJetL3 2", 50, 0, 1200 );
  h_ptCalL33 =  TH1F( "ptCalL33",  "p_{T} of CalJetL3 3", 50, 0, 6000 );
  h_ptCalL4 =  TH1F( "ptCalL4",  "p_{T} of CalJetL4", 50, 0, 300 );
  h_ptCalL42 =  TH1F( "ptCalL42",  "p_{T} of CalJetL4 2", 50, 0, 1200 );
  h_ptCalL43 =  TH1F( "ptCalL43",  "p_{T} of CalJetL4 3", 50, 0, 6000 );


  h_etaCalL1 = TH1F( "etaCalL1", "#eta of  CalJetL1", 100, -4, 4 );
  h_etaCalL2 = TH1F( "etaCalL2", "#eta of  CalJetL2", 100, -4, 4 );
  h_etaCalL3 = TH1F( "etaCalL3", "#eta of  CalJetL3", 100, -4, 4 );
  h_etaCalL4 = TH1F( "etaCalL4", "#eta of  CalJetL4", 100, -4, 4 );
  h_phiCalL1 = TH1F( "phiCalL1", "#phi of  CalJetL1", 50, -M_PI, M_PI );
  h_phiCalL2 = TH1F( "phiCalL2", "#phi of  CalJetL2", 50, -M_PI, M_PI );
  h_phiCalL3 = TH1F( "phiCalL3", "#phi of  CalJetL3", 50, -M_PI, M_PI );
  h_phiCalL4 = TH1F( "phiCalL4", "#phi of  CalJetL4", 50, -M_PI, M_PI );

  h_nGenJets1 =  TH1F( "nGenJets1",  "Number of GenJets1", 20, 0, 20 );
  h_nGenJets2 =  TH1F( "nGenJets2",  "Number of GenJets2", 20, 0, 20 );
  h_nGenJets3 =  TH1F( "nGenJets3",  "Number of GenJets3", 20, 0, 20 );
  h_nGenJets4 =  TH1F( "nGenJets4",  "Number of GenJets4", 20, 0, 20 );

  h_ptGen1 =  TH1F( "ptGen1",  "p_{T} of GenJet1", 50, 0, 1000 );
  h_ptGen12 =  TH1F( "ptGen12",  "p_{T} of GenJet1 2", 50, 0, 6000 );
  h_ptGen13 =  TH1F( "ptGen13",  "p_{T} of GenJet1 3", 50, 0, 300 );

  h_ptGen2 =  TH1F( "ptGen2",  "p_{T} of GenJet2", 50, 0, 1000 );
  h_ptGen22 =  TH1F( "ptGen22",  "p_{T} of GenJet2 2", 50, 0, 6000 );
  h_ptGen23 =  TH1F( "ptGen23",  "p_{T} of GenJet2 3", 50, 0, 300 );

  h_ptGen3 =  TH1F( "ptGen3",  "p_{T} of GenJet3", 50, 0, 1000 );
  h_ptGen32 =  TH1F( "ptGen32",  "p_{T} of GenJet3 2", 50, 0, 6000 );
  h_ptGen33 =  TH1F( "ptGen33",  "p_{T} of GenJet3 3", 50, 0, 300 );

  h_ptGen4 =  TH1F( "ptGen4",  "p_{T} of GenJet4", 50, 0, 1000 );
  h_ptGen42 =  TH1F( "ptGen42",  "p_{T} of GenJet4 2", 50, 0, 6000 );
  h_ptGen43 =  TH1F( "ptGen43",  "p_{T} of GenJet4 3", 50, 0, 300 );


  h_etaGen1 = TH1F( "etaGen1", "#eta of GenJet1", 100, -4, 4 );
  h_etaGen2 = TH1F( "etaGen2", "#eta of GenJet2", 100, -4, 4 );
  h_etaGen3 = TH1F( "etaGen3", "#eta of GenJet3", 100, -4, 4 );
  h_phiGen1 = TH1F( "phiGen1", "#phi of GenJet1", 50, -M_PI, M_PI );
  h_phiGen2 = TH1F( "phiGen2", "#phi of GenJet2", 50, -M_PI, M_PI );
  h_phiGen3 = TH1F( "phiGen3", "#phi of GenJet3", 50, -M_PI, M_PI );

  h_ptGenL1 =  TH1F( "ptGenL1",  "p_{T} of GenJetL1", 50, 0, 300 );
  h_ptGenL12 =  TH1F( "ptGenL12",  "p_{T} of GenJetL1 2", 50, 0, 1200 );
  h_ptGenL13 =  TH1F( "ptGenL13",  "p_{T} of GenJetL1 3", 50, 0, 6000 );
  h_ptGenL2 =  TH1F( "ptGenL2",  "p_{T} of GenJetL2", 50, 0, 300 );
  h_ptGenL22 =  TH1F( "ptGenL22",  "p_{T} of GenJetL2 2", 50, 0, 1200 );
  h_ptGenL23 =  TH1F( "ptGenL23",  "p_{T} of GenJetL2 3", 50, 0, 6000 );
  h_ptGenL3 =  TH1F( "ptGenL3",  "p_{T} of GenJetL3", 50, 0, 300 );
  h_ptGenL32 =  TH1F( "ptGenL32",  "p_{T} of GenJetL32", 50, 0, 1200 );
  h_ptGenL33 =  TH1F( "ptGenL33",  "p_{T} of GenJetL33", 50, 0, 6000 );


  h_etaGenL1 = TH1F( "etaGenL1", "#eta of GenJetL1", 100, -4, 4 );
  h_etaGenL2 = TH1F( "etaGenL2", "#eta of GenJetL2", 100, -4, 4 );
  h_etaGenL3 = TH1F( "etaGenL3", "#eta of GenJetL3", 100, -4, 4 );
  h_phiGenL1 = TH1F( "phiGenL1", "#phi of GenJetL1", 50, -M_PI, M_PI );
  h_phiGenL2 = TH1F( "phiGenL2", "#phi of GenJetL2", 50, -M_PI, M_PI );
  h_phiGenL3 = TH1F( "phiGenL3", "#phi of GenJetL3", 50, -M_PI, M_PI );

  h_jetEt1 = TH1F( "jetEt1", "Total Jet Et", 100, 0, 3000 );
  h_jetEt2 = TH1F( "jetEt2", "Total Jet Et", 100, 0, 3000 );
  h_jetEt3 = TH1F( "jetEt3", "Total Jet Et", 100, 0, 3000 );

  h_jet1Pt1 = TH1F( "jet1Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet2Pt1 = TH1F( "jet2Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet3Pt1 = TH1F( "jet3Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet4Pt1 = TH1F( "jet4Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet5Pt1 = TH1F( "jet5Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet6Pt1 = TH1F( "jet6Pt1", "Jet Pt", 100, 0, 3000 );
  h_jet7Pt1 = TH1F( "jet7Pt1", "Jet Pt", 100, 0, 3000 );

  h_jet1Pt2 = TH1F( "jet1Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet2Pt2 = TH1F( "jet2Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet3Pt2 = TH1F( "jet3Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet4Pt2 = TH1F( "jet4Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet5Pt2 = TH1F( "jet5Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet6Pt2 = TH1F( "jet6Pt2", "Jet Pt", 100, 0, 3000 );
  h_jet7Pt2 = TH1F( "jet7Pt2", "Jet Pt", 100, 0, 3000 );

  h_jet1Pt3 = TH1F( "jet1Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet2Pt3 = TH1F( "jet2Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet3Pt3 = TH1F( "jet3Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet4Pt3 = TH1F( "jet4Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet5Pt3 = TH1F( "jet5Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet6Pt3 = TH1F( "jet6Pt3", "Jet Pt", 100, 0, 3000 );
  h_jet7Pt3 = TH1F( "jet7Pt3", "Jet Pt", 100, 0, 3000 );

  h_jet1Pt4 = TH1F( "jet1Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet2Pt4 = TH1F( "jet2Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet3Pt4 = TH1F( "jet3Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet4Pt4 = TH1F( "jet4Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet5Pt4 = TH1F( "jet5Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet6Pt4 = TH1F( "jet6Pt4", "Jet Pt", 100, 0, 3000 );
  h_jet7Pt4 = TH1F( "jet7Pt4", "Jet Pt", 100, 0, 3000 );


  h_totMissEt1 = TH1F( "totMissEt1", "Total Unclustered Et", 100, 0, 500 );
  h_totMissEt2 = TH1F( "totMissEt2", "Total Unclustered Et", 100, 0, 500 );
  h_totMissEt3 = TH1F( "totMissEt3", "Total Unclustered Et", 100, 0, 500 );

  h_missEt1 = TH1F( "missEt1", "Unclustered Et", 100, 0, 50 );
  h_missEt2 = TH1F( "missEt2", "Unclustered Et", 100, 0, 50 );
  h_missEt3 = TH1F( "missEt3", "Unclustered Et", 100, 0, 50 );

  h_missEt1s = TH1F( "missEt1s", "Unclustered Et", 100, 0, 2 );
  h_missEt2s = TH1F( "missEt2s", "Unclustered Et", 100, 0, 2 );
  h_missEt3s = TH1F( "missEt3s", "Unclustered Et", 100, 0, 2 );

  ParMatch1 = TH1F( "ParMatch1", "Number of Matched Jets 1", 10, 0, 10 );
  ParMatch2 = TH1F( "ParMatch2", "Number of Matched Jets 2", 10, 0, 10 );
  ParMatch3 = TH1F( "ParMatch3", "Number of Matched Jets 3", 10, 0, 10 );

}
void myFastSimVal::endJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 3058 of file myFastSimVal.cc.

References m_file.

                          {

  //Write out the histogram file.
  m_file->Write(); 

}

Member Data Documentation

std::string myFastSimVal::CaloJetAlgorithm1 [private]

Definition at line 24 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::CaloJetAlgorithm2 [private]

Definition at line 24 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::CaloJetAlgorithm3 [private]

Definition at line 24 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::CaloJetAlgorithm4 [private]

Definition at line 24 of file myFastSimVal.h.

Referenced by analyze().

TH1F myFastSimVal::dEta1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEta12 [private]

Definition at line 136 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEta2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEta3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEta4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEtaPar1 [private]

Definition at line 126 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEtaPar2 [private]

Definition at line 127 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEtaPar3 [private]

Definition at line 128 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dEtaPar4 [private]

Definition at line 129 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::dijetMass1 [private]

Definition at line 108 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 111 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 112 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 113 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass12 [private]

Definition at line 109 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass13 [private]

Definition at line 110 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 111 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 112 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 113 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass2 [private]

Definition at line 108 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass22 [private]

Definition at line 109 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass23 [private]

Definition at line 110 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass3 [private]

Definition at line 108 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass32 [private]

Definition at line 109 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass33 [private]

Definition at line 110 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass4 [private]

Definition at line 108 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 111 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 112 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 113 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass42 [private]

Definition at line 109 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMass43 [private]

Definition at line 110 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 115 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 115 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 115 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 116 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 116 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 116 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 114 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 114 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 114 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 124 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 124 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 124 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 124 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 104 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 105 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 103 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMassP1 [private]

Definition at line 117 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 118 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 118 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMassP2 [private]

Definition at line 117 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dijetMassP3 [private]

Definition at line 117 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 118 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 121 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 121 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 121 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 122 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 122 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 122 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 120 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 120 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 120 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::dPhi1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhi12 [private]

Definition at line 136 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhi2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhi3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhi4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhiPar1 [private]

Definition at line 126 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhiPar2 [private]

Definition at line 127 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhiPar3 [private]

Definition at line 128 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPhiPar4 [private]

Definition at line 129 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::dPt1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt100Frac1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt100Frac2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt100Frac3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt100Frac4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt12 [private]

Definition at line 136 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt20Frac1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt20Frac2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt20Frac3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt20Frac4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt40Frac1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt40Frac2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt40Frac3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt40Frac4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt80Frac1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt80Frac2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt80Frac3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPt80Frac4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtFrac1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtFrac2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtFrac3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtFrac4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtPar1 [private]

Definition at line 126 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtPar2 [private]

Definition at line 127 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtPar3 [private]

Definition at line 128 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dPtPar4 [private]

Definition at line 129 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::dR1 [private]

Definition at line 132 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dR12 [private]

Definition at line 136 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dR2 [private]

Definition at line 133 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dR3 [private]

Definition at line 134 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dR4 [private]

Definition at line 135 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dRPar1 [private]

Definition at line 126 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dRPar2 [private]

Definition at line 127 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dRPar3 [private]

Definition at line 128 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dRPar4 [private]

Definition at line 129 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::dRParton [private]

Definition at line 131 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::dRPartonMin [private]

Definition at line 131 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 64 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 65 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 66 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 64 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 65 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 66 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 64 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 65 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 66 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 47 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 50 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 47 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 50 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 47 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 50 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

std::string myFastSimVal::GenJetAlgorithm1 [private]

Definition at line 26 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::GenJetAlgorithm2 [private]

Definition at line 26 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::GenJetAlgorithm3 [private]

Definition at line 26 of file myFastSimVal.h.

Referenced by analyze().

std::string myFastSimVal::GenJetAlgorithm4 [private]

Definition at line 26 of file myFastSimVal.h.

Referenced by analyze().

TH1F myFastSimVal::h_etaCal1 [private]

Definition at line 140 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCal2 [private]

Definition at line 141 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCal3 [private]

Definition at line 142 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCal4 [private]

Definition at line 143 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCalL1 [private]

Definition at line 147 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCalL2 [private]

Definition at line 148 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCalL3 [private]

Definition at line 149 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaCalL4 [private]

Definition at line 150 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGen1 [private]

Definition at line 154 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGen2 [private]

Definition at line 155 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGen3 [private]

Definition at line 156 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGen4 [private]

Definition at line 157 of file myFastSimVal.h.

TH1F myFastSimVal::h_etaGenL1 [private]

Definition at line 162 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGenL2 [private]

Definition at line 163 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_etaGenL3 [private]

Definition at line 164 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet1Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet1Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet1Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet1Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet2Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet2Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet2Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet2Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet3Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet3Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet3Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet3Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet4Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet4Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet4Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet4Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet5Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet5Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet5Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet5Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet6Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet6Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet6Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet6Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet7Pt1 [private]

Definition at line 181 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet7Pt2 [private]

Definition at line 183 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet7Pt3 [private]

Definition at line 185 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jet7Pt4 [private]

Definition at line 187 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jetEt1 [private]

Definition at line 168 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jetEt2 [private]

Definition at line 168 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_jetEt3 [private]

Definition at line 168 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 173 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 174 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 175 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 177 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 178 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 179 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 173 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 174 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 175 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 177 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 178 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 179 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 173 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 174 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 175 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 177 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 178 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 179 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 173 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 174 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 175 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 177 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 178 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 179 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt1 [private]

Definition at line 170 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt1s [private]

Definition at line 169 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt2 [private]

Definition at line 170 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt2s [private]

Definition at line 169 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt3 [private]

Definition at line 170 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_missEt3s [private]

Definition at line 169 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nCalJets1 [private]

Definition at line 137 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nCalJets2 [private]

Definition at line 137 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nCalJets3 [private]

Definition at line 137 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nCalJets4 [private]

Definition at line 137 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nGenJets1 [private]

Definition at line 138 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nGenJets2 [private]

Definition at line 138 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nGenJets3 [private]

Definition at line 138 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_nGenJets4 [private]

Definition at line 138 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::h_phiCal1 [private]

Definition at line 140 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCal2 [private]

Definition at line 141 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCal3 [private]

Definition at line 142 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCal4 [private]

Definition at line 143 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCalL1 [private]

Definition at line 147 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCalL2 [private]

Definition at line 148 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCalL3 [private]

Definition at line 149 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiCalL4 [private]

Definition at line 150 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGen1 [private]

Definition at line 154 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGen2 [private]

Definition at line 155 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGen3 [private]

Definition at line 156 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGen4 [private]

Definition at line 157 of file myFastSimVal.h.

TH1F myFastSimVal::h_phiGenL1 [private]

Definition at line 162 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGenL2 [private]

Definition at line 163 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_phiGenL3 [private]

Definition at line 164 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal1 [private]

Definition at line 140 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal12 [private]

Definition at line 144 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal13 [private]

Definition at line 145 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal2 [private]

Definition at line 141 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal22 [private]

Definition at line 144 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal23 [private]

Definition at line 145 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal3 [private]

Definition at line 142 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal32 [private]

Definition at line 144 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal33 [private]

Definition at line 145 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal4 [private]

Definition at line 143 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal42 [private]

Definition at line 144 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCal43 [private]

Definition at line 145 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL1 [private]

Definition at line 147 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL12 [private]

Definition at line 151 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL13 [private]

Definition at line 152 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL2 [private]

Definition at line 148 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL22 [private]

Definition at line 151 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL23 [private]

Definition at line 152 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL3 [private]

Definition at line 149 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL32 [private]

Definition at line 151 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL33 [private]

Definition at line 152 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL4 [private]

Definition at line 150 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL42 [private]

Definition at line 151 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptCalL43 [private]

Definition at line 152 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen1 [private]

Definition at line 154 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen12 [private]

Definition at line 159 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen13 [private]

Definition at line 160 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen2 [private]

Definition at line 155 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen22 [private]

Definition at line 159 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen23 [private]

Definition at line 160 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen3 [private]

Definition at line 156 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen32 [private]

Definition at line 159 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen33 [private]

Definition at line 160 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGen4 [private]

Definition at line 157 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::h_ptGen42 [private]

Definition at line 159 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::h_ptGen43 [private]

Definition at line 160 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::h_ptGenL1 [private]

Definition at line 162 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL12 [private]

Definition at line 165 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL13 [private]

Definition at line 166 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL2 [private]

Definition at line 163 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL22 [private]

Definition at line 165 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL23 [private]

Definition at line 166 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL3 [private]

Definition at line 164 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL32 [private]

Definition at line 165 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::h_ptGenL33 [private]

Definition at line 166 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 171 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 171 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 171 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 61 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 62 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 63 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 61 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 62 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 63 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 61 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 62 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 63 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 46 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 49 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 46 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 49 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 46 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 49 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 67 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 68 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 69 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 67 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 68 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 69 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 67 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 68 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 69 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 70 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 71 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 72 of file myFastSimVal.h.

Referenced by beginJob().

TProfile myFastSimVal::hf_nJet1 [private]

Definition at line 32 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet11 [private]

Definition at line 34 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet1s [private]

Definition at line 33 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet2 [private]

Definition at line 32 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet21 [private]

Definition at line 34 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet2s [private]

Definition at line 33 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet3 [private]

Definition at line 32 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet31 [private]

Definition at line 34 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet3s [private]

Definition at line 33 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet4 [private]

Definition at line 32 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet41 [private]

Definition at line 34 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_nJet4s [private]

Definition at line 33 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_PtResponse1 [private]

Definition at line 35 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_PtResponse2 [private]

Definition at line 35 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_PtResponse3 [private]

Definition at line 35 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_PtResponse4 [private]

Definition at line 35 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 37 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 37 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_TowerDelR1 [private]

Definition at line 30 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_TowerDelR12 [private]

Definition at line 31 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TProfile myFastSimVal::hf_TowerDelR2 [private]

Definition at line 30 of file myFastSimVal.h.

Referenced by beginJob().

TProfile myFastSimVal::hf_TowerDelR22 [private]

Definition at line 31 of file myFastSimVal.h.

Referenced by beginJob().

TProfile myFastSimVal::hf_TowerDelR3 [private]

Definition at line 30 of file myFastSimVal.h.

Referenced by beginJob().

TProfile myFastSimVal::hf_TowerDelR32 [private]

Definition at line 31 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 41 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

std::string myFastSimVal::JetCorrectionService [private]

Definition at line 28 of file myFastSimVal.h.

TFile* myFastSimVal::m_file [private]

Definition at line 193 of file myFastSimVal.h.

Referenced by beginJob(), and endJob().

Definition at line 52 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 52 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 52 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 53 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 53 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 53 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 54 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 54 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 54 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 55 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 55 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 55 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt11 [private]

Definition at line 56 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt12 [private]

Definition at line 56 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt13 [private]

Definition at line 56 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt21 [private]

Definition at line 57 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt22 [private]

Definition at line 57 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt23 [private]

Definition at line 57 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt31 [private]

Definition at line 58 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt32 [private]

Definition at line 58 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt33 [private]

Definition at line 58 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt41 [private]

Definition at line 59 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt42 [private]

Definition at line 59 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::matchedPt43 [private]

Definition at line 59 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::MET1 [private]

Definition at line 38 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::MET12 [private]

Definition at line 39 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::MET13 [private]

Definition at line 40 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::nTowers1 [private]

Definition at line 43 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::nTowers2 [private]

Definition at line 43 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::nTowers3 [private]

Definition at line 43 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::nTowers4 [private]

Definition at line 43 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 70 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 71 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 72 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 44 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 44 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 44 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 44 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 70 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 71 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 72 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::ParMatch1 [private]

Definition at line 190 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ParMatch2 [private]

Definition at line 190 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ParMatch3 [private]

Definition at line 190 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::SumEt1 [private]

Definition at line 38 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::SumEt12 [private]

Definition at line 39 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::SumEt13 [private]

Definition at line 40 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::tbarMass [private]

Definition at line 85 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::tbarMassGen [private]

Definition at line 86 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::tMass [private]

Definition at line 85 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::tMassGen [private]

Definition at line 86 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::topMass1 [private]

Definition at line 83 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::topMass2 [private]

Definition at line 83 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::topMass3 [private]

Definition at line 83 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 83 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 45 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 48 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 45 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 48 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 45 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 48 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 73 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 74 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 75 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 73 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 74 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 75 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 73 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 74 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 75 of file myFastSimVal.h.

Referenced by beginJob().

TH1F myFastSimVal::ZpMass [private]

Definition at line 76 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 79 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 79 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 79 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 81 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 81 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 81 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 77 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 77 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 77 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ZpMassGen [private]

Definition at line 76 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ZpMassGen10 [private]

Definition at line 76 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ZpMassGen13 [private]

Definition at line 76 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

TH1F myFastSimVal::ZpMassGen40 [private]

Definition at line 76 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 80 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 80 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 80 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 82 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 82 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 82 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 78 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 78 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 78 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 107 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 107 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 107 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 99 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 99 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 99 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 100 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 100 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 100 of file myFastSimVal.h.

Referenced by beginJob().

Definition at line 101 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 101 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 101 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 87 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 87 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 87 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 88 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 88 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 88 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 89 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 89 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 89 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 96 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 96 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 96 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 97 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 97 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 97 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 98 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 98 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 98 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 90 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 90 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 90 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 91 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 91 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 91 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 92 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 92 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 92 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 93 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 93 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 93 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 94 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 94 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 94 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 95 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 95 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().

Definition at line 95 of file myFastSimVal.h.

Referenced by analyze(), and beginJob().