rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

STAR_BES_CALIB


Experiment: ()
Status: UNVALIDATED
No authors listed No references listed
Beams: * *
Beam energies: ANY
    No run details listed

Source code: STAR_BES_CALIB.cc
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// -*- C++ -*-
#include <iostream>
#include <string>
#include "Rivet/Analysis.hh"
#include "Rivet/Projections/ChargedFinalState.hh"
#include "Rivet/Projections/FinalState.hh"
#include "Rivet/Projections/ImpactParameterProjection.hh"
#include "Rivet/Projections/SingleValueProjection.hh"
#include "Rivet/Tools/Percentile.hh"
#include "Rivet/Tools/RHICCommon.hh"

namespace Rivet {

class STAR_BES_CALIB : public Analysis {
       public:
	STAR_BES_CALIB() : Analysis("STAR_BES_CALIB") {}
	void init() {
		declare(STAR_BES_Centrality(), "Centrality");
		declare(ImpactParameterProjection(), "IMP");
		// The calibrationhistogram:
		book(_calib, "CMULT", 100, 0.0, 200.0);

		// The alternative histogram based on impact parameter. Note
		// that it MUST be named the same as the histogram for the
		// experimental observable with an added _IMP suffix for the
		// Pecentile<> binning to work properly.
		book(_impcalib, "CMULT_IMP", 400, 0.0, 20.0);
	}

	void analyze(const Event& event) {

		_impcalib->fill(apply<SingleValueProjection>(event, "IMP")());

		_calib->fill(apply<STAR_BES_Centrality>(event, "Centrality")());
	}

	void finalize() {
		_calib->normalize();
		_impcalib->normalize();
	}

       private:
	/// The calibration histograms.
	Histo1DPtr _calib;
	Histo1DPtr _impcalib;

};

DECLARE_RIVET_PLUGIN(STAR_BES_CALIB);

}