DUNE StandardRecord
Base object for DUNE analysis files (CAFs)
SRTrueParticle.h
Go to the documentation of this file.
1 
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 
15 namespace 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  long int interaction_id = -1;
31  float time = NaN;
32 
34 
38 
39  int parent = -1;
40  std::vector<unsigned int> daughters;
41 
51 
62  unsigned int first_process;
63  unsigned int first_subprocess;
64  unsigned int end_process;
65  unsigned int end_subprocess;
67  };
68 
69 } // caf
70 
71 #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
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:30
TrueParticleID ancestor_id
The primary particle this particle descended from, if relevant.
Definition: SRTrueParticle.h:33
int parent
GEANT4 trackID of parent particle from this particle.
Definition: SRTrueParticle.h:39
float time
Generation time at true interaction vertex [ns].
Definition: SRTrueParticle.h:31
SRVector3D end_pos
Particle end position (decay, interaction, stop) [cm].
Definition: SRTrueParticle.h:37
unsigned int first_subprocess
GEANT4 subprocess code for this particle's creation or first step (see caveat on first_process).
Definition: SRTrueParticle.h:63
SRLorentzVector p
Momentum at generation point [GeV/c].
Definition: SRTrueParticle.h:35
SRVector3D start_pos
Particle generation position [cm].
Definition: SRTrueParticle.h:36
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:65
std::vector< unsigned int > daughters
GEANT4 trackIDs of daughter particles from this particle.
Definition: SRTrueParticle.h:40
unsigned int end_process
G4 process code for the particle's end.
Definition: SRTrueParticle.h:64
unsigned int first_process
Definition: SRTrueParticle.h:62
A 3-vector with more efficient storage than TVector3.
Definition: SRVector3D.h:26
Definition: SREnums.h:94
Common Analysis Files.
Definition: SRBeamBranch.h:13