Rivet analyses referenceMARKII_1987_I234976$\Xi^-$ production at 29 GeVExperiment: MARKII (PEP) Inspire ID: 234976 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_I234976.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/UnstableParticles.hh"
4
5namespace Rivet {
6
7
8 /// @brief Xi- production at 29 GeV
9 class MARKII_1987_I234976 : public Analysis {
10 public:
11
12 /// Constructor
13 RIVET_DEFAULT_ANALYSIS_CTOR(MARKII_1987_I234976);
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==3312)) {
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(29);
38 _h_rate->fill(29);
39 }
40 }
41
42
43 /// Normalise histograms etc., after the run
44 void finalize() {
45 scale(_h_spect, sqr(sqrtS())*crossSection()/nanobarn/sumOfWeights());
46 scale(_h_sigma, crossSection()/picobarn/sumOfWeights());
47 scale(_h_rate , 1./sumOfWeights());
48 }
49
50 ///@}
51
52
53 /// @name Histograms
54 ///@{
55 Histo1DPtr _h_spect;
56 BinnedHistoPtr<int> _h_sigma, _h_rate;
57 ///@}
58
59
60 };
61
62
63 RIVET_DECLARE_PLUGIN(MARKII_1987_I234976);
64
65}
|