rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

AMY_1990_I295160

Hadronic charged multiplicity measurement between 50 and 61.4 GeV
Experiment: AMY (TRISTAN)
Inspire ID: 295160
Status: VALIDATED
Authors:
  • Peter Richardson
References:
  • Phys.Rev. D42 (1990) 737-747
Beams: e+ e-
Beam energies: (25.0, 25.0); (26.0, 26.0); (27.5, 27.5); (28.0, 28.0); (28.5, 28.5); (30.0, 30.0); (30.4, 30.4); (30.7, 30.7); (28.5, 28.5) GeV
Run details:
  • Hadronic e+ e- events generated below the Z pole. Beam energy must be specified (in GeV) as analysis option "ENERGY" when rivet-merging samples.

The charged particle multiplicity distribution of hadronic $e^+e^-$ events as measured between 50 and 61.4 GeV using the AMY detector at TRISTAN. Beam energy must be specified (in GeV) as analysis option "ENERGY" when rivet-merging samples.

Source code: AMY_1990_I295160.cc
  1// -*- C++ -*-
  2#include "Rivet/Analysis.hh"
  3#include "Rivet/Projections/ChargedFinalState.hh"
  4
  5namespace Rivet {
  6
  7
  8  /// @brief Charged multiplicity below Z pole based on ALEPH Z pole analysis
  9  // @author Peter Richardson
 10  class AMY_1990_I295160 : public Analysis {
 11  public:
 12
 13    /// Constructor
 14    RIVET_DEFAULT_ANALYSIS_CTOR(AMY_1990_I295160);
 15
 16
 17    /// @name Analysis methods
 18    //@{
 19
 20    /// Book histograms and initialise projections before the run
 21    void init() {
 22      const ChargedFinalState cfs;
 23      declare(cfs, "CFS");
 24      int offset = 0;
 25      if(isCompatibleWithSqrtS(50.0)) {
 26	offset = 1;
 27      }
 28      else if(isCompatibleWithSqrtS(52.0)) {
 29	offset = 2;
 30      }
 31      else if(isCompatibleWithSqrtS(55.0)) {
 32	offset = 3;
 33      }
 34      else if(isCompatibleWithSqrtS(56.0)) {
 35	offset = 4;
 36      }
 37      else if(isCompatibleWithSqrtS(57.0)) {
 38	offset = 5;
 39      }
 40      else if(isCompatibleWithSqrtS(60.0)) {
 41	offset = 6;
 42      }
 43      else if(isCompatibleWithSqrtS(60.8)) {
 44	offset = 7;
 45      }
 46      else if(isCompatibleWithSqrtS(61.4)) {
 47	offset = 8;
 48      }
 49      else {
 50        MSG_WARNING("CoM energy of events sqrt(s) = " << sqrtS()/GeV
 51                    << " doesn't match any available analysis energy .");
 52      }
 53      book( _histChTotal , 1, 1, offset);
 54      book( _histTotal , 2, 1, 1);
 55      if(offset==5) {
 56	book( _histChAver, 1, 1, 9);
 57	book( _histAver, 2, 2, 1);
 58      }
 59    }
 60
 61
 62    /// Perform the per-event analysis
 63    void analyze(const Event& event) {
 64      const FinalState& cfs = apply<FinalState>(event, "CFS");
 65      MSG_DEBUG("Total charged multiplicity = " << cfs.size());
 66      _histChTotal->fill(cfs.size());
 67      _histTotal->fill(sqrtS()/GeV,cfs.size());
 68      if(_histAver) {
 69	_histChAver->fill(cfs.size());
 70	_histAver->fill(sqrtS()/GeV,cfs.size());
 71      }
 72    }
 73
 74
 75    /// Normalise histograms etc., after the run
 76    void finalize() {
 77      
 78      scale(_histChTotal, 200.0/sumOfWeights()); // bin width (2) and %age (100)
 79      if(_histAver) 
 80	scale(_histChAver, 200.0/sumOfWeights());
 81    }
 82
 83    //@}
 84
 85
 86  private:
 87
 88    /// @name Histograms
 89    //@{
 90    Histo1DPtr _histChTotal;
 91    Histo1DPtr _histChAver;
 92    Profile1DPtr _histTotal;
 93    Profile1DPtr _histAver;
 94    //@}
 95
 96  };
 97
 98
 99  // The hook for the plugin system
100  RIVET_DECLARE_PLUGIN(AMY_1990_I295160);
101
102
103}