Public Member Functions | |
void | analyze (const Event &event) |
CMS_2010_S8656010 () | |
void | finalize () |
void | init () |
Private Attributes | |
AIDA::IHistogram1D * | _h_dNch_dEta |
AIDA::IHistogram1D * | _h_dNch_dpT [12] |
AIDA::IHistogram1D * | _h_dNch_dpT_all |
double | _Nevt_after_cuts |
Definition at line 10 of file CMS_2010_S8656010.cc.
Rivet::CMS_2010_S8656010::CMS_2010_S8656010 | ( | ) | [inline] |
Definition at line 13 of file CMS_2010_S8656010.cc.
: Analysis("CMS_2010_S8656010") { setBeams(PROTON, PROTON); setNeedsCrossSection(false); }
void Rivet::CMS_2010_S8656010::analyze | ( | const Event & | event | ) | [inline] |
Definition at line 50 of file CMS_2010_S8656010.cc.
References _h_dNch_dEta, _h_dNch_dpT, _h_dNch_dpT_all, _Nevt_after_cuts, eta(), event(), AlCaHLTBitMon_ParallelJobs::p, and CommonMethods::weight().
{ if (!fuzzyEquals(sqrtS(), 7000*GeV, 1E-3) ) { return; } const double weight = event.weight(); //charge particles const ChargedFinalState& charged = applyProjection<ChargedFinalState>(event, "CFS"); _Nevt_after_cuts += weight; foreach (const Particle& p, charged.particles()) { const double pT = p.momentum().pT(); const double eta = p.momentum().eta(); // The data is actually a duplicated folded distribution. This should mimic it. _h_dNch_dEta->fill(eta, 0.5*weight); _h_dNch_dEta->fill(-eta, 0.5*weight); if (fabs(eta)<2.4 && pT>0.1) { if (pT<6.0) { _h_dNch_dpT_all->fill(pT, weight/pT); if (pT<2.0) { int ietabin = fabs(eta)/0.2; _h_dNch_dpT[ietabin]->fill(pT, weight); } } } } return; }
void Rivet::CMS_2010_S8656010::finalize | ( | void | ) | [inline] |
Definition at line 84 of file CMS_2010_S8656010.cc.
References _h_dNch_dEta, _h_dNch_dpT, _h_dNch_dpT_all, _Nevt_after_cuts, and pileupReCalc_HLTpaths::scale.
{ if (!fuzzyEquals(sqrtS(), 7000*GeV, 1E-3) ) { return; } const double normfac = 1.0/_Nevt_after_cuts; // Normalizing to unit eta is automatic // The pT distributions in bins of eta must be normalized to unit eta. This is a factor of 2 // for the |eta| times 0.2 (eta range). // The pT distributions over all eta are normalized to unit eta (2.0*2.4) and by 1/2*pi*pT. // The 1/pT part is taken care of in the filling. The 1/2pi is taken care of here. const double normpT = normfac/(2.0*0.2); const double normpTall = normfac/(2.0*3.141592654*2.0*2.4); for (int ietabin=0; ietabin < 12; ietabin++){ scale(_h_dNch_dpT[ietabin], normpT); } scale(_h_dNch_dpT_all, normpTall); scale(_h_dNch_dEta, normfac); return; }
void Rivet::CMS_2010_S8656010::init | ( | void | ) | [inline] |
Definition at line 19 of file CMS_2010_S8656010.cc.
References _h_dNch_dEta, _h_dNch_dpT, _h_dNch_dpT_all, and _Nevt_after_cuts.
{ ChargedFinalState cfs(-2.5, 2.5, 0.0*GeV); addProjection(cfs, "CFS"); addProjection(Beam(), "Beam"); _Nevt_after_cuts = 0; if(fuzzyEquals(sqrtS(), 7000*GeV, 1E-3)){ _h_dNch_dpT[0] = bookHistogram1D(1, 1, 1); _h_dNch_dpT[1] = bookHistogram1D(1, 1, 2); _h_dNch_dpT[2] = bookHistogram1D(1, 1, 3); _h_dNch_dpT[3] = bookHistogram1D(1, 1, 4); _h_dNch_dpT[4] = bookHistogram1D(2, 1, 1); _h_dNch_dpT[5] = bookHistogram1D(2, 1, 2); _h_dNch_dpT[6] = bookHistogram1D(2, 1, 3); _h_dNch_dpT[7] = bookHistogram1D(2, 1, 4); _h_dNch_dpT[8] = bookHistogram1D(3, 1, 1); _h_dNch_dpT[9] = bookHistogram1D(3, 1, 2); _h_dNch_dpT[10] = bookHistogram1D(3, 1, 3); _h_dNch_dpT[11] = bookHistogram1D(3, 1, 4); _h_dNch_dpT_all = bookHistogram1D(4, 1, 1); _h_dNch_dEta = bookHistogram1D(5, 1, 1); } return; }
AIDA::IHistogram1D* Rivet::CMS_2010_S8656010::_h_dNch_dEta [private] |
Definition at line 112 of file CMS_2010_S8656010.cc.
Referenced by analyze(), finalize(), and init().
AIDA::IHistogram1D* Rivet::CMS_2010_S8656010::_h_dNch_dpT[12] [private] |
Definition at line 109 of file CMS_2010_S8656010.cc.
Referenced by analyze(), finalize(), and init().
AIDA::IHistogram1D* Rivet::CMS_2010_S8656010::_h_dNch_dpT_all [private] |
Definition at line 110 of file CMS_2010_S8656010.cc.
Referenced by analyze(), finalize(), and init().
double Rivet::CMS_2010_S8656010::_Nevt_after_cuts [private] |
Definition at line 114 of file CMS_2010_S8656010.cc.
Referenced by analyze(), finalize(), and init().