Rivet API documentation

Rivet 4.1.3
HepMCHeavyIon.hh
1// -*- C++ -*-
2#ifndef RIVET_HepMCHeavyIon_HH
3#define RIVET_HepMCHeavyIon_HH
4
5#include "Rivet/Event.hh"
6#include "Rivet/Projection.hh"
7#include "Rivet/Tools/RivetHepMC.hh"
8
9namespace Rivet {
10
11
12 class HepMCHeavyIon : public Projection {
13 public:
14
17
20
23
25
27 using Projection::operator=;
28
29
30 protected:
31
33 void project(const Event& e);
34
36 //int compare(const Projection& p) const;
37 // Taken from Thrust.hh
38 CmpState compare(const Projection&) const {
39 return CmpState::EQ;
40 }
41
42 public:
43
45 bool ok() const {
46 return _hi != nullptr;
47 }
48
54 int Ncoll_hard() const;
55
61 int Npart_proj() const;
62
68 int Npart_targ() const;
69
77 int Ncoll() const;
84
91
98
103 double impact_parameter() const;
104
111 double event_plane_angle() const;
117 double sigma_inel_NN() const;
118
124 double centrality() const;
125
133 double user_cent_estimate() const;
134
140 int Nspec_proj_n() const;
141
147 int Nspec_targ_n() const;
148
154 int Nspec_proj_p() const;
155
161 int Nspec_targ_p() const;
162
168 map<int, double> participant_plane_angles() const;
169
174 map<int, double> eccentricities() const;
175
176
177 protected:
178
180 ConstGenHeavyIonPtr _hi;
181 };
182}
183
184
185#endif
int Nwounded_Nwounded_collisions() const
Non-diffractive or doubly diffractive collisions.
RIVET_DEFAULT_PROJ_CLONE(HepMCHeavyIon)
Clone on the heap.
double impact_parameter() const
The impact parameter.
double user_cent_estimate() const
A user defined centrality estimator.
int Npart_proj() const
the number of participating nucleons in the projectile.
double event_plane_angle() const
The event plane angle.
int Nspec_targ_n() const
The number of spectator neutrons in the target.
map< int, double > eccentricities() const
Eccentricities.
map< int, double > participant_plane_angles() const
Participant plane angles.
int Nwounded_N_collisions() const
Collisions with a diffractively excited projectile nucleon.
int Nspec_proj_p() const
The number of spectator protons in the projectile.
int N_Nwounded_collisions() const
Collisions with a diffractively excited target nucleon.
double sigma_inel_NN() const
The assumed inelastic nucleon-nucleon cross section.
int Npart_targ() const
the number of participating nucleons in the target.
CmpState compare(const Projection &) const
Compare with other projections.
Definition HepMCHeavyIon.hh:38
bool ok() const
Check that there were at all any heavy ion info in HepMC.
Definition HepMCHeavyIon.hh:45
HepMCHeavyIon()
Constructor.
int Nspec_targ_p() const
The number of spectator protons in the target.
double centrality() const
The centrality.
int Ncoll() const
the number of inelastic nucleon-nucleon collisions.
void project(const Event &e)
Perform the projection on the Event.
int Ncoll_hard() const
the number of hard nucleon-nucleon collisions.
int Nspec_proj_n() const
The number of spectator neutrons in the projectile.
Projection()
The default constructor.
friend class Event
Event is a friend.
Definition Projection.hh:33
Definition LHCbCommon.hh:9