rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

CLEO_1990_I298611

Measurement of the $\Lambda_c^+$ spectrum at 10.55 GeV
Experiment: CLEO (CESR)
Inspire ID: 298611
Status: VALIDATED
Authors:
  • Peter Richardson
References:
  • Phys.Rev. D43 (1991) 3599-3610, 1991
Beams: e+ e-
Beam energies: (5.3, 5.3) GeV
Run details:
  • e+e- to hadrons

Measurement for the scaled momentum spectrum for $\Lambda_c^+$ baryons in the continuum by CLEO.

Source code: CLEO_1990_I298611.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/Beam.hh"
 4#include "Rivet/Projections/UnstableParticles.hh"
 5
 6namespace Rivet {
 7
 8
 9  /// @brief Lambda_c spectra
10  class CLEO_1990_I298611 : public Analysis {
11  public:
12
13    /// Constructor
14    RIVET_DEFAULT_ANALYSIS_CTOR(CLEO_1990_I298611);
15
16
17    /// @name Analysis methods
18    /// @{
19
20    /// Book histograms and initialise projections before the run
21    void init() {
22      // projections
23      declare(Beam(), "Beams");
24      declare(UnstableParticles(), "UFS");
25      // histograms
26      for(unsigned int ix=0;ix<6;++ix) {
27	_h_x.push_back(Histo1DPtr());
28	book(_h_x[ix],ix+1,1,1);
29      }
30    }
31
32
33    /// Perform the per-event analysis
34    void analyze(const Event& event) {
35      // Get beams and average beam momentum
36      const ParticlePair& beams = apply<Beam>(event, "Beams").beams();
37      const double Emax = ( beams.first.p3().mod() + beams.second.p3().mod() ) / 2.0;
38      const double Pmax = sqrt(sqr(Emax)-sqr(2.28646));
39      const UnstableParticles& ufs = apply<UnstableParticles>(event, "UFS");
40      for (const Particle& p : ufs.particles(Cuts::abspid==4122)) {
41	double xp = p.momentum().p3().mod()/Pmax;
42        for(unsigned int ix=0;ix<6;++ix)
43	  _h_x[ix]->fill(xp);
44      }
45    }
46
47
48    /// Normalise histograms etc., after the run
49    void finalize() {
50      // branching ratios for the different modes used in the measurements
51      double br[6]={0.0623,2.*0.0158,2.*0.0159,
52		    0.0129,0.0361   ,0.0062};
53      for(unsigned int ix=0;ix<6;++ix)
54	scale(_h_x[ix],crossSection()*br[ix]/picobarn/sumOfWeights());
55    }
56
57    /// @}
58
59
60    /// @name Histograms
61    /// @{
62    vector<Histo1DPtr> _h_x;
63    /// @}
64
65
66  };
67
68
69  RIVET_DECLARE_PLUGIN(CLEO_1990_I298611);
70
71}