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

Energy deposition in the active material (lite version). More...

#include <SimEnergyDepositLite.h>

Public Types

using Length_t = float
 
using Point_t = geo::Point_t
 

Public Member Functions

 SimEnergyDepositLite (double e=0., geo::Point_t middle={0., 0., 0.}, double t=0., int id=0)
 
double Energy () const
 
geo::Point_t const & Position () const noexcept
 
geo::Point_t const & MidPoint () const noexcept
 Just an alias for compatibility with SED. More...
 
double Time () const
 
int TrackID () const
 
geo::Length_t X () const
 
geo::Length_t Y () const
 
geo::Length_t Z () const
 
double T () const
 
double E () const
 
bool operator< (const SimEnergyDepositLite &rhs) const
 
 operator sim::SimEnergyDeposit () const
 

Private Attributes

float edep
 energy deposition (MeV) More...
 
geo::Point_t middlePos
 position in (cm) More...
 
double middleTime
 (ns) More...
 
int trackID
 simulation track id More...
 

Detailed Description

Energy deposition in the active material (lite version).

The detector simulation (presently LArG4, which invokes Geant4) propagates particles through the detector in intervals of "steps". These are usually stored in sim::SimEnergyDeposit objects. For filesize concerns we pare it down to the essential information.

Definition at line 28 of file SimEnergyDepositLite.h.

Member Typedef Documentation

Definition at line 32 of file SimEnergyDepositLite.h.

Definition at line 33 of file SimEnergyDepositLite.h.

Constructor & Destructor Documentation

sim::SimEnergyDepositLite::SimEnergyDepositLite ( double  e = 0.,
geo::Point_t  middle = {0., 0., 0.},
double  t = 0.,
int  id = 0 
)
inline

Definition at line 35 of file SimEnergyDepositLite.h.

36  {0., 0., 0.},
37  double t = 0.,
38  int id = 0)
39  : edep(e)
40  , middlePos(middle)
41  , middleTime(t)
42  , trackID(id)
43  {}
geo::Point_t middlePos
position in (cm)
int trackID
simulation track id
float edep
energy deposition (MeV)
do i e

Member Function Documentation

double sim::SimEnergyDepositLite::E ( ) const
inline

Definition at line 55 of file SimEnergyDepositLite.h.

55 { return edep; }
float edep
energy deposition (MeV)
double sim::SimEnergyDepositLite::Energy ( ) const
inline

Definition at line 45 of file SimEnergyDepositLite.h.

45 { return edep; }
float edep
energy deposition (MeV)
geo::Point_t const& sim::SimEnergyDepositLite::MidPoint ( ) const
inlinenoexcept

Just an alias for compatibility with SED.

Definition at line 47 of file SimEnergyDepositLite.h.

sim::SimEnergyDepositLite::operator sim::SimEnergyDeposit ( ) const
inline

Definition at line 74 of file SimEnergyDepositLite.h.

74  {
75  return sim::SimEnergyDeposit(0, 0, 0,
76  edep,
77  middlePos,
78  middlePos,
79  middleTime,
80  middleTime,
81  trackID,
82  0);
83  }
geo::Point_t middlePos
position in (cm)
int trackID
simulation track id
float edep
energy deposition (MeV)
Energy deposition in the active material.
bool sim::SimEnergyDepositLite::operator< ( const SimEnergyDepositLite rhs) const
inline

Definition at line 57 of file SimEnergyDepositLite.h.

58  {
59  if (trackID < rhs.trackID) return true;
60  if (trackID > rhs.trackID) return false;
61  if (middleTime < rhs.middleTime) return true;
62  if (middleTime > rhs.middleTime) return false;
63  if (middlePos.Z() < rhs.Z()) return true;
64  if (middlePos.Z() > rhs.Z()) return false;
65  if (middlePos.Y() < rhs.Y()) return true;
66  if (middlePos.Y() > rhs.Y()) return false;
67  if (middlePos.X() < rhs.X()) return true;
68  if (middlePos.X() > rhs.X()) return false;
69  return (edep > rhs.edep); // sort by _decreasing_ energy
70  }
geo::Point_t middlePos
position in (cm)
int trackID
simulation track id
float edep
energy deposition (MeV)
geo::Point_t const& sim::SimEnergyDepositLite::Position ( ) const
inlinenoexcept

Definition at line 46 of file SimEnergyDepositLite.h.

46 { return middlePos; }
geo::Point_t middlePos
position in (cm)
double sim::SimEnergyDepositLite::T ( ) const
inline

Definition at line 54 of file SimEnergyDepositLite.h.

54 { return middleTime; }
double sim::SimEnergyDepositLite::Time ( ) const
inline

Definition at line 48 of file SimEnergyDepositLite.h.

48 { return middleTime; }
int sim::SimEnergyDepositLite::TrackID ( ) const
inline

Definition at line 49 of file SimEnergyDepositLite.h.

49 { return trackID; }
int trackID
simulation track id
geo::Length_t sim::SimEnergyDepositLite::X ( ) const
inline

Definition at line 51 of file SimEnergyDepositLite.h.

51 { return middlePos.X(); }
geo::Point_t middlePos
position in (cm)
geo::Length_t sim::SimEnergyDepositLite::Y ( ) const
inline

Definition at line 52 of file SimEnergyDepositLite.h.

52 { return middlePos.Y(); }
geo::Point_t middlePos
position in (cm)
geo::Length_t sim::SimEnergyDepositLite::Z ( ) const
inline

Definition at line 53 of file SimEnergyDepositLite.h.

53 { return middlePos.Z(); }
geo::Point_t middlePos
position in (cm)

Member Data Documentation

float sim::SimEnergyDepositLite::edep
private

energy deposition (MeV)

Definition at line 86 of file SimEnergyDepositLite.h.

geo::Point_t sim::SimEnergyDepositLite::middlePos
private

position in (cm)

Definition at line 87 of file SimEnergyDepositLite.h.

double sim::SimEnergyDepositLite::middleTime
private

(ns)

Definition at line 88 of file SimEnergyDepositLite.h.

int sim::SimEnergyDepositLite::trackID
private

simulation track id

Definition at line 89 of file SimEnergyDepositLite.h.


The documentation for this class was generated from the following file: