Rivet analyses referenceALICE_2021_I1862793Prompt $\Xi_{c}^{0}$ and $\Xi_{c}^{+}$ analysisExperiment: ALICE (LHC) Inspire ID: 1862793 Status: VALIDATED Authors:
Beam energies: (6500.0, 6500.0) GeV Run details:
The $p_\text{T}$-differential cross sections of prompt charm-strange baryons $\Xi^0_{c}$ and $\Xi^+_{c}$ were measured at midrapidity ($|y| < 0.5$) in proton--proton (pp) collisions at a centre-of-mass energy $\sqrt{s}=$ 13 TeV with the ALICE detector at the LHC. The $\Xi^0_{c}$ baryon was reconstructed via both the semileptonic decay ($\Xi^{-}{e^{+}}\nu_{e}$) and the hadronic decay ($\Xi^{-}{\pi^{+}}$) channels. The $\Xi^+_{c}$ baryon was reconstructed via the hadronic decay ($\Xi^{-}\pi^{+}\pi^{+}$) channel. The branching-fraction ratio ${BR}(\Xi_c^0\rightarrow \Xi^-e^+\nu_e)/{\rm BR}(\Xi_c^0\rightarrow \Xi^{-}\pi^+)=$ 1.38 $\pm$ 0.14 (stat) $\pm$ 0.22 (syst) was measured with a total uncertainty reduced by a factor of about 3 with respect to the current world average reported by the Particle Data Group. The transverse momentum ($p_\text{T}$) dependence of the $\Xi^0_{c}$- and $\Xi^+_{c}$-baryon production relative to the ${D^0}$-meson and to the $\Sigma^{0,+,++}_{c}$- and $\Lambda^+_{c}$-baryon production are reported. The baryon-to-meson ratio increases towards low $p_\text{T}$ up to a value of approximately 0.3. The measurements are compared with various models that take different hadronisation mechanisms into consideration. The results provide stringent constraints to these theoretical calculations and additional evidence that different processes are involved in charm hadronisation in electron--positron ($e^+e^-$) and hadronic collisions. Source code: ALICE_2021_I1862793.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/UnstableParticles.hh"
4
5namespace Rivet {
6
7 /// @brief Prompt charm-strange baryons in pp at 13 TeV
8 class ALICE_2021_I1862793 : public Analysis {
9 public:
10
11 RIVET_DEFAULT_ANALYSIS_CTOR(ALICE_2021_I1862793);
12
13 void init() {
14
15 const UnstableParticles up(Cuts::absrap < 0.5);
16 declare(up, "up");
17
18 book(_h_X0,1,1,1); // XiC0 production cross section
19 book(_h_XP,2,1,1); // XiC+ production cross section
20 book(_h_X0D0,3,1,1); // ratio of production cross section between XiC0 and D0
21 book(_h_XPDP,4,1,1); // ratio of production cross section between XiC+ and D0
22 book(_h_X0Lc,5,1,1); // ratio of production cross section between XiC and LambdaC
23 book(_h_XcSc,6,1,1); // ratio of production cross section between XiC and SigmaC
24 book(_h_X0Iint,"TMP/Xint", refData(7,1,1)); // XiC0 pt-integrated production cross section with 1<pt<12 GeV/c
25 book(_h_X0Oint,8,1,1); // XiC0 pt-integrated production cross section with pt>0 GeV/c
26 book(_h_XPint,9,1,1); // XiC+ pt-integrated production cross section with 4<pt<12 GeV/c
27
28
29 book(_h_X0D,"TMP/_h_X0D",refData(3,1,1)); // XiC0 production cross section
30 book(_h_D0,"TMP/_h_D0",refData(3,1,1)); // D0 production cross section
31
32 book(_h_DP,"TMP/_h_DP",refData(4,1,1)); // D0 production cross section
33 book(_h_XPD,"TMP/_h_XPD",refData(4,1,1)); // XiC+ production cross section
34
35 book(_h_Lc,"TMP/_h_Lc",refData(5,1,1)); // LambdaC production cross section
36 book(_h_X0L,"TMP/_h_X0L",refData(5,1,1)); // XiC0 production cross section
37
38 book(_h_Sc,"TMP/_h_Sc",refData(6,1,1)); // SigmaC production cross section
39 book(_h_Xc,"TMP/_h_Xc",refData(6,1,1)); // XiC production cross section
40
41
42 }
43
44
45 void analyze(const Event& event) {
46 if(_edges.empty()) _edges=_h_X0Oint->xEdges();
47 const UnstableParticles& up = apply<UnstableParticles>(event, "up");
48
49 for (const Particle& p : up.particles()) {
50 if(p.fromBottom())
51 continue;
52
53 else{
54 if(p.abspid() == 4222 || p.abspid() == 4212 || p.abspid() == 4112){
55 _h_Sc->fill(p.pT()/GeV);
56 }
57
58 else if(p.abspid() == 4122){
59 _h_Lc->fill(p.pT()/GeV);
60 }
61
62 else if(p.abspid() == 421){
63 _h_D0->fill(p.pT()/GeV);
64 _h_DP->fill(p.pT()/GeV);
65 }
66
67 else if(p.abspid() == 4132){
68 _h_X0->fill(p.pT()/GeV);
69 _h_X0D->fill(p.pT()/GeV);
70 _h_Xc->fill(p.pT()/GeV);
71 _h_X0L->fill(p.pT()/GeV);
72 _h_X0Oint->fill(_edges[0]);
73
74 if(p.pT()/GeV < 12.0 && p.pT()/GeV >= 1.0){
75 _h_X0Iint->fill(1);
76 }
77
78 }
79
80 else if(p.abspid() == 4232){
81 _h_XP->fill(p.pT()/GeV);
82 _h_Xc->fill(p.pT()/GeV);
83 _h_XPD->fill(p.pT()/GeV);
84
85 if(p.pT()/GeV < 12.0 && p.pT()/GeV >= 4.0){
86 _h_XPint->fill(8);
87 }
88 }
89 }
90 }
91 }
92
93 void finalize() {
94
95 scale(_h_Sc, crossSection()/(microbarn*2*sumOfWeights()));
96 scale(_h_Lc, crossSection()/(microbarn*2*sumOfWeights()));
97 scale(_h_D0, crossSection()/(microbarn*2*sumOfWeights()));
98 scale(_h_DP, crossSection()/(microbarn*2*sumOfWeights()));
99
100 scale(_h_Xc, crossSection()/(microbarn*2*sumOfWeights()));
101 scale(_h_X0, crossSection()/(microbarn*2*sumOfWeights()));
102 scale(_h_XP, crossSection()/(microbarn*2*sumOfWeights()));
103
104 scale(_h_X0D, crossSection()/(microbarn*2*sumOfWeights()));
105 scale(_h_XPD, crossSection()/(microbarn*2*sumOfWeights()));
106 scale(_h_X0L, crossSection()/(microbarn*2*sumOfWeights()));
107
108 divide(_h_X0D, _h_D0, _h_X0D0);
109 divide(_h_XPD, _h_DP, _h_XPDP);
110 divide(_h_X0L, _h_Lc, _h_X0Lc);
111 divide(_h_Xc, _h_Sc, _h_XcSc);
112
113 scale(_h_X0Iint, crossSection()/(microbarn*2*sumOfWeights()));
114 Estimate1DPtr tmp;
115 book(tmp,7,1,1);
116 barchart(_h_X0Iint,tmp);
117 scale(_h_X0Oint, crossSection()/(microbarn*2*sumOfWeights()));
118 scale(_h_XPint, crossSection()/(microbarn*2*sumOfWeights()));
119
120 }
121
122 Histo1DPtr _h_X0, _h_XP, _h_X0Iint, _h_XPint, _h_Sc, _h_Lc, _h_D0, _h_DP, _h_Xc, _h_X0D, _h_XPD, _h_X0L;
123 Estimate1DPtr _h_X0D0, _h_XPDP, _h_X0Lc, _h_XcSc;
124 BinnedHistoPtr<string> _h_X0Oint;
125 vector<string> _edges;
126
127 };
128
129
130 RIVET_DECLARE_PLUGIN(ALICE_2021_I1862793);
131
132}
|