[Rivet-svn] r1729 - in trunk: data/anainfo data/plotinfo include/Rivet/Analyses src/Analyses

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Thu Jul 30 23:15:55 BST 2009


Author: holsch
Date: Thu Jul 30 23:15:54 2009
New Revision: 1729

Log:
Enhancing UA5 analysis where pseudorapidity distributions are measured for NSD and NSD+SD events at c.m. energies of 200 and 900 GeV. The NDS distributions are further studied based on certain multiplicity windows. Plots can be found here: http://eeh06.physik.hu-berlin.de/~hschulz/Rivet/Validation/UA5_1986_S1583476/

Modified:
   trunk/data/anainfo/Makefile.am
   trunk/data/anainfo/UA5_1986_S1583476.info
   trunk/data/plotinfo/Makefile.am
   trunk/data/plotinfo/UA5_1986_S1583476.plot
   trunk/include/Rivet/Analyses/UA5_1986_S1583476.hh
   trunk/src/Analyses/StdAnalyses.cc
   trunk/src/Analyses/UA5_1986_S1583476.cc

Modified: trunk/data/anainfo/Makefile.am
==============================================================================
--- trunk/data/anainfo/Makefile.am	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/data/anainfo/Makefile.am	Thu Jul 30 23:15:54 2009	(r1729)
@@ -52,9 +52,9 @@
   PDG_HADRON_MULTIPLICITIES_RATIOS.info \
   STAR_2006_S6870392.info \
   STAR_2008_S7993412.info \
-  UA5_1989_S1926373.info \
   ZEUS_2001_S4815815.info \
+  UA1_1990_S2044935.info \
   UA5_1982_S875503.info \
   UA5_1986_S1583476.info \
-  UA1_1990_S2044935.info \
-  UA5_1988_S1867512.info 
+  UA5_1988_S1867512.info \
+  UA5_1989_S1926373.info

Modified: trunk/data/anainfo/UA5_1986_S1583476.info
==============================================================================
--- trunk/data/anainfo/UA5_1986_S1583476.info	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/data/anainfo/UA5_1986_S1583476.info	Thu Jul 30 23:15:54 2009	(r1729)
@@ -1,12 +1,24 @@
 Name: UA5_1986_S1583476
-SpiresID: 1583476
-Summary: UA5 pseudorapidity distributions for 200 and 900 GeV.
-Description: UA5 pseudorapidity distributions for 200 and 900 GeV
-	     from the 1986 runs.
-RunInfo: Energy - sqrtS = 200 and 900 GeV. Event type - generic QCD events.
-Status:
-Experiment: UA5
-Collider: SPS
 Year: 1986
-Author: Christophe Vaillant
-References: Eur. Phys. J. C33: 1, 1986
\ No newline at end of file
+Summary: Pseudorapidity distributions in ppbar (NSD, NSD+SD) events at c.m. energies of 200 and 900 GeV
+Experiment: UA5
+Collider: CERN SPS
+SpiresID: 1583476
+Status: UNVALIDATED
+Authors:
+ - Holger Schulz <holger.schulz at physik.hu-berlin.de>
+ - Christophe Vaillant <c.l.j.j.vaillant at durham.ac.uk>
+References:
+ - Eur. Phys. J. C33, 1, 1986
+RunInfo:
+  Elastic scattering, single and double diffractive events. ppbar collider, c.m energy 200 or 900 GeV.
+  The trigger implementations for NSD events is the same as in, e.g., the UA5_1989 analysis. No
+  further cuts are needed.
+NumEvents: 1000000
+PtCuts: [0]
+Description:
+  This study comprises measurements of pseudorapidity distributions measured with the UA5
+  detector at 200 and 900 GeV center of momentum energy. There are distributions for
+  non-single diffractive (NSD) events and als for the combination of single- and double-diffractive
+  events. The NSD distributions are further studied for certain ranges of the events charged
+  multiplicity.

Modified: trunk/data/plotinfo/Makefile.am
==============================================================================
--- trunk/data/plotinfo/Makefile.am	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/data/plotinfo/Makefile.am	Thu Jul 30 23:15:54 2009	(r1729)
@@ -52,9 +52,8 @@
   STAR_2006_S6870392.plot \
   STAR_2008_S7993412.plot \
   ZEUS_2001_S4815815.plot \
-  UA5_1989_S1926373.plot \
+  UA1_1990_S2044935.plot \
   UA5_1982_S875503.plot \
   UA5_1986_S1583476.plot \
-  UA1_1990_S2044935.plot \
-  UA5_1988_S1867512.plot 
-
+  UA5_1988_S1867512.plot \
+  UA5_1989_S1926373.plot

Modified: trunk/data/plotinfo/UA5_1986_S1583476.plot
==============================================================================
--- trunk/data/plotinfo/UA5_1986_S1583476.plot	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/data/plotinfo/UA5_1986_S1583476.plot	Thu Jul 30 23:15:54 2009	(r1729)
@@ -1,11 +1,97 @@
 # BEGIN PLOT /UA5_1986_S1583476/d01-x01-y01
-Title=Pseudorapidity distribution for $\\sqrt(S) = 200 \\mathrm{GeV}$
-XLabel=$\\eta$
-YLabel=$\\frac{1}{\\sigma} \\frac{d \\sigma}{d \\eta}$
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{NSD}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d01-x01-y02
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD+SD)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{INEL}}\frac{\text{d}\sigma}{\text{d}\eta}$
 # END PLOT
-
 # BEGIN PLOT /UA5_1986_S1583476/d01-x01-y03
-Title=Pseudorapidity distribution for $\\sqrt(S) = 900 \\mathrm{GeV}$
-XLabel=$\\eta$
-YLabel=$\\frac{1}{\\sigma} \\frac{d \\sigma}{d \\eta}$
-# END PLOT
\ No newline at end of file
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{NSD}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d01-x01-y04
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD+SD)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{INEL}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y01
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $2<N_\text{ch}<10$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y02
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $12<N_\text{ch}<20$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y03
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $22<N_\text{ch}<30$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y04
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $32<N_\text{ch}<40$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y05
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $42<N_\text{ch}<50$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d02-x01-y06
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=200$ \unit{GeV}, NSD, $N_\text{ch}>52$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y01
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $2<N_\text{ch}<10$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y02
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $12<N_\text{ch}<20$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y03
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $22<N_\text{ch}<30$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y04
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $32<N_\text{ch}<40$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y05
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $42<N_\text{ch}<50$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y06
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $52<N_\text{ch}<60$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y07
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $62<N_\text{ch}<70$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y08
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $72<N_\text{ch}<80$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT
+# BEGIN PLOT /UA5_1986_S1583476/d03-x01-y09
+Title=Pseudorapidity  ($\left|\eta\right|<5.0$, $\sqrt{s}=900$ \unit{GeV}, NSD, $N_\text{ch}>82$)
+XLabel=$\left|\eta\right|$
+YLabel=$\frac{1}{\sigma_\text{n}}\frac{\text{d}\sigma}{\text{d}\eta}$
+# END PLOT

Modified: trunk/include/Rivet/Analyses/UA5_1986_S1583476.hh
==============================================================================
--- trunk/include/Rivet/Analyses/UA5_1986_S1583476.hh	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/include/Rivet/Analyses/UA5_1986_S1583476.hh	Thu Jul 30 23:15:54 2009	(r1729)
@@ -6,25 +6,28 @@
 
 namespace Rivet {
 
-    
-  class UA5_1986_S1583476 : public Analysis {
 
+  class UA5_1986_S1583476 : public Analysis {
   public:
 
-    /// @name Constructor etc.
+    /// @name Constructors etc.
     //@{
 
-    /// constructor
+    string name() const {
+        return "UA5_1986_S1583476";
+    }
+    /// Constructor
     UA5_1986_S1583476();
 
     /// Factory method
-    static Analysis* create() { 
-      return new UA5_1986_S1583476(); 
+    static Analysis* create() {
+      return new UA5_1986_S1583476();
     }
-
     //@}
 
 
+  public:
+
     /// @name Analysis methods
     //@{
     void init();
@@ -32,15 +35,43 @@
     void finalize();
     //@}
 
+  private:
 
-    private:
-    
-    AIDA::IHistogram1D* _hist_eta200;
-    AIDA::IHistogram1D* _hist_eta900;
+    // Data members like post-cuts event weight counters go here
+
+  private:
+
+    /// @name Histograms
+    //@{
+    // Histos of Figure 1 (HepData Table 1)
+    AIDA::IHistogram1D *_hist_eta_nsd_200;
+    AIDA::IHistogram1D *_hist_eta_inelastic_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_900;
+    AIDA::IHistogram1D *_hist_eta_inelastic_900;
+
+    // Histos of Figure 3a (HepData Table 2)
+    AIDA::IHistogram1D *_hist_eta_nsd_n_2_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_12_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_22_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_32_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_42_200;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_52_200;
+
+    // Histos of Figure 3b (HepData Table 3)
+    AIDA::IHistogram1D *_hist_eta_nsd_n_2_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_12_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_22_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_32_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_42_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_52_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_62_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_72_900;
+    AIDA::IHistogram1D *_hist_eta_nsd_n_82_900;
+    //@}
 
   };
 
+
 }
 
 #endif
-

Modified: trunk/src/Analyses/StdAnalyses.cc
==============================================================================
--- trunk/src/Analyses/StdAnalyses.cc	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/src/Analyses/StdAnalyses.cc	Thu Jul 30 23:15:54 2009	(r1729)
@@ -65,6 +65,7 @@
 //#include "Rivet/Analyses/STAR_2009_UE_HELEN.hh"
 
 // UA5
+#include "Rivet/Analyses/UA5_1986_S1583476.hh" 
 #include "Rivet/Analyses/UA5_1988_S1867512.hh"
 #include "Rivet/Analyses/UA5_1989_S1926373.hh"
 #include "Rivet/Analyses/UA5_1982_S875503.hh"
@@ -154,6 +155,7 @@
     //fns["STAR_2009_UE_HELEN"] = Rivet::STAR_2009_UE_HELEN::create;
 
     // UA5
+    fns["UA5_1986_S1583476"] = Rivet::UA5_1986_S1583476::create;
     fns["UA5_1988_S1867512"] = Rivet::UA5_1988_S1867512::create;
     fns["UA5_1989_S1926373"] = Rivet::UA5_1989_S1926373::create;
     fns["UA5_1982_S875503"] = Rivet::UA5_1982_S875503::create;

Modified: trunk/src/Analyses/UA5_1986_S1583476.cc
==============================================================================
--- trunk/src/Analyses/UA5_1986_S1583476.cc	Thu Jul 30 17:36:44 2009	(r1728)
+++ trunk/src/Analyses/UA5_1986_S1583476.cc	Thu Jul 30 23:15:54 2009	(r1729)
@@ -1,53 +1,156 @@
-#include "Rivet/Analysis.hh"
-#include "Rivet/Projections/FinalState.hh"
-#include "Rivet/Projections/Beam.hh"
+// -*- C++ -*-
 #include "Rivet/Rivet.hh"
-#include "Rivet/Event.hh"
 #include "Rivet/RivetAIDA.hh"
-#include "Rivet/ProjectionHandler.hh"
-#include "Rivet/AnalysisLoader.hh"
-#include "Rivet/Tools/ParticleIDMethods.hh"
+#include "Rivet/Tools/Logging.hh"
 #include "Rivet/Analyses/UA5_1986_S1583476.hh"
+#include "Rivet/Projections/ChargedFinalState.hh"
+#include "Rivet/Projections/Beam.hh"
+#include "Rivet/AnalysisLoader.hh"
 
 namespace Rivet {
+
+
+  UA5_1986_S1583476::UA5_1986_S1583476() : Analysis("UA5_1986_S1583476") {
+    /// @todo Set approriate for your analysis
+    setBeams(PROTON, ANTIPROTON);
+    addProjection(Beam(), "Beams");
     
-    /// Default constructor
-    UA5_1986_S1583476::UA5_1986_S1583476()
-    : Analysis("UA5_1986_S1583476") {
-      const FinalState fs;
-      addProjection(fs, "FS");
-      addProjection(Beam(), "Beam");
-    }
-
-    /// @name Analysis methods
-    //@{
-    void UA5_1986_S1583476::init() { 
-      _hist_eta200 = bookHistogram1D("d01-x01-y01", 20, 0., 5.);
-      _hist_eta900 = bookHistogram1D("d01-x01-y03", 30, 0., 10.);
-    }
-    
-    void UA5_1986_S1583476::analyze(const Event& event) {
-      const FinalState& fs = applyProjection<FinalState>(event, "FS");
-      const double sqrtS = applyProjection<Beam>(event, "Beam").sqrtS();
+    // All charged final state particles, needed for triggers
+    const ChargedFinalState cfs;
+    addProjection(cfs,   "CFSAll");
+    // charged particles in |eta| < 5.0 
+    const ChargedFinalState cfs50(-5.0, 5.0);
+    addProjection(cfs50,   "CFS50");
+  }
+
+
+  void UA5_1986_S1583476::init() {
+      _hist_eta_nsd_200      = bookHistogram1D(1,1,1);
+      _hist_eta_inelastic_200  = bookHistogram1D(1,1,2);
+      _hist_eta_nsd_900      = bookHistogram1D(1,1,3);
+      _hist_eta_inelastic_900  = bookHistogram1D(1,1,4);
+                              
+      _hist_eta_nsd_n_2_200  = bookHistogram1D(2,1,1);
+      _hist_eta_nsd_n_12_200 = bookHistogram1D(2,1,2);
+      _hist_eta_nsd_n_22_200 = bookHistogram1D(2,1,3);
+      _hist_eta_nsd_n_32_200 = bookHistogram1D(2,1,4);
+      _hist_eta_nsd_n_42_200 = bookHistogram1D(2,1,5);
+      _hist_eta_nsd_n_52_200 = bookHistogram1D(2,1,6);
+                              
+      _hist_eta_nsd_n_2_900  = bookHistogram1D(3,1,1);
+      _hist_eta_nsd_n_12_900 = bookHistogram1D(3,1,2);
+      _hist_eta_nsd_n_22_900 = bookHistogram1D(3,1,3);
+      _hist_eta_nsd_n_32_900 = bookHistogram1D(3,1,4);
+      _hist_eta_nsd_n_42_900 = bookHistogram1D(3,1,5);
+      _hist_eta_nsd_n_52_900 = bookHistogram1D(3,1,6);
+      _hist_eta_nsd_n_62_900 = bookHistogram1D(3,1,7);
+      _hist_eta_nsd_n_72_900 = bookHistogram1D(3,1,8);
+      _hist_eta_nsd_n_82_900 = bookHistogram1D(3,1,9);
+  }
+
+
+  void UA5_1986_S1583476::analyze(const Event& event) {
+      Log log = getLog();
+
+      const double sqrtS = applyProjection<Beam>(event, "Beams").sqrtS();
       const double weight = event.weight();
-      foreach (const Particle& p, fs.particles())
-      {
-        if (fuzzyEquals(sqrtS, 200, 1E-4))
-        {
-        _hist_eta200->fill(p.momentum().pseudorapidity(), weight/27.9);
-        }
-        if (fuzzyEquals(sqrtS, 900))
-        {
-        _hist_eta900->fill(p.momentum().pseudorapidity(), weight/34.4);
-        }
+
+      // Trigger requirements from the hodoscopes (1 arm (elastic) and 2 arms (NSD))
+      int n_trig_1 = 0;
+      int n_trig_2 = 0;
+      bool isNSD = true;
+      
+      const ChargedFinalState& cfs = applyProjection<ChargedFinalState>(event, "CFSAll");
+      foreach (const Particle& p, cfs.particles()) {
+           double eta = p.momentum().pseudorapidity();
+           if ( ( -5.6 < eta ) && ( eta < -2.0 ) ) n_trig_1++;
+           else if ( (  2.0 < eta ) && ( eta <  5.6 ) ) n_trig_2++;
       }
-    }
-    
-    void UA5_1986_S1583476::finalize() {
-//Normalize using the range of pseudorapidity.
-      normalize(_hist_eta200, 10);
-      normalize(_hist_eta900, 18);
-    }
-    //@}
+      getLog() << Log::DEBUG << "Trigger 1: " << n_trig_1 << " Trigger 2: " << n_trig_2 << endl;
+      
+      // Check if we have a coincidence hit in hodoscopes == NSD
+      if ( ( n_trig_1 == 0 ) && ( n_trig_2 == 0 ) ) vetoEvent
+      // Require at least one hit in trigger hodoscopes
+      else if ( ( n_trig_1*n_trig_2 < 1.) ) isNSD=false;
+      
+      // Declare final state for |eta| < 5.0
+      const ChargedFinalState& cfs50 = applyProjection<ChargedFinalState>(event, "CFS50");
+      int numP = cfs50.particles().size();
+
+
+      // Iterate over particles in |eta| < 5.0 and fill histos with |eta| 
+      foreach (const Particle& p, cfs.particles()) {
+          double eta = fabs(p.momentum().pseudorapidity());
+
+          // Fill 200 GeV histos
+          if (fuzzyEquals(sqrtS, 200.0, 1E-4)) {
+              // Fill histos that don't require a certain multiplicity
+              _hist_eta_inelastic_200->fill(eta, weight);
+              if ( isNSD ) {
+                  // Fill histos that require a certain multiplicity
+                  _hist_eta_nsd_200->fill(eta, weight);
+                  if ( ( 2 <= numP ) && ( numP <= 10 ) ) _hist_eta_nsd_n_2_200->fill(eta, weight);
+                  else if ( ( 12 <= numP ) && ( numP <= 20 ) ) _hist_eta_nsd_n_12_200->fill(eta, weight);
+                  else if ( ( 22 <= numP ) && ( numP <= 30 ) ) _hist_eta_nsd_n_22_200->fill(eta, weight);
+                  else if ( ( 32 <= numP ) && ( numP <= 40 ) ) _hist_eta_nsd_n_32_200->fill(eta, weight);
+                  else if ( ( 42 <= numP ) && ( numP <= 50 ) ) _hist_eta_nsd_n_42_200->fill(eta, weight);
+                  else if ( numP >= 52 ) _hist_eta_nsd_n_52_200->fill(eta, weight);
+                  }
+          }
+
+          // Fill 900 GeV histos
+          else if (fuzzyEquals(sqrtS, 900.0, 1E-4)) {
+              // Fill histos that don't require a certain multiplicity
+              _hist_eta_inelastic_900->fill(eta, weight);
+              if ( isNSD ) {
+                  // Fill histos that require a certain multiplicity
+                  _hist_eta_nsd_900->fill(eta, weight);
+                  if ( ( 2 <= numP ) && ( numP <= 10 ) ) _hist_eta_nsd_n_2_900->fill(eta, weight);
+                  else if ( ( 12 <= numP ) && ( numP <= 20 ) ) _hist_eta_nsd_n_12_900->fill(eta, weight);
+                  else if ( ( 22 <= numP ) && ( numP <= 30 ) ) _hist_eta_nsd_n_22_900->fill(eta, weight);
+                  else if ( ( 32 <= numP ) && ( numP <= 40 ) ) _hist_eta_nsd_n_32_900->fill(eta, weight);
+                  else if ( ( 42 <= numP ) && ( numP <= 50 ) ) _hist_eta_nsd_n_42_900->fill(eta, weight);
+                  else if ( ( 52 <= numP ) && ( numP <= 60 ) ) _hist_eta_nsd_n_52_900->fill(eta, weight);
+                  else if ( ( 62 <= numP ) && ( numP <= 70 ) ) _hist_eta_nsd_n_62_900->fill(eta, weight);
+                  else if ( ( 72 <= numP ) && ( numP <= 80 ) ) _hist_eta_nsd_n_72_900->fill(eta, weight);
+                  else if ( numP >= 82 ) _hist_eta_nsd_n_82_900->fill(eta, weight);
+                  }
+          }
+
+      }
+
+
+
 
   }
+
+
+  void UA5_1986_S1583476::finalize() {
+
+      // Scale histos to the area of the corresponding reference histos
+      normalize(_hist_eta_nsd_200      , 10.2225);    
+      normalize(_hist_eta_inelastic_200, 9.255  );
+      normalize(_hist_eta_nsd_900      , 15.285 );
+      normalize(_hist_eta_inelastic_900, 13.9725);
+
+      normalize(_hist_eta_nsd_n_2_200  , 3.285);
+      normalize(_hist_eta_nsd_n_12_200 , 7.34 );
+      normalize(_hist_eta_nsd_n_22_200 , 12.02);
+      normalize(_hist_eta_nsd_n_32_200 , 17.2 );
+      normalize(_hist_eta_nsd_n_42_200 , 21.99);
+      normalize(_hist_eta_nsd_n_52_200 , 27.8 );
+
+      normalize(_hist_eta_nsd_n_2_900  , 2.7   );
+      normalize(_hist_eta_nsd_n_12_900 , 6.425 );
+      normalize(_hist_eta_nsd_n_22_900 , 10.54 );
+      normalize(_hist_eta_nsd_n_32_900 , 15.225);
+      normalize(_hist_eta_nsd_n_42_900 , 19.885);
+      normalize(_hist_eta_nsd_n_52_900 , 25.13 );
+      normalize(_hist_eta_nsd_n_62_900 , 29.235);
+      normalize(_hist_eta_nsd_n_72_900 , 33.81 );
+      normalize(_hist_eta_nsd_n_82_900 , 41.75 );
+
+  }
+
+
+}


More information about the Rivet-svn mailing list