Rivet analyses referenceDM1_1981_I166353Cross section for $e^+e^-\to 3\pi^+3\pi^-$ between 1.4 and 2.11 GeVExperiment: DM1 (DCI) Inspire ID: 166353 Status: VALIDATED Authors:
Beam energies: ANY Run details:
Cross section for $e^+e^-\to3\pi^+3\pi^-$ between 1.4 and 2.18 GeV Source code: DM1_1981_I166353.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/FinalState.hh"
4
5namespace Rivet {
6
7
8 /// @brief e+e- > 3pi+3pi-
9 class DM1_1981_I166353 : public Analysis {
10 public:
11
12 /// Constructor
13 RIVET_DEFAULT_ANALYSIS_CTOR(DM1_1981_I166353);
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(FinalState(), "FS");
23 book(_num3pip3pim, "TMP/num3pip3pim",refData(1,1,1));
24 }
25
26
27 /// Perform the per-event analysis
28 void analyze(const Event& event) {
29 const FinalState& fs = apply<FinalState>(event, "FS");
30 int ntotal(0);
31 for (const Particle& p : fs.particles()) {
32 if(abs(p.pid())!=211) vetoEvent;
33 ++ntotal;
34 }
35 if(ntotal!=6) vetoEvent;
36 _num3pip3pim->fill(sqrtS()/GeV);
37 }
38
39
40 /// Normalise histograms etc., after the run
41 void finalize() {
42 scale(_num3pip3pim,crossSection()/ sumOfWeights() /nanobarn);
43 Estimate1DPtr mult;
44 book(mult, 1, 1, 1);
45 barchart(_num3pip3pim,mult);
46 }
47 /// @}
48
49 /// @name Histograms
50 /// @{
51 Histo1DPtr _num3pip3pim;
52 /// @}
53
54 };
55
56
57 RIVET_DECLARE_PLUGIN(DM1_1981_I166353);
58
59
60}
|