9 using namespace RecoBTag;
16 discrStart_(pSet.getParameter<double>(
"discriminatorStart")),
17 discrEnd_(pSet.getParameter<double>(
"discriminatorEnd")),
18 nBinEffPur_(pSet.getParameter<int>(
"nBinEffPur")),
19 startEffPur_(pSet.getParameter<double>(
"startEffPur")),
20 endEffPur_(pSet.getParameter<double>(
"endEffPur")),
21 mcPlots_(mc), willFinalize_(wf) {
32 nJets =
new int [nFl];
33 for(
int i = 0;
i < nFl;
i++){
40 (
"jetFlavour" + es,
"Jet Flavour", 22, -0.5, 21.5,
41 false,
false,
false,
"b", jetTagDir,
mcPlots_, ibook);
48 (
"jetMultiplicity" + es,
"Jet Multiplicity", 11, -0.5, 10.5,
49 false,
true,
true,
"b", jetTagDir,
mcPlots_, ibook);
54 false,
true,
true,
"b", jetTagDir,
mcPlots_, ibook);
55 dDiscriminator->
settitle(
"Discriminant");
58 (
"jetMomentum" + es,
"jet momentum", 350, 0.0, 350.0,
59 false,
false,
true,
"b", jetTagDir,
mcPlots_, ibook);
63 (
"jetPt" + es,
"jet pt", 350, 0.0, 350.0,
64 false,
false,
true,
"b", jetTagDir,
mcPlots_, ibook);
68 (
"jetEta" + es,
"jet eta", 100, -3.0, 3.0,
69 false,
false,
true,
"b", jetTagDir,
mcPlots_, ibook);
73 (
"jetPhi" + es,
"jet phi", 100, -3.15, 3.15,
74 false,
false,
true,
"b", jetTagDir,
mcPlots_, ibook);
114 TCanvas
canvas(cName.c_str(), cName.c_str(), 600, 900);
118 canvas.Print((name + cName +
".ps[").c_str());
131 canvas.Print((name + cName +
".ps").c_str());
136 canvas.Print((name + cName +
".ps").c_str());
150 canvas.Print((name + cName +
".ps").c_str());
156 canvas.Print((name + cName +
".ps").c_str());
157 canvas.Print((name + cName +
".ps]").c_str());
174 for(
int i = 0;
i < 8;
i++){
176 if(
i > 0 &&
i < 4) udsNJets +=
nJets[
i];
177 if((
i > 0 &&
i < 4) ||
i == 6) udsgNJets +=
nJets[
i];
191 for(
int i = 0;
i < 8;
i++){
202 const int& jetFlavour)
206 if(
abs(jetFlavour)>0 &&
abs(jetFlavour)<6)
nJets[
abs(jetFlavour)]+=1;
207 else if(
abs(jetFlavour)==21)
nJets[6]+=1;
208 else if(jetFlavour==20)
nJets[7]+=1;
225 const int& jetFlavour,
230 if(
abs(jetFlavour)>0 &&
abs(jetFlavour)<6)
nJets[
abs(jetFlavour)]+=1;
231 else if(
abs(jetFlavour)==21)
nJets[6]+=1;
232 else if(jetFlavour==20)
nJets[7]+=1;
249 const int & jetFlavour)
253 if(
abs(jetFlavour)>0 &&
abs(jetFlavour)<6)
nJets[
abs(jetFlavour)]+=1;
254 else if(
abs(jetFlavour)==21)
nJets[6]+=1;
255 else if(jetFlavour==20)
nJets[7]+=1;
271 const int & jetFlavour,
276 if(
abs(jetFlavour)>0 &&
abs(jetFlavour)<6)
nJets[
abs(jetFlavour)]+=1;
277 else if(
abs(jetFlavour)==21)
nJets[6]+=1;
278 else if(jetFlavour==20)
nJets[7]+=1;
305 effPurFromHistos->compute(ibook_);
virtual double p() const
magnitude of momentum vector
void epsPlot(const std::string &name)
void plot(TPad *theCanvas=0)
const std::string theExtensionString
Base class for all types of Jets.
JetFloatAssociation::value_type JetTag
void fill(const int &flavour, const T &variable) const
FlavourHistograms< double > * dJetRecPt
void finalize(DQMStore::IBooker &ibook_, DQMStore::IGetter &igetter_)
FlavourHistograms< double > * dDiscriminator
virtual double eta() const
momentum pseudorapidity
virtual double pt() const
transverse momentum
FlavourHistograms< int > * JetMultiplicity
void epsPlot(const std::string &name)
FlavourHistograms< double > * discriminatorCutEfficScan() const
FlavourHistograms< double > * dJetRecMomentum
void plot(TPad *theCanvas=0)
FlavourHistograms< double > * discriminatorNoCutEffic() const
Abs< T >::type abs(const T &t)
void settitle(const char *title)
JetTagPlotter(const std::string &tagName, const EtaPtBin &etaPtBin, const edm::ParameterSet &pSet, const unsigned int &mc, const bool &willFinalize, DQMStore::IBooker &ibook)
void psPlot(const std::string &name)
void epsPlot(const std::string &name)
FlavourHistograms< double > * dJetRecPhi
EffPurFromHistos * effPurFromHistos
FlavourHistograms< int > * dJetFlav
virtual double phi() const
momentum azimuthal angle
FlavourHistograms< double > * dJetRecPseudoRapidity