|
[Rivet-svn] r1705 - in trunk: data/anainfo include/Rivet/Analyses src/Analysesblackhole at projects.hepforge.org blackhole at projects.hepforge.orgMon Jul 20 11:19:19 BST 2009
Author: fsiegert Date: Mon Jul 20 11:19:19 2009 New Revision: 1705 Log: Streamline CDF_2008_S7828950 analysis: - make use of convenience provided by the FastJets projection - get rid of unnecessary sum_of_weights_in_histo counters, by simply scaling the histograms in the end, instead of normalising them Changes have been compared to the original version of the analysis and give the exact same numbers. They also look reasonable compared to Sherpa's internal analysis, so marking it as VALIDATED. Modified: trunk/data/anainfo/CDF_2008_S7828950.info trunk/include/Rivet/Analyses/CDF_2008_S7828950.hh trunk/src/Analyses/CDF_2008_S7828950.cc Modified: trunk/data/anainfo/CDF_2008_S7828950.info ============================================================================== --- trunk/data/anainfo/CDF_2008_S7828950.info Mon Jul 20 00:03:14 2009 (r1704) +++ trunk/data/anainfo/CDF_2008_S7828950.info Mon Jul 20 11:19:19 2009 (r1705) @@ -4,16 +4,17 @@ Experiment: CDF Collider: Tevatron Run 2 SpiresID: 7828950 -Status: UNVALIDATED +Status: VALIDATED Authors: - Craig Group <group at fnal.gov> + - Frank Siegert <frank.siegert at durham.ac.uk> References: - arXiv:0807.2204 - Phys.Rev.D78:052006,2008 RunInfo: Requires $2\rightarrow{2}$ QCD scattering processes. The minimum jet Et is 62 GeV, so a cut on kinematic pTmin may be required for good statistics. NumEvents: 1000000 -PtCuts: [0] +PtCuts: [62] Description: Measurement of the inclusive jet cross section in $p\bar{p}$ collisions at $\sqrt{s}=1.96$ TeV as a function of jet Et, for Et $>$ Modified: trunk/include/Rivet/Analyses/CDF_2008_S7828950.hh ============================================================================== --- trunk/include/Rivet/Analyses/CDF_2008_S7828950.hh Mon Jul 20 00:03:14 2009 (r1704) +++ trunk/include/Rivet/Analyses/CDF_2008_S7828950.hh Mon Jul 20 11:19:19 2009 (r1705) @@ -38,18 +38,9 @@ private: - - /// Min jet \f$ p_T \f$ cut. - /// @todo Make static const and UPPERCASE? - const double _jetMinPT; - /// Counter for the number of events analysed (actually the sum of weights, hence double). - double _eventsTried; - /// @name Histograms //@{ - /// The number of events in each histogram - map<AIDA::IHistogram1D*, double> _eventsPassed; /// The y bin width of each histogram map<AIDA::IHistogram1D*, double> _yBinWidths; Modified: trunk/src/Analyses/CDF_2008_S7828950.cc ============================================================================== --- trunk/src/Analyses/CDF_2008_S7828950.cc Mon Jul 20 00:03:14 2009 (r1704) +++ trunk/src/Analyses/CDF_2008_S7828950.cc Mon Jul 20 11:19:19 2009 (r1705) @@ -10,13 +10,12 @@ CDF_2008_S7828950::CDF_2008_S7828950() - : Analysis("CDF_2008_S7828950"), - _jetMinPT(62.0*GeV) + : Analysis("CDF_2008_S7828950") { setBeams(PROTON, ANTIPROTON); //setSqrtS(1960*GeV); const FinalState fs; - addProjection(FastJets(fs, FastJets::CDFMIDPOINT, 0.7), "JetsM07"); //?? + addProjection(FastJets(fs, FastJets::CDFMIDPOINT, 0.7, 62.0*GeV), "JetsM07"); setNeedsCrossSection(true); } @@ -33,10 +32,8 @@ _binnedHistosR07.addHistogram(1.6, 2.1, bookHistogram1D(5, 1, 1)); size_t yind = 0; - for (vector<AIDA::IHistogram1D*>::const_iterator histIt = _binnedHistosR07.getHistograms().begin(); - histIt != _binnedHistosR07.getHistograms().end(); ++histIt){ - _eventsPassed[*histIt] = 0.0; - _yBinWidths[*histIt] = 2.0 * (_ybins[yind+1]-_ybins[yind]); + foreach (AIDA::IHistogram1D* hist, _binnedHistosR07.getHistograms()) { + _yBinWidths[hist] = 2.0 * (_ybins[yind+1]-_ybins[yind]); ++yind; } } @@ -46,34 +43,16 @@ void CDF_2008_S7828950::analyze(const Event& event) { const double weight = event.weight(); - const PseudoJets jetListM07 = applyProjection<FastJets>(event, "JetsM07").pseudoJets(); - set< IHistogram1D*> passed; - for (PseudoJets::const_iterator jet = jetListM07.begin(); jet != jetListM07.end(); ++jet) { - const double pt = jet->perp(); - if (pt > _jetMinPT) { - AIDA::IHistogram1D* histo = _binnedHistosR07.fill(fabs(jet->rapidity()), pt, weight); - if (histo != 0) { - if (histo->coordToIndex(pt) != IAxis::OVERFLOW_BIN) { - passed.insert(histo); - _eventsPassed[histo] += weight; - } - } - } - } + foreach (const Jet& jet, applyProjection<FastJets>(event, "JetsM07").jets()) { + _binnedHistosR07.fill(fabs(jet.momentum().rapidity()), jet.momentum().pT(), weight); + } } // Normalise histograms to cross-section void CDF_2008_S7828950::finalize() { - Log log = getLog(); - const double xSecPerEvent = crossSection()/nanobarn / sumOfWeights(); - log << Log::INFO << "Cross-section = " << crossSection()/nanobarn << " nb" << endl; - - for (map<IHistogram1D*,double>::iterator histIt = _eventsPassed.begin(), - histJt = _yBinWidths.begin(); histIt != _eventsPassed.end(); ++histIt, ++histJt) { - IHistogram1D* hist = histIt->first; - const double xSec = xSecPerEvent * histIt->second / histJt->second; - normalize(hist, xSec); + foreach (AIDA::IHistogram1D* hist, _binnedHistosR07.getHistograms()) { + scale(hist, crossSection()/nanobarn/sumOfWeights()/_yBinWidths[hist]); } }
More information about the Rivet-svn mailing list |