rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

ALICE_2011_I881474

Strange particle production in proton-proton collisions at $\sqrt{s} = 0.9$ TeV with ALICE at the LHC.
Experiment: ALICE (LHC)
Inspire ID: 881474
Status: VALIDATED
Authors:
  • Pablo Bueno Gomez
  • Eva Sicking
References:
  • Eur.Phys.J.C71:1594,2011.
Beams: p+ p+
Beam energies: (450.0, 450.0) GeV
Run details:
  • Diffractive events need to be switched on.

Transverse momentum spectra of strange particles ($K^0_S$, $\Lambda$, $\phi$ and $\Xi$) in $pp$ collisions at $\sqrt{s} = 0.9$ TeV with ALICE at the LHC. The ratio of cross-sections as a function of pT for $\Lambda/K^0_S$ is also included.

Source code: ALICE_2011_I881474.cc
 1#include "Rivet/Analysis.hh"
 2#include "Rivet/Projections/FinalState.hh"
 3#include "Rivet/Projections/UnstableParticles.hh"
 4
 5namespace Rivet {
 6
 7
 8  class ALICE_2011_I881474 : public Analysis {
 9  public:
10
11    RIVET_DEFAULT_ANALYSIS_CTOR(ALICE_2011_I881474);
12
13
14    void init() {
15      const UnstableParticles ufs(Cuts::abseta < 15);
16      declare(ufs, "UFS");
17
18      book(_histPtK0s        ,1, 1, 1);
19      book(_histPtLambda     ,2, 1, 1);
20      book(_histPtAntiLambda ,3, 1, 1);
21      book(_histPtXi         ,4, 1, 1);
22      book(_histPtPhi        ,5, 1, 1);
23      book(_temp_h_Lambdas   ,"TMP/h_Lambdas", refData(6, 1, 1));
24      book(_temp_h_Kzeros    ,"TMP/h_Kzeros", refData(6, 1, 1));
25      book(_h_LamKzero       ,6, 1, 1);
26    }
27
28
29    void analyze(const Event& event) {
30      const UnstableParticles& ufs = apply<UnstableParticles>(event, "UFS");
31
32      for (const Particle& p : ufs.particles()) {
33        const double absrap = p.absrap();
34        const double pT = p.pT()/GeV;
35
36        if (absrap < 0.8) {
37          switch(p.pid()) {
38          case 3312:
39          case -3312:
40            if ( !( p.hasAncestorWith(Cuts::pid == 3334) || p.hasAncestorWith(Cuts::pid == -3334) ) ) {
41              _histPtXi->fill(pT);
42            }
43            break;
44            if (absrap < 0.75) {
45            case 310:
46              _histPtK0s->fill(pT);
47              _temp_h_Kzeros->fill(pT, 2);
48              break;
49            case 3122:
50              if ( !( p.hasAncestorWith(Cuts::pid == 3322) || p.hasAncestorWith(Cuts::pid == -3322) ||
51                      p.hasAncestorWith(Cuts::pid == 3312) || p.hasAncestorWith(Cuts::pid == -3312) ||
52                      p.hasAncestorWith(Cuts::pid == 3334) || p.hasAncestorWith(Cuts::pid == -3334) ) ) {
53                _histPtLambda->fill(pT);
54                _temp_h_Lambdas->fill(pT);
55              }
56              break;
57            case -3122:
58              if ( !( p.hasAncestorWith(Cuts::pid == 3322) || p.hasAncestorWith(Cuts::pid == -3322) ||
59                      p.hasAncestorWith(Cuts::pid == 3312) || p.hasAncestorWith(Cuts::pid == -3312) ||
60                      p.hasAncestorWith(Cuts::pid == 3334) || p.hasAncestorWith(Cuts::pid == -3334) ) ) {
61                _histPtAntiLambda->fill(pT);
62                _temp_h_Lambdas->fill(pT);
63              }
64              break;
65            }
66            if (absrap<0.6) {
67            case 333:
68              _histPtPhi->fill(pT);
69              break;
70            }
71          }
72        }
73      }
74    }
75
76
77    void finalize() {
78      scale(_histPtK0s,        1./(1.5*sumOfWeights()));
79      scale(_histPtLambda,     1./(1.5*sumOfWeights()));
80      scale(_histPtAntiLambda, 1./(1.5*sumOfWeights()));
81      scale(_histPtXi,         1./(1.6*sumOfWeights()));
82      scale(_histPtPhi,        1./(1.2*sumOfWeights()));
83      divide(_temp_h_Lambdas, _temp_h_Kzeros, _h_LamKzero);
84    }
85
86
87  private:
88
89    Histo1DPtr _histPtK0s, _histPtLambda, _histPtAntiLambda, _histPtXi, _histPtPhi;
90    Histo1DPtr _temp_h_Lambdas, _temp_h_Kzeros;
91    Estimate1DPtr _h_LamKzero;
92
93  };
94
95
96  RIVET_DECLARE_ALIASED_PLUGIN(ALICE_2011_I881474, ALICE_2011_S8909580);
97
98}