[Rivet-svn] r1657 - in trunk: include/Rivet include/Rivet/Analyses include/Rivet/Tools src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Mon Jul 6 23:06:35 BST 2009


Author: fsiegert
Date: Mon Jul  6 23:06:34 2009
New Revision: 1657

Log:
Added preliminary version of D0_2009_S8320160, untested and without data
until it is available on HepData.

Added:
   trunk/include/Rivet/Analyses/D0_2009_S8320160.hh
   trunk/src/Analyses/D0_2009_S8320160.cc
Modified:
   trunk/include/Rivet/Makefile.am
   trunk/include/Rivet/Tools/BinnedHistogram.hh
   trunk/src/Analyses/Makefile.am
   trunk/src/Analyses/StdAnalyses.cc

Added: trunk/include/Rivet/Analyses/D0_2009_S8320160.hh
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/include/Rivet/Analyses/D0_2009_S8320160.hh	Mon Jul  6 23:06:34 2009	(r1657)
@@ -0,0 +1,103 @@
+// -*- C++ -*-
+#ifndef RIVET_D0_2009_S8320160_HH
+#define RIVET_D0_2009_S8320160_HH
+
+#include "Rivet/Analysis.hh"
+#include "Rivet/Tools/BinnedHistogram.hh"
+
+namespace Rivet {
+
+
+  class D0_2009_S8320160 : public Analysis {
+
+  public:
+
+    /// @name Construction
+    //@{
+    /// Constructor
+    D0_2009_S8320160();
+
+    /// Factory method 
+    static Analysis* create() {
+      return new D0_2009_S8320160();
+    }
+    //@}
+
+
+    /// @name Publication metadata
+    //@{
+    /// A short description of the analysis. 
+    string spiresId() const {
+      return "8320160";
+    }
+    /// A short description of the analysis.
+    string summary() const {
+      return "Dijet angular distributions";
+    }    
+    /// Experiment which performed and published this analysis. 
+    string experiment() const {
+      return "D0";
+    }
+    /// Collider on which the experiment ran.
+    string collider() const {
+      return "Tevatron Run 2";
+    }
+    /// When published (preprint year according to SPIRES). 
+    string year() const {
+      return "2009";
+    }
+    /// Names & emails of analysis authors.
+    vector<string> authors() const {
+      vector<string> ret;
+      ret += "Frank Siegert <frank.siegert at durham.ac.uk>";
+      return ret;
+    }
+    /// A full description of the analysis.
+    string description() const {
+      ostringstream os;
+      os << "Dijet angular distributions in different bins of dijet mass "
+         << "from 0.25 TeV to above 1.1 TeV "
+         << "in ppbar collisions at $\\sqrt{s} = 1.96$ TeV, based on "
+         << "an integrated luminosity of $0.7 \\text{fb}^{-1}$.";
+      return os.str();
+    }
+    /// Information about the events needed as input for this analysis.
+    string runInfo() const {
+      ostringstream os;
+      os << "Tevatron Run 2 conditions:\n" << endl << endl
+         << "* ppbar -> jets at 1960 GeV";
+      return os.str();
+    }
+    string status() const {
+      return "UNVALIDATED";
+    }
+    /// Publication references.
+    vector<string> references() const {
+      vector<string> ret;
+      ret.push_back("arXiv:0906.4819 [hep-ex]");
+      return ret;
+    }
+    //@}
+
+
+    /// @name Analysis methods
+    //@{ 
+    void init();
+    void analyze(const Event& event);
+    void finalize();
+    //@}
+
+
+  private:
+
+    /// @name Histograms
+    //@{
+    BinnedHistogram<double> _h_chi_dijet;
+    //@}
+    
+  };
+
+
+}
+
+#endif

Modified: trunk/include/Rivet/Makefile.am
==============================================================================
--- trunk/include/Rivet/Makefile.am	Mon Jul  6 22:58:28 2009	(r1656)
+++ trunk/include/Rivet/Makefile.am	Mon Jul  6 23:06:34 2009	(r1657)
@@ -66,6 +66,7 @@
   Analyses/D0_2008_S7837160.hh  \
   Analyses/D0_2008_S7863608.hh  \
   Analyses/D0_2009_S8202443.hh  \
+  Analyses/D0_2009_S8320160.hh  \
   Analyses/DELPHI_1995_S3137023.hh \
   Analyses/DELPHI_1996_S3430090.hh \
   Analyses/DELPHI_2002_069_CONF_603.hh \

Modified: trunk/include/Rivet/Tools/BinnedHistogram.hh
==============================================================================
--- trunk/include/Rivet/Tools/BinnedHistogram.hh	Mon Jul  6 22:58:28 2009	(r1656)
+++ trunk/include/Rivet/Tools/BinnedHistogram.hh	Mon Jul  6 23:06:34 2009	(r1657)
@@ -49,7 +49,8 @@
                                 const T &val,
                                 const double &weight);
     
-    const vector<AIDA::IHistogram1D*> &getHistograms()const{return _histos;};
+    const vector<AIDA::IHistogram1D*> &getHistograms() const { return _histos; }
+    vector<AIDA::IHistogram1D*> &getHistograms() { return _histos; }
     
   private:
     

Added: trunk/src/Analyses/D0_2009_S8320160.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/src/Analyses/D0_2009_S8320160.cc	Mon Jul  6 23:06:34 2009	(r1657)
@@ -0,0 +1,95 @@
+// -*- C++ -*-
+#include "Rivet/Analyses/D0_2009_S8320160.hh"
+#include "Rivet/Tools/Logging.hh"
+#include "Rivet/Projections/FinalState.hh"
+#include "Rivet/Projections/ChargedFinalState.hh"
+#include "Rivet/Projections/FastJets.hh"
+#include "Rivet/RivetAIDA.hh"
+
+namespace Rivet {
+
+
+  D0_2009_S8320160::D0_2009_S8320160()
+  {
+    setBeams(PROTON, ANTIPROTON);
+    
+    ChargedFinalState cfs;
+    FastJets conefinder(cfs, FastJets::D0ILCONE, 0.7);
+    addProjection(conefinder, "ConeFinder");
+  } 
+
+
+  // Book histograms
+  void D0_2009_S8320160::init() {
+    _h_chi_dijet.addHistogram(0.25, 0.3, bookHistogram1D(
+        1, 1, 1, "$0.25 \\leq M_{jj}/\\text{TeV} \\leq 0.3$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.3, 0.4, bookHistogram1D(
+        2, 1, 1, "$0.3 \\leq M_{jj}/\\text{TeV} \\leq 0.4$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.4, 0.5, bookHistogram1D(
+        3, 1, 1, "$0.4 \\leq M_{jj}/\\text{TeV} \\leq 0.5$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.5, 0.6, bookHistogram1D(
+        4, 1, 1, "$0.5 \\leq M_{jj}/\\text{TeV} \\leq 0.6$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.6, 0.7, bookHistogram1D(
+        5, 1, 1, "$0.6 \\leq M_{jj}/\\text{TeV} \\leq 0.7$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.7, 0.8, bookHistogram1D(
+        6, 1, 1, "$0.7 \\leq M_{jj}/\\text{TeV} \\leq 0.8$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.8, 0.9, bookHistogram1D(
+        7, 1, 1, "$0.8 \\leq M_{jj}/\\text{TeV} \\leq 0.9$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(0.9, 1.0, bookHistogram1D(
+        8, 1, 1, "$0.9 \\leq M_{jj}/\\text{TeV} \\leq 1.0$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(1.0, 1.1, bookHistogram1D(
+        9, 1, 1, "$1.0 \\leq M_{jj}/\\text{TeV} \\leq 1.1$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+    _h_chi_dijet.addHistogram(1.1, 1.960, bookHistogram1D(
+        10, 1, 1, "$1.1 \\leq M_{jj}/\\text{TeV}$",
+        "\\chi_{\\text{dijet}}=\\exp(|y_1 - y_2|)",
+        "1/\\sigma_{\\text{dijet}} d\\sigma/d\\chi_{\\text{dijet}}"));
+  }
+
+
+
+  // Do the analysis 
+  void D0_2009_S8320160::analyze(const Event & e) {
+    double weight = e.weight();
+
+    const JetAlg& jetpro = applyProjection<JetAlg>(e, "ConeFinder");
+    const Jets& jets = jetpro.jetsByPt();
+    
+    if(jets.size()<2) {
+      vetoEvent;
+    }
+    
+    FourMomentum j0(jets[0].momentum());
+    FourMomentum j1(jets[1].momentum());
+    double mjj = FourMomentum(j0+j1).mass();
+    double chi = exp(fabs(j0.rapidity()-j1.rapidity()));
+    _h_chi_dijet.fill(mjj, chi, weight);
+  }
+
+
+
+  // Finalize
+  void D0_2009_S8320160::finalize() {
+    foreach (AIDA::IHistogram1D* hist, _h_chi_dijet.getHistograms()) {
+      normalize(hist);
+    }
+  }
+
+}

Modified: trunk/src/Analyses/Makefile.am
==============================================================================
--- trunk/src/Analyses/Makefile.am	Mon Jul  6 22:58:28 2009	(r1656)
+++ trunk/src/Analyses/Makefile.am	Mon Jul  6 23:06:34 2009	(r1657)
@@ -33,6 +33,7 @@
     D0_2008_S7837160.cc \
     D0_2008_S7863608.cc \
     D0_2009_S8202443.cc \
+    D0_2009_S8320160.cc \
     DELPHI_1995_S3137023.cc \
     DELPHI_1996_S3430090.cc \
     DELPHI_2002_069_CONF_603.cc \

Modified: trunk/src/Analyses/StdAnalyses.cc
==============================================================================
--- trunk/src/Analyses/StdAnalyses.cc	Mon Jul  6 22:58:28 2009	(r1656)
+++ trunk/src/Analyses/StdAnalyses.cc	Mon Jul  6 23:06:34 2009	(r1657)
@@ -54,6 +54,7 @@
 #include "Rivet/Analyses/D0_2008_S7837160.hh"
 #include "Rivet/Analyses/D0_2008_S7863608.hh"
 #include "Rivet/Analyses/D0_2009_S8202443.hh"
+#include "Rivet/Analyses/D0_2009_S8320160.hh"
 
 // RHIC
 #include "Rivet/Analyses/STAR_2006_S6870392.hh"
@@ -128,6 +129,7 @@
     fns["D0_2008_S7837160"] = Rivet::D0_2008_S7837160::create;
     fns["D0_2008_S7863608"] = Rivet::D0_2008_S7863608::create;
     fns["D0_2009_S8202443"] = Rivet::D0_2009_S8202443::create;
+    fns["D0_2009_S8320160"] = Rivet::D0_2009_S8320160::create;
 
     // RHIC
     fns["STAR_2006_S6870392"] = Rivet::STAR_2006_S6870392::create;


More information about the Rivet-svn mailing list