rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

BESIII_2022_I2593281

Cross section for $e^+e^-\to p p \bar{p}\bar{n}\pi^-$+c.c. at energies between 4.16 and 4.70 GeV
Experiment: BESIII (BEPC)
Inspire ID: 2593281
Status: VALIDATED NOHEPDATA SINGLEWEIGHT
Authors:
  • Peter Richardson
References: Beams: e+ e-
Beam energies: ANY
Run details:
  • e+e- to hadrons

Cross section for $e^+e^-\to p p \bar{p}\bar{n}\pi^-$+c.c. at energies between 4.16 and 4.70 GeV measured by the BESIII collaboration.

Source code: BESIII_2022_I2593281.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/FinalState.hh"
 4#include "Rivet/Projections/UnstableParticles.hh"
 5
 6namespace Rivet {
 7
 8
 9  /// @brief e+e- > p pbar p nbar pi- +cc
10  class BESIII_2022_I2593281 : public Analysis {
11  public:
12
13    /// Constructor
14    RIVET_DEFAULT_ANALYSIS_CTOR(BESIII_2022_I2593281);
15
16
17    /// @name Analysis methods
18    /// @{
19
20    /// Book histograms and initialise projections before the run
21    void init() {
22      // Initialise and register projections
23      declare(FinalState(), "FS");
24      declare(UnstableParticles(), "UFS");
25      book(_sigma, "/TMP/n", refData(1,1,1));
26      book(_est, 1, 1, 1);
27    }
28
29
30    /// Perform the per-event analysis
31    void analyze(const Event& event) {
32      const FinalState& fs = apply<FinalState>(event, "FS");
33      // total hadronic and muonic cross sections
34      map<long,int> nCount;
35      int ntotal(0);
36      for (const Particle& p : fs.particles()) {
37        nCount[p.pid()] += 1;
38        ++ntotal;
39      }
40      if ( ntotal == 5 &&
41         ((nCount[ 2212]==2 && nCount[-2212]==1 && nCount[-2112]==1 && nCount[-211]==1) ||
42          (nCount[-2212]==2 && nCount[ 2212]==1 && nCount[ 2112]==1 && nCount[ 211]==1))) _sigma->fill(sqrtS());
43    }
44
45
46    /// Normalise histograms etc., after the run
47    void finalize() {
48      scale(_sigma,crossSection()/ sumOfWeights() /femtobarn);
49      barchart(_sigma, _est);
50    }
51
52    /// @}
53
54
55    /// @name Histograms
56    /// @{
57    Histo1DPtr _sigma;
58    Estimate1DPtr _est;
59    /// @}
60
61
62  };
63
64
65  RIVET_DECLARE_PLUGIN(BESIII_2022_I2593281);
66
67}