rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

BESIII_2017_I1505590

$\chi_{c2}$ decays to $K^+K^-\pi^0$, $K^0_SK^\pm\pi^\mp$ and $\pi^+\pi^-\pi^0$
Experiment: BESIII (BEPC)
Inspire ID: 1505590
Status: VALIDATED NOHEPDATA
Authors:
  • Peter Richardson
References:
  • Phys.Rev.D 96 (2017) 11, 111102
Beams: * *
Beam energies: ANY
Run details:
  • Any process producing chi_c2

Mass distributions in $\chi_{c2}$ decays to $K^+K^-\pi^0$, $K^0_SK^\pm\pi^\mp$ and $\pi^+\pi^-\pi^0$. The data was read from the plots in the paper and is not corrected for efficiency and acceptance.

Source code: BESIII_2017_I1505590.cc
  1// -*- C++ -*-
  2#include "Rivet/Analysis.hh"
  3#include "Rivet/Projections/UnstableParticles.hh"
  4#include "Rivet/Projections/DecayedParticles.hh"
  5
  6namespace Rivet {
  7
  8
  9  /// @brief chi_c2 decays
 10  class BESIII_2017_I1505590 : public Analysis {
 11  public:
 12
 13    /// Constructor
 14    RIVET_DEFAULT_ANALYSIS_CTOR(BESIII_2017_I1505590);
 15
 16
 17    /// @name Analysis methods
 18    /// @{
 19
 20    /// Book histograms and initialise projections before the run
 21    void init() {
 22      // projections
 23      UnstableParticles ufs = UnstableParticles(Cuts::pid==445);
 24      declare(ufs, "UFS");
 25      DecayedParticles chi(ufs);
 26      chi.addStable( PID::PI0);
 27      chi.addStable( PID::K0S);
 28      declare(chi, "chi");
 29      // histograms
 30      for(unsigned int ix=0; ix<4; ++ix) {
 31        if (ix<2)  book(_h[ix], 1, 1, 1+ix);
 32        book(_h[2+ix], 2, 1, 1+ix);
 33      }
 34    }
 35
 36
 37    /// Perform the per-event analysis
 38    void analyze(const Event& event) {
 39      DecayedParticles chi = apply<DecayedParticles>(event, "chi");
 40      // loop over particles
 41      for (unsigned int ix=0; ix<chi.decaying().size(); ++ix) {
 42        int sign=1;
 43        // K+ K- pi0
 44        if (chi.modeMatches(ix,3,mode1)) {
 45          const Particle& Kp  = chi.decayProducts()[ix].at( 321)[0];
 46          const Particle& Km  = chi.decayProducts()[ix].at(-321)[0];
 47          const Particle& pi0 = chi.decayProducts()[ix].at( 111)[0];
 48          _h[0]->fill((Kp.mom()+pi0.mom()).mass()/GeV);
 49          _h[0]->fill((Km.mom()+pi0.mom()).mass()/GeV);
 50          _h[1]->fill((Kp.mom()+Km .mom()).mass()/GeV);
 51          continue;
 52        }
 53        // pi+ pi- pi0
 54        else if (chi.modeMatches(ix,3,mode3)) {
 55          const Particle & pip  = chi.decayProducts()[ix].at( 211)[0];
 56          const Particle & pim  = chi.decayProducts()[ix].at(-211)[0];
 57          const Particle & pi0 = chi.decayProducts()[ix].at( 111)[0];
 58          _h[5]->fill((pip.mom()+pi0.mom()).mass()/GeV);
 59          _h[5]->fill((pim.mom()+pi0.mom()).mass()/GeV);
 60          continue;
 61        }
 62        else if (chi.modeMatches(ix,3,mode2)) {
 63          sign =  1;
 64        }
 65        else if (chi.modeMatches(ix,3,mode2CC)) {
 66          sign = -1;
 67        }
 68        else {
 69          continue;
 70        }
 71        const Particle& KS0 = chi.decayProducts()[ix].at(      310)[0];
 72        const Particle& Kp  = chi.decayProducts()[ix].at( sign*321)[0];
 73        const Particle & pim = chi.decayProducts()[ix].at(-sign*211)[0];
 74        _h[2]->fill((Kp .mom()+pim.mom()).mass()/GeV);
 75        _h[3]->fill((KS0.mom()+pim.mom()).mass()/GeV);
 76        _h[4]->fill((KS0.mom()+Kp .mom()).mass()/GeV);
 77      }
 78    }
 79
 80
 81    /// Normalise histograms etc., after the run
 82    void finalize() {
 83      normalize(_h, 1.0, false);
 84    }
 85
 86    /// @}
 87
 88
 89    /// @name Histograms
 90    /// @{
 91    Histo1DPtr _h[6];
 92    const map<PdgId,unsigned int> mode1   = { { 321,1}, {-321,1}, { 111,1} };
 93    const map<PdgId,unsigned int> mode2   = { { 310,1}, { 321,1}, {-211,1} };
 94    const map<PdgId,unsigned int> mode2CC = { { 310,1}, {-321,1}, { 211,1} };
 95    const map<PdgId,unsigned int> mode3   = { { 211,1}, {-211,1}, { 111,1} };
 96    /// @}
 97
 98
 99  };
100
101
102  RIVET_DECLARE_PLUGIN(BESIII_2017_I1505590);
103
104}