rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

ATLAS_pPb_Calib

ATLAS proton-lead centrality calibration analysis.
Experiment: ()
Status: UNVALIDATED
Authors:
  • Leif Lönnblad
References: Beams: * *
Beam energies: ANY
Run details:
  • Any!

Calibration analysis for ATLAS pPb centrality. The centrality measure is $\sum E_\perp$ in the lead direction. The reference YODA file contains the experimental centrality calibration, but extracted from the plot in the paper. Note that this has not been unfolded for detector effects.

Source code: ATLAS_pPb_Calib.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Tools/AtlasCommon.hh"
 4#include "Rivet/Projections/ImpactParameterProjection.hh"
 5
 6namespace Rivet {
 7
 8
 9/// Generic analysis looking at various distributions of final state particles
10class ATLAS_pPb_Calib : public Analysis {
11
12public:
13
14  RIVET_DEFAULT_ANALYSIS_CTOR(ATLAS_pPb_Calib);
15
16  /// Book histograms and initialise projections before the run
17  void init() {
18
19    // One projection for the actual observable, and one for the
20    // generated impact parameter.
21    declare(ATLAS::SumET_PB_Centrality(), "Centrality");
22    declare(ImpactParameterProjection(), "IMP");
23    declare(ATLAS::MinBiasTrigger(), "Trigger");
24
25    // The calibrationhistogram:
26    book(_calib, "SumETPb", 100, 0.0, 200.0);
27
28    // The alternative histogram based on impact parameter. Note that
29    // it MUST be named the same as the histogram for the experimental
30    // observable with an added _IMP suffix for the Pecentile<>
31    // binning to work properly.
32    book(_impcalib, "SumETPb_IMP", 400, 0.0, 20.0);
33
34
35  }
36  
37  /// Perform the per-event analysis
38  void analyze(const Event& event) {
39    
40    // The alternative centrality based on generated impact
41    // parameter, assumes that the generator does not describe the
42    // full final state, and should therefore be filled even if the
43    // event is not triggered.
44    _impcalib->fill(apply<SingleValueProjection>(event, "IMP")());
45
46    if ( !apply<ATLAS::MinBiasTrigger>(event, "Trigger")() ) vetoEvent;
47
48    _calib->fill(apply<ATLAS::SumET_PB_Centrality>(event, "Centrality")());
49
50  }
51  
52  /// Finalize
53  void finalize() {
54
55    _calib->normalize();
56    _impcalib->normalize();
57
58  }
59
60private:
61
62  /// The calibration histograms.
63  Histo1DPtr _calib;
64  Histo1DPtr _impcalib;
65
66};
67
68
69// The hook for the plugin system
70RIVET_DECLARE_PLUGIN(ATLAS_pPb_Calib);
71
72}