All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
sim::IDE Struct Reference

Ionization at a point of the TPC sensitive volume. More...

#include <SimChannel.h>

Public Types

typedef int TrackID_t
 Type of track ID (the value comes from Geant4) More...
 

Public Member Functions

 IDE ()
 Default constructor (sets "bogus" values) More...
 
 IDE (IDE const &ide, int offset)
 Constructor: copies an IDE, and applies the specified offset to track ID. More...
 
 IDE (TrackID_t tid, float nel, float e, float xpos, float ypos, float zpos, TrackID_t gid=util::kBogusI)
 Constructor: sets all data members. More...
 

Public Attributes

TrackID_t trackID
 Geant4 supplied track ID. More...
 
float numElectrons
 number of electrons at the readout for this track ID and time More...
 
float energy
 energy deposited by ionization by this track ID and time [MeV] More...
 
float x
 x position of ionization [cm] More...
 
float y
 y position of ionization [cm] More...
 
float z
 z position of ionization [cm] More...
 
TrackID_t origTrackID
 Geant4 supplied track ID (remains true trackID even for shower secondaries/tertiaries etc) More...
 

Detailed Description

Ionization at a point of the TPC sensitive volume.

This class stores information about the ionization from the simulation of a small step of a track through the TPC active volume.

Ionization information consists of both energy and number of electrons. It is of paramount importance to understand what each field stores:

Note the different definition of the electrons respect to the rest: it describes the electrons at the anode after the drifting occurred, while all the other quantities can be related to the moment the ionization happened.

The number of electrons typically includes inefficiencies and physics effects that reduce and spread the electrons. In the simulation, this yields a fractional number of electrons.

Each IDE is also typically associated with a time (TDC) count, that is the time at which the ionized electrons reached the readout channel, in electronic ticks, as opposed as the time when ionization occurred. The latter is not stored.

At the time of writing this documentation (LArSoft 6.4.0), IDEs are computed in larg4::LArVoxelReadout. The energy and track ID come directly from Geant4 simulation. The position is the mid point of the Geant4 step that produced ionization. The electrons are

  1. converted from that same energy (using a fundamental conversion factor stored in larcoreobj/SimpleTypesAndConstants/PhysicalConstants.h)
  2. applied recombination effect by larg4::IonizationAndScintillation::Reset()
  3. applied attenuation and diffusion in larg4::LArVoxelReadout::DriftIonizationElectrons()

The latter also assembles the sim::IDE objects to be stored into sim::SimChannel.

Definition at line 86 of file SimChannel.h.

Member Typedef Documentation

typedef int sim::IDE::TrackID_t

Type of track ID (the value comes from Geant4)

Definition at line 89 of file SimChannel.h.

Constructor & Destructor Documentation

sim::IDE::IDE ( )

Default constructor (sets "bogus" values)

Definition at line 23 of file SimChannel.cxx.

27  , x (util::kBogusD)
28  , y (util::kBogusD)
29  , z (util::kBogusD)
31  {}
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:116
float z
z position of ionization [cm]
Definition: SimChannel.h:121
TrackID_t origTrackID
Geant4 supplied track ID (remains true trackID even for shower secondaries/tertiaries etc) ...
Definition: SimChannel.h:122
constexpr int kBogusI
obviously bogus integer value
float x
x position of ionization [cm]
Definition: SimChannel.h:119
float energy
energy deposited by ionization by this track ID and time [MeV]
Definition: SimChannel.h:118
float y
y position of ionization [cm]
Definition: SimChannel.h:120
constexpr double kBogusD
obviously bogus double value
float numElectrons
number of electrons at the readout for this track ID and time
Definition: SimChannel.h:117
sim::IDE::IDE ( sim::IDE const &  ide,
int  offset 
)

Constructor: copies an IDE, and applies the specified offset to track ID.

Definition at line 34 of file SimChannel.cxx.

35  : IDE(ide)
36  {
37 
40 
41  }
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:116
BEGIN_PROLOG TPC Trig offset(g4 rise time) ProjectToHeight
Definition: CORSIKAGen.fcl:7
TrackID_t origTrackID
Geant4 supplied track ID (remains true trackID even for shower secondaries/tertiaries etc) ...
Definition: SimChannel.h:122
IDE()
Default constructor (sets &quot;bogus&quot; values)
Definition: SimChannel.cxx:23
sim::IDE::IDE ( TrackID_t  tid,
float  nel,
float  e,
float  xpos,
float  ypos,
float  zpos,
TrackID_t  gid = util::kBogusI 
)
inline

Constructor: sets all data members.

Definition at line 99 of file SimChannel.h.

106  : trackID (tid)
107  , numElectrons(nel)
108  , energy (e)
109  , x (xpos)
110  , y (ypos)
111  , z (zpos)
112  , origTrackID (gid)
113  {}
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:116
float z
z position of ionization [cm]
Definition: SimChannel.h:121
TrackID_t origTrackID
Geant4 supplied track ID (remains true trackID even for shower secondaries/tertiaries etc) ...
Definition: SimChannel.h:122
float x
x position of ionization [cm]
Definition: SimChannel.h:119
float energy
energy deposited by ionization by this track ID and time [MeV]
Definition: SimChannel.h:118
float y
y position of ionization [cm]
Definition: SimChannel.h:120
do i e
float numElectrons
number of electrons at the readout for this track ID and time
Definition: SimChannel.h:117

Member Data Documentation

float sim::IDE::energy

energy deposited by ionization by this track ID and time [MeV]

Definition at line 118 of file SimChannel.h.

float sim::IDE::numElectrons

number of electrons at the readout for this track ID and time

Definition at line 117 of file SimChannel.h.

TrackID_t sim::IDE::origTrackID

Geant4 supplied track ID (remains true trackID even for shower secondaries/tertiaries etc)

Definition at line 122 of file SimChannel.h.

TrackID_t sim::IDE::trackID

Geant4 supplied track ID.

Definition at line 116 of file SimChannel.h.

float sim::IDE::x

x position of ionization [cm]

Definition at line 119 of file SimChannel.h.

float sim::IDE::y

y position of ionization [cm]

Definition at line 120 of file SimChannel.h.

float sim::IDE::z

z position of ionization [cm]

Definition at line 121 of file SimChannel.h.


The documentation for this struct was generated from the following files: