DUNE StandardRecord
Base object for DUNE analysis files (CAFs)
Loading...
Searching...
No Matches
SRTrueParticle.h
Go to the documentation of this file.
1
5
6#ifndef DUNEANAOBJ_SRTRUEPARTICLE_H
7#define DUNEANAOBJ_SRTRUEPARTICLE_H
8
9#include <vector>
10
11#include "duneanaobj/StandardRecord/SREnums.h"
12#include "duneanaobj/StandardRecord/SRLorentzVector.h"
14
15namespace caf
16{
17
22 {
23 private:
24 // just to keep the typing under control below
25 static constexpr float NaN = std::numeric_limits<float>::signaling_NaN();
26
27 public:
28 int pdg = 0;
29 int G4ID = -1;
30
31 long int interaction_id = -1;
32 double time = NaN;
33
35
39
40 int parent = -1;
41 std::vector<unsigned int> daughters;
42
44 std::vector<TrueParticleID> daughtersID;
45
55
66 unsigned int first_process = 0;
67 unsigned int first_subprocess = 0;
68 unsigned int end_process = 0;
69 unsigned int end_subprocess = 0;
71 };
72
73} // caf
74
75#endif //DUNEANAOBJ_SRTRUEPARTICLE_H
3-vector class with more efficient storage than TVector3. Ported from NOvA StandardRecord.
Definition: SRLorentzVector.h:28
Definition: SRTrueParticle.h:22
TrueParticleID parentID
SR index reference to parent particle (ixn + type + part index); unset if primary or not found.
Definition: SRTrueParticle.h:43
int pdg
Particle.
Definition: SRTrueParticle.h:28
long int interaction_id
True interaction ID (edep-sim 'vertexID' for ND, or GENIe record number for FD) of the source of this...
Definition: SRTrueParticle.h:31
double time
Generation time at true interaction vertex [ns].
Definition: SRTrueParticle.h:32
TrueParticleID ancestor_id
The primary particle this particle descended from, if relevant.
Definition: SRTrueParticle.h:34
int parent
GEANT4 trackID of parent particle from this particle.
Definition: SRTrueParticle.h:40
SRVector3D end_pos
Particle end position (decay, interaction, stop) [cm].
Definition: SRTrueParticle.h:38
unsigned int first_subprocess
GEANT4 subprocess code for this particle's creation or first step (see caveat on first_process).
Definition: SRTrueParticle.h:67
SRLorentzVector p
Momentum at generation point [GeV/c].
Definition: SRTrueParticle.h:36
SRVector3D start_pos
Particle generation position [cm].
Definition: SRTrueParticle.h:37
int G4ID
ID of the particle (taken from GEANT4 – -1 if this particle is not propogated by G4)
Definition: SRTrueParticle.h:29
unsigned int end_subprocess
G4 subprocess code for the particle's end.
Definition: SRTrueParticle.h:69
std::vector< unsigned int > daughters
GEANT4 trackIDs of daughter particles from this particle.
Definition: SRTrueParticle.h:41
unsigned int end_process
G4 process code for the particle's end.
Definition: SRTrueParticle.h:68
std::vector< TrueParticleID > daughtersID
SR index references to daughter particles.
Definition: SRTrueParticle.h:44
unsigned int first_process
Definition: SRTrueParticle.h:66
A 3-vector with more efficient storage than TVector3.
Definition: SRVector3D.h:26
Definition: SREnums.h:102
Common Analysis Files.
Definition: Navigate.cxx:8