LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
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)
 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...
 

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:

  • position: where the ionization occurred (from Geant4 simulation)
  • track ID: Geant4 track ID of the ionizing particle
  • energy: amount of energy released by ionization (from Geant4 simulation)
  • electrons: amount of electrons reaching the readout channel

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 87 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 90 of file SimChannel.h.

Constructor & Destructor Documentation

sim::IDE::IDE ( )

Default constructor (sets "bogus" values)

Definition at line 24 of file SimChannel.cxx.

28  , x (util::kBogusD)
29  , y (util::kBogusD)
30  , z (util::kBogusD)
31  {}
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:115
float z
z position of ionization [cm]
Definition: SimChannel.h:120
constexpr int kBogusI
obviously bogus integer value
float x
x position of ionization [cm]
Definition: SimChannel.h:118
float energy
energy deposited by ionization by this track ID and time [MeV]
Definition: SimChannel.h:117
float y
y position of ionization [cm]
Definition: SimChannel.h:119
constexpr double kBogusD
obviously bogus double value
float numElectrons
number of electrons at the readout for this track ID and time
Definition: SimChannel.h:116
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.

References trackID.

35  : IDE(ide)
36  {
37  trackID += offset;
38  }
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:115
IDE()
Default constructor (sets "bogus" values)
Definition: SimChannel.cxx:24
sim::IDE::IDE ( TrackID_t  tid,
float  nel,
float  e,
float  xpos,
float  ypos,
float  zpos 
)
inline

Constructor: sets all data members.

Definition at line 100 of file SimChannel.h.

106  : trackID (tid)
107  , numElectrons(nel)
108  , energy (e)
109  , x (xpos)
110  , y (ypos)
111  , z (zpos)
112  {}
TrackID_t trackID
Geant4 supplied track ID.
Definition: SimChannel.h:115
float z
z position of ionization [cm]
Definition: SimChannel.h:120
float x
x position of ionization [cm]
Definition: SimChannel.h:118
float energy
energy deposited by ionization by this track ID and time [MeV]
Definition: SimChannel.h:117
float y
y position of ionization [cm]
Definition: SimChannel.h:119
Float_t e
Definition: plot.C:34
float numElectrons
number of electrons at the readout for this track ID and time
Definition: SimChannel.h:116

Member Data Documentation

float sim::IDE::energy

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

Definition at line 117 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), and sim::SimChannel::TrackIDsAndEnergies().

float sim::IDE::numElectrons

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

Definition at line 116 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), and sim::SimChannel::TrackIDsAndEnergies().

TrackID_t sim::IDE::trackID

Geant4 supplied track ID.

Definition at line 115 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), IDE(), and cheat::BackTracker::TrackIdToSimIDEs_Ps().

float sim::IDE::x

x position of ionization [cm]

Definition at line 118 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), and sim::SimChannel::TrackIDsAndEnergies().

float sim::IDE::y

y position of ionization [cm]

Definition at line 119 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), and sim::SimChannel::TrackIDsAndEnergies().

float sim::IDE::z

z position of ionization [cm]

Definition at line 120 of file SimChannel.h.

Referenced by sim::SimChannel::Dump(), and sim::SimChannel::TrackIDsAndEnergies().


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