34 "DijetMassHistos.root");
48 cout <<
"DijetMass: Maximum bin edge for Pt Hists = " << PtHistMax << endl;
55 m_file=
new TFile( histogramFile.c_str(),
"RECREATE" );
60 ptAKunc = TH1F(
"ptAKunc",
"p_{T} of leading Jets (AK)",50,0.0,PtHistMax);
61 etaAKunc = TH1F(
"etaAKunc",
"#eta of leading Jets (AK)",23,-1.0,1.0);
62 phiAKunc = TH1F(
"phiAKunc",
"#phi of leading Jets (AK)",72,-
M_PI,
M_PI);
63 m2jAKunc = TH1F(
"m2jAKunc",
"Dijet Mass of leading Jets (AK)",100,0.0,2*PtHistMax);
67 ptAKcor = TH1F(
"ptAKcor",
"p_{T} of leading Corrected Jets (AK)",50,0.0,PtHistMax);
68 etaAKcor = TH1F(
"etaAKcor",
"#eta of leading Corrected Jets (AK)",23,-1.0,1.0);
69 phiAKcor = TH1F(
"phiAKcor",
"#phi of leading Corrected Jets (AK)",72,-
M_PI,
M_PI);
70 m2jAKcor = TH1F(
"m2jAKcor",
"Dijet Mass of leading Corrected Jets (AK)",100,0.0,2*PtHistMax);
73 ptICunc = TH1F(
"ptICunc",
"p_{T} of leading Jets (IC)",50,0.0,PtHistMax);
74 etaICunc = TH1F(
"etaICunc",
"#eta of leading Jets (IC)",23,-1.0,1.0);
75 phiICunc = TH1F(
"phiICunc",
"#phi of leading Jets (IC)",72,-
M_PI,
M_PI);
76 m2jICunc = TH1F(
"m2jICunc",
"Dijet Mass of leading Jets (IC)",100,0.0,2*PtHistMax);
80 ptICcor = TH1F(
"ptICcor",
"p_{T} of leading Corrected Jets (IC)",50,0.0,PtHistMax);
81 etaICcor = TH1F(
"etaICcor",
"#eta of leading Corrected Jets (IC)",23,-1.0,1.0);
82 phiICcor = TH1F(
"phiICcor",
"#phi of leading Corrected Jets (IC)",72,-
M_PI,
M_PI);
83 m2jICcor = TH1F(
"m2jICcor",
"Dijet Mass of leading Corrected Jets (IC)",100,0.0,2*PtHistMax);
86 ptKTunc = TH1F(
"ptKTunc",
"p_{T} of leading Jets (KT)",50,0.0,PtHistMax);
87 etaKTunc = TH1F(
"etaKTunc",
"#eta of leading Jets (KT)",23,-1.0,1.0);
88 phiKTunc = TH1F(
"phiKTunc",
"#phi of leading Jets (KT)",72,-
M_PI,
M_PI);
89 m2jKTunc = TH1F(
"m2jKTunc",
"Dijet Mass of leading Jets (KT)",100,0.0,2*PtHistMax);
93 ptKTcor = TH1F(
"ptKTcor",
"p_{T} of leading Corrected Jets (KT)",50,0.0,PtHistMax);
94 etaKTcor = TH1F(
"etaKTcor",
"#eta of leading Corrected Jets (KT)",23,-1.0,1.0);
95 phiKTcor = TH1F(
"phiKTcor",
"#phi of leading Corrected Jets (KT)",72,-
M_PI,
M_PI);
96 m2jKTcor = TH1F(
"m2jKTcor",
"Dijet Mass of leading Corrected Jets (KT)",100,0.0,2*PtHistMax);
99 ptSCunc = TH1F(
"ptSCunc",
"p_{T} of leading Jets (SC)",50,0.0,PtHistMax);
100 etaSCunc = TH1F(
"etaSCunc",
"#eta of leading Jets (SC)",23,-1.0,1.0);
101 phiSCunc = TH1F(
"phiSCunc",
"#phi of leading Jets (SC)",72,-
M_PI,
M_PI);
102 m2jSCunc = TH1F(
"m2jSCunc",
"Dijet Mass of leading Jets (SC)",100,0.0,2*PtHistMax);
105 ptSCcor = TH1F(
"ptSCcor",
"p_{T} of leading Corrected Jets (SC)",50,0.0,PtHistMax);
106 etaSCcor = TH1F(
"etaSCcor",
"#eta of leading Corrected Jets (SC)",23,-1.0,1.0);
107 phiSCcor = TH1F(
"phiSCcor",
"#phi of leading Corrected Jets (SC)",72,-
M_PI,
M_PI);
108 m2jSCcor = TH1F(
"m2jSCcor",
"Dijet Mass of leading Corrected Jets (SC)",100,0.0,2*PtHistMax);
124 typename JetCollection::const_iterator i_jet;
129 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++ i_jet ) {
130 p4jet[jetInd] = i_jet->p4();
134 m2jAKunc.Fill( (p4jet[0]+p4jet[1]).mass() );
135 ptAKunc.Fill( p4jet[0].
Pt() ); ptAKunc.Fill( p4jet[1].
Pt() );
136 etaAKunc.Fill( p4jet[0].
eta() ); etaAKunc.Fill( p4jet[1].
eta() );
137 phiAKunc.Fill( p4jet[0].
phi() ); phiAKunc.Fill( p4jet[1].
phi() );
144 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++ i_jet ) {
145 p4jet[jetInd] = i_jet->p4();
149 m2jAKcor.Fill( (p4jet[0]+p4jet[1]).mass() );
150 ptAKcor.Fill( p4jet[0].
Pt() ); ptAKcor.Fill( p4jet[1].
Pt() );
151 etaAKcor.Fill( p4jet[0].
eta() ); etaAKcor.Fill( p4jet[1].
eta() );
152 phiAKcor.Fill( p4jet[0].
phi() ); phiAKcor.Fill( p4jet[1].
phi() );
159 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++ i_jet ) {
160 p4jet[jetInd] = i_jet->p4();
164 m2jICunc.Fill( (p4jet[0]+p4jet[1]).mass() );
165 ptICunc.Fill( p4jet[0].
Pt() ); ptICunc.Fill( p4jet[1].
Pt() );
166 etaICunc.Fill( p4jet[0].
eta() ); etaICunc.Fill( p4jet[1].
eta() );
167 phiICunc.Fill( p4jet[0].
phi() ); phiICunc.Fill( p4jet[1].
phi() );
174 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++ i_jet ) {
175 p4jet[jetInd] = i_jet->p4();
179 m2jICcor.Fill( (p4jet[0]+p4jet[1]).mass() );
180 ptICcor.Fill( p4jet[0].
Pt() ); ptICcor.Fill( p4jet[1].
Pt() );
181 etaICcor.Fill( p4jet[0].
eta() ); etaICcor.Fill( p4jet[1].
eta() );
182 phiICcor.Fill( p4jet[0].
phi() ); phiICcor.Fill( p4jet[1].
phi() );
188 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++ i_jet ) {
189 p4jet[jetInd] = i_jet->p4();
193 m2jKTunc.Fill( (p4jet[0]+p4jet[1]).mass() );
194 ptKTunc.Fill( p4jet[0].
Pt() ); ptKTunc.Fill( p4jet[1].
Pt() );
195 etaKTunc.Fill( p4jet[0].
eta() ); etaKTunc.Fill( p4jet[1].
eta() );
196 phiKTunc.Fill( p4jet[0].
phi() ); phiKTunc.Fill( p4jet[1].
phi() );
203 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++i_jet ) {
204 p4jet[jetInd] = i_jet->p4();
208 m2jKTcor.Fill( (p4jet[0]+p4jet[1]).mass() );
209 ptKTcor.Fill( p4jet[0].
Pt() ); ptKTcor.Fill( p4jet[1].
Pt() );
210 etaKTcor.Fill( p4jet[0].
eta() ); etaKTcor.Fill( p4jet[1].
eta() );
211 phiKTcor.Fill( p4jet[0].
phi() ); phiKTcor.Fill( p4jet[1].
phi() );
218 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++i_jet ) {
219 p4jet[jetInd] = i_jet->p4();
223 m2jSCunc.Fill( (p4jet[0]+p4jet[1]).mass() );
224 ptSCunc.Fill( p4jet[0].
Pt() ); ptSCunc.Fill( p4jet[1].
Pt() );
225 etaSCunc.Fill( p4jet[0].
eta() ); etaSCunc.Fill( p4jet[1].
eta() );
226 phiSCunc.Fill( p4jet[0].
phi() ); phiSCunc.Fill( p4jet[1].
phi() );
233 for( i_jet = Jets->begin(); i_jet != Jets->end() && jetInd<2; ++i_jet ) {
234 p4jet[jetInd] = i_jet->p4();
238 m2jSCcor.Fill( (p4jet[0]+p4jet[1]).mass() );
239 ptSCcor.Fill( p4jet[0].
Pt() ); ptSCcor.Fill( p4jet[1].
Pt() );
240 etaSCcor.Fill( p4jet[0].
eta() ); etaSCcor.Fill( p4jet[1].
eta() );
241 phiSCcor.Fill( p4jet[0].
phi() ); phiSCcor.Fill( p4jet[1].
phi() );
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
#define DEFINE_FWK_MODULE(type)
DijetMass< GenJet > DijetMassGenJets
void analyze(const edm::Event &, const edm::EventSetup &)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
DijetMass< PFJet > DijetMassPFJets
Abs< T >::type abs(const T &t)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
DijetMass(const edm::ParameterSet &)
DijetMass< CaloJet > DijetMassCaloJets