All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TrueParticle.h
Go to the documentation of this file.
1 #ifndef _sbnumurecodata_TrueParticle_hh
2 #define _sbnumurecodata_TrueParticle_hh
3 
4 #include <vector>
5 
6 #include "TVector3.h"
7 
8 namespace numu {
9 
10 enum Wall {
11  wNone=0,
12  wTop=1,
14  wLeft=3,
15  wRight=4,
16  wFront=5,
18 };
19 
20 /**
21 * Information on true particles
22 */
23 struct TrueParticle {
24  TVector3 start_momentum; //!< Particle directional momentum for first trajectory point inside TPC AV [GeV]
25  TVector3 end_momentum; //!< Particle directional momentum for last trajectory point inside TPC AV [GeV]
26  float start_energy; //!< Particle energy for first point inside TPC AV [GeV]
27  float end_energy; //!< Particle energy for last point inside TPC AV [GeV]
28  float deposited_energy; //!< Total particle energy depositive in TPC AV [GeV]
29 
30  TVector3 start; //!< start position of track
31  TVector3 end; //!< end position of track
32  float start_time; //!< start time of track
33  float end_time; //!< end time of track
34 
35  Wall wall_enter; //!< the face of the TPC that the particle crosses on enter
36  Wall wall_exit; //!< the face of the TPC that the particle crosses on exit
37  bool contained_in_cryo; //!< is it contained a single cryostat?
38  bool contained_in_tpc; //!< is it contained in a single TPC?
39  bool crosses_tpc; //!< does it cross a tpc?
40  bool is_contained; //!< is it contained in a single cryostat active volume
41 
42  float length; //!< Length of track contained in any TPC active volume [cm]
43  int pdgid; //!< Particle ID code
44 
45  bool is_cosmic; //!< Whether this particle is of cosmic origin
46 
47  int ID; //!< ID/index of this particle (taken from MCParticle ID)
48 
50  start_momentum(-1, -1, -1),
51  end_momentum(-1, -1, -1),
52  start_energy(-1),
53  end_energy(-1),
54  start(-999, -999, -999),
55  end(-999, -999, -999),
56  start_time(-1),
57  end_time(-1),
58  wall_enter(numu::wNone),
59  wall_exit(numu::wNone),
64  length(-1),
65  pdgid(-1),
66  ID(-1)
67  {}
68 };
69 } // namespace numu
70 #endif
TVector3 start_momentum
Particle directional momentum for first trajectory point inside TPC AV [GeV].
Definition: TrueParticle.h:24
int ID
ID/index of this particle (taken from MCParticle ID)
Definition: TrueParticle.h:47
bool is_cosmic
Whether this particle is of cosmic origin.
Definition: TrueParticle.h:45
TVector3 end_momentum
Particle directional momentum for last trajectory point inside TPC AV [GeV].
Definition: TrueParticle.h:25
bool is_contained
is it contained in a single cryostat active volume
Definition: TrueParticle.h:40
float length
Length of track contained in any TPC active volume [cm].
Definition: TrueParticle.h:42
TVector3 start
start position of track
Definition: TrueParticle.h:30
bool crosses_tpc
does it cross a tpc?
Definition: TrueParticle.h:39
float end_energy
Particle energy for last point inside TPC AV [GeV].
Definition: TrueParticle.h:27
bool contained_in_cryo
is it contained a single cryostat?
Definition: TrueParticle.h:37
float start_energy
Particle energy for first point inside TPC AV [GeV].
Definition: TrueParticle.h:26
TVector3 end
end position of track
Definition: TrueParticle.h:31
float deposited_energy
Total particle energy depositive in TPC AV [GeV].
Definition: TrueParticle.h:28
int pdgid
Particle ID code.
Definition: TrueParticle.h:43
bool contained_in_tpc
is it contained in a single TPC?
Definition: TrueParticle.h:38
Wall wall_enter
the face of the TPC that the particle crosses on enter
Definition: TrueParticle.h:35
Wall wall_exit
the face of the TPC that the particle crosses on exit
Definition: TrueParticle.h:36
float start_time
start time of track
Definition: TrueParticle.h:32
float end_time
end time of track
Definition: TrueParticle.h:33