Rivet analyses referenceMARKII_1987_I247900$\Omega^-$ production at 29 GeVExperiment: MARKII (PEP) Inspire ID: 247900 Status: VALIDATED Authors:
Beam energies: (14.5, 14.5) GeV Run details:
Rate and spectrum for $\Omega^-$ baryon production at 29 GeV measured by the MARKII collaboration. Source code: MARKII_1987_I247900.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/UnstableParticles.hh"
4
5namespace Rivet {
6
7
8 /// @brief Omega production at 29 GeV
9 class MARKII_1987_I247900 : public Analysis {
10 public:
11
12 /// Constructor
13 RIVET_DEFAULT_ANALYSIS_CTOR(MARKII_1987_I247900);
14
15
16 /// @name Analysis methods
17 ///@{
18
19 /// Book histograms and initialise projections before the run
20 void init() {
21 // Initialise and register projections
22 declare(UnstableParticles(), "UFS");
23 //Histograms
24 book(_h_spect,1,1,1);
25 book(_h_sigma,2,1,1);
26 book(_h_rate ,2,1,2);
27 }
28
29
30 /// Perform the per-event analysis
31 void analyze(const Event& event) {
32 const UnstableParticles& ufs = apply<UnstableParticles>(event, "UFS");
33 for (const Particle& p : ufs.particles(Cuts::abspid==3334)) {
34 const double xp = 2.*p.E()/sqrtS();
35 const double beta = p.p3().mod() / p.E();
36 _h_spect->fill(xp,1./beta);
37 _h_sigma->fill(sqrtS());
38 _h_rate->fill(sqrtS());
39 }
40 }
41
42
43 /// Normalise histograms etc., after the run
44 void finalize() {
45
46 scale(_h_spect, sqr(sqrtS())*crossSection()/nanobarn/sumOfWeights());
47 scale(_h_sigma, crossSection()/picobarn/sumOfWeights());
48 scale(_h_rate , 1./sumOfWeights());
49 }
50
51 ///@}
52
53
54 /// @name Histograms
55 ///@{
56 Histo1DPtr _h_spect,_h_sigma,_h_rate;
57 ///@}
58
59
60 };
61
62
63 RIVET_DECLARE_PLUGIN(MARKII_1987_I247900);
64
65}
|