![]() |
Home · Overview · Users Guide · Reference Guide |
The class holds the complete event record. More...
#include "Event.h"
| void | list(ostream &os = cout) const |
| unsigned long | eventNumber |
| double | Q2 |
| double | W |
| double | t |
| double | s |
| double | y |
| double | xpom |
| double | beta |
| GammaPolarization | polarization |
| DiffractiveMode | diffractiveMode |
| vector<Particles> | particles |
The Event class holds the event record. The complete
event record (in the form of a pointer to an instance of Event)
is obtained via Sartre::generateEvent(). It is a lightweight
class with only one member function and all
data member are public. The class holds information about general
event characteristics (Q2, W, t, x, etc) as well as a
vector holding all particles involved in the event. Note that the
instance of the current event is deleted when the next event is generated.
In case you want to keep a certain event in your application you
need to keep a copy.
Note that in the incoherent case (with nuclear breakup on) Sartre does not conserve momentum/energy. The reason is that the generator that takes care of the nuclear breakup (gemini++) does not generate photons but only baryons. The event record is thus not 100% complete. This might be fixed in future versions of Sartre.
Event::list() prints the complete event record with the most useful information. A typical print-out (here e+Au) of two events, one coherent, the other incoherent, looks like this:
evt = 48 Q2 = 0.005 x = 2.096e-06
W = 51.145 y = 0.327
t = -0.034 xpom = 3.683e-03
pol = T diff = coherent
# id name status parents daughters px py pz E m
0 11 e- 4 - - 2 3 0.000 0.000 -20.000 20.000 5.110e-04
1 1000791970 Au(197) 4 - - 6 - 0.000 0.000 99.996 100.000 0.938
2 11 e- 1 0 - - - 0.047 -0.039 -13.463 13.463 5.110e-04
3 22 gamma 2 0 - 4 5 -0.047 0.039 -6.537 6.537 -0.074
4 443 J/psi 1 3 - - - -0.213 -0.043 -6.169 6.906 3.097
5 990 pomeron 2 3 3 6 - 0.166 0.081 -0.369 -0.369 -0.186
6 1000791970 Au(197) 1 1 5 - - 0.166 0.081 99.627 99.631 0.938
evt = 49 Q2 = 0.111 x = 7.746e-05
W = 37.784 y = 0.178
t = -0.059 xpom = 6.841e-03
pol = T diff = incoherent
# id name status parents daughters px py pz E m
0 11 e- 4 - - 2 3 0.000 0.000 -20.000 20.000 5.110e-04
1 1000791970 Au(197) 4 - - 6 - 0.000 0.000 99.996 100.000 0.938
2 11 e- 1 0 - - - -0.029 -0.300 -16.431 16.434 5.110e-04
3 22 gamma 2 0 - 4 5 0.029 0.300 -3.569 3.566 -0.332
4 443 J/psi 1 3 - - - 0.170 0.497 -2.876 4.259 3.097
5 990 pomeron 2 3 3 6 - -0.141 -0.197 -0.693 -0.693 -0.243
6 1000791970 Au(197) 2 1 5 - - -0.141 -0.197 99.303 99.307 0.940
7 2112 neutron 1 6 - - - -0.279 -0.156 108.304 108.309 0.940
8 1000010020 H(2) 1 6 - - - -0.086 -0.228 86.940 86.945 0.932
9 2112 neutron 1 6 - - - -0.186 -0.140 107.826 107.830 0.940
10 2112 neutron 1 6 - - - -0.237 -0.170 108.517 108.522 0.940
11 1000030080 Li(8) 1 6 - - - -0.057 -0.203 96.457 96.461 0.932
12 1000010020 H(2) 1 6 - - - -0.093 -0.129 86.289 86.294 0.932
13 1000020040 He(4) 1 6 - - - -0.219 -0.241 105.637 105.642 0.932
14 2112 neutron 1 6 - - - -0.106 -0.207 109.252 109.256 0.940
15 2112 neutron 1 6 - - - -0.092 -0.192 99.491 99.496 0.940
16 1000010030 H(3) 1 6 - - - -0.094 -0.280 98.482 98.487 0.932
17 1000010030 H(3) 1 6 - - - -0.142 -0.143 90.911 90.916 0.932
18 2112 neutron 1 6 - - - -0.224 -0.210 93.493 93.498 0.940
19 2112 neutron 1 6 - - - -0.204 -0.266 106.528 106.533 0.940
20 2112 neutron 1 6 - - - -0.076 -0.182 91.921 91.926 0.940
21 2112 neutron 1 6 - - - -0.102 -0.250 105.395 105.400 0.940
22 2112 neutron 1 6 - - - -0.208 -0.178 106.315 106.319 0.940
23 1000010020 H(2) 1 6 - - - -0.232 -0.144 99.072 99.077 0.932
24 2112 neutron 1 6 - - - -0.038 -0.219 97.387 97.392 0.940
25 2112 neutron 1 6 - - - -0.170 -0.263 103.741 103.745 0.940
26 1000020040 He(4) 1 6 - - - -0.091 -0.200 90.720 90.725 0.932
27 2112 neutron 1 6 - - - -0.192 -0.132 93.762 93.767 0.940
28 2112 neutron 1 6 - - - -0.183 -0.213 97.401 97.406 0.940
29 2112 neutron 1 6 - - - -0.183 -0.190 96.888 96.893 0.940
30 2112 neutron 1 6 - - - -0.098 -0.231 106.143 106.147 0.940
31 2112 neutron 1 6 - - - -0.171 -0.207 97.729 97.734 0.940
32 1000671520 Ho(152) 1 6 - - - -0.142 -0.193 98.776 98.780 0.932
Note that the products of the nuclear breakup in the incoherent case are only
listed when activated through the runcard (enableNuclearBreakup = true)
or programmatically (EventGeneratorSettings::setEnableNuclearBreakup(true))
.
It is off by default.
Momenta and energies for nuclei are always given as per nucleon.
Prints the current event record to output stream os (default
= cout). It is often useful to print few events of each run to see if everything
is set correctly or for debugging purposes. See the examples above.
Number of the current event. Event numbering starts at 0.
Q2 of the current event in GeV2.
W of the current event in GeV2.
t of the current event in GeV2.
Bjorken x of the current event.
Center-of-mass energy of the current event in GeV2. This is the same for all events in a run and is just recorded for convenience.
Inelasticity, y, of the current event.
xpomeron of the current event.
β of the current event. Can always be calculated via x/xpom but is recorded for convenience.
Polarization of the virtual photon.
Records if the event is coherent or incoherent.
All particles stable or decayed in the current event. See the class Particle reference for details.
Last Update: January 11, 2013 |