rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

LHCB_2021_I1888216

$\Lambda_b^0/\bar{\Lambda}_b^0$ Asymmetry at 7 and 8 TeV
Experiment: LHCB (LHC)
Inspire ID: 1888216
Status: VALIDATED NOHEPDATA
Authors:
  • Peter Richardson
References:
  • JHEP 10 (2021) 060
Beams: p+ p+
Beam energies: (3500.0, 3500.0); (4000.0, 4000.0) GeV
Run details:
  • Lambda_b production

Measurement of the production asymmetry for $\Lambda_b^0/\bar{\Lambda}_b^0$ at 7 and 8 TeV by LHCb. Beam energy must be specified as analysis option "ENERGY" when rivet-merging samples.

Source code: LHCB_2021_I1888216.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/UnstableParticles.hh"
 4
 5namespace Rivet {
 6
 7
 8  /// @brief Lambda_b asymmetry
 9  class LHCB_2021_I1888216 : public Analysis {
10  public:
11
12    /// Constructor
13    RIVET_DEFAULT_ANALYSIS_CTOR(LHCB_2021_I1888216);
14
15
16    /// @name Analysis methods
17    /// @{
18
19    /// Book histograms and initialise projections before the run
20    void init() {
21      // projection
22      declare(UnstableParticles(), "UFS");
23      //histograms
24      for(unsigned int ix=0;ix<2;++ix) {
25	book(_h_y [ix],"TMP/h_y_ "+toString(ix+1),refData(1,1,1));
26	book(_h_pT[ix],"TMP/h_pT_"+toString(ix+1),refData(2,1,1));
27      }
28    }
29
30
31    /// Perform the per-event analysis
32    void analyze(const Event& event) {
33      const UnstableParticles& ufs = apply<UnstableParticles>(event, "UFS");
34      for (const Particle& p : ufs.particles(Cuts::abspid==5122) ) {
35	double pT = p.perp();
36	double y  = p.absrap();
37	if(y<2.15 ||  y>4.1) continue;
38	if(pT<2   || pT>27 ) continue;
39	bool anti = p.pid()<0;
40	_h_pT[anti]->fill(pT);
41	_h_y [anti]->fill(y);
42      }
43    }
44
45
46    /// Normalise histograms etc., after the run
47    void finalize() {
48      unsigned int is=0;
49      if (isCompatibleWithSqrtS(7000)) {
50      	is=1;
51      }
52      else if (isCompatibleWithSqrtS(8000)) {
53      	is=2;
54      }
55      else  {
56      	throw Error("Invalid CMS energy for LHCB_2021_I1888216");
57      }
58      // calculate asymmetry in %
59      Estimate1DPtr tmp;
60      book(tmp,1,1,is);
61      asymm(_h_y [0], _h_y[1],tmp);
62      tmp->scale(100.);
63      book(tmp,2,1,is);
64      asymm(_h_pT[0],_h_pT[1],tmp);
65      tmp->scale(100.);
66    }
67
68    /// @}
69
70
71    /// @name Histograms
72    /// @{
73    Histo1DPtr _h_pT[2],_h_y[2];
74    /// @}
75
76
77  };
78
79
80  RIVET_DECLARE_PLUGIN(LHCB_2021_I1888216);
81
82}