LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
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 27 of file SimEnergyDepositLite.h.

Member Typedef Documentation

Definition at line 29 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 32 of file SimEnergyDepositLite.h.

33  {0., 0., 0.},
34  double t = 0.,
35  int id = 0)
36  : edep(e), middlePos(middle), middleTime(t), trackID(id)
37  {}
geo::Point_t middlePos
position in (cm)
int trackID
simulation track id
float edep
energy deposition (MeV)
Float_t e
Definition: plot.C:35

Member Function Documentation

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

Definition at line 52 of file SimEnergyDepositLite.h.

References edep.

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

Definition at line 39 of file SimEnergyDepositLite.h.

References edep.

39 { 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 41 of file SimEnergyDepositLite.h.

References Position().

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

Definition at line 71 of file SimEnergyDepositLite.h.

References edep, middlePos, middleTime, and trackID.

72  {
73  return sim::SimEnergyDeposit(
75  }
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 54 of file SimEnergyDepositLite.h.

References edep, middlePos, middleTime, trackID, X(), Y(), and Z().

55  {
56  if (trackID < rhs.trackID) return true;
57  if (trackID > rhs.trackID) return false;
58  if (middleTime < rhs.middleTime) return true;
59  if (middleTime > rhs.middleTime) return false;
60  if (middlePos.Z() < rhs.Z()) return true;
61  if (middlePos.Z() > rhs.Z()) return false;
62  if (middlePos.Y() < rhs.Y()) return true;
63  if (middlePos.Y() > rhs.Y()) return false;
64  if (middlePos.X() < rhs.X()) return true;
65  if (middlePos.X() > rhs.X()) return false;
66  return (edep > rhs.edep); // sort by _decreasing_ energy
67  }
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 40 of file SimEnergyDepositLite.h.

References middlePos.

Referenced by MidPoint().

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

Definition at line 51 of file SimEnergyDepositLite.h.

References middleTime.

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

Definition at line 45 of file SimEnergyDepositLite.h.

References middleTime.

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

Definition at line 46 of file SimEnergyDepositLite.h.

References trackID.

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

Definition at line 48 of file SimEnergyDepositLite.h.

References middlePos.

Referenced by operator<().

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

Definition at line 49 of file SimEnergyDepositLite.h.

References middlePos.

Referenced by operator<().

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

Definition at line 50 of file SimEnergyDepositLite.h.

References middlePos.

Referenced by operator<().

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

Member Data Documentation

float sim::SimEnergyDepositLite::edep
private

energy deposition (MeV)

Definition at line 78 of file SimEnergyDepositLite.h.

Referenced by E(), Energy(), operator sim::SimEnergyDeposit(), and operator<().

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

position in (cm)

Definition at line 79 of file SimEnergyDepositLite.h.

Referenced by operator sim::SimEnergyDeposit(), operator<(), Position(), X(), Y(), and Z().

double sim::SimEnergyDepositLite::middleTime
private

(ns)

Definition at line 80 of file SimEnergyDepositLite.h.

Referenced by operator sim::SimEnergyDeposit(), operator<(), T(), and Time().

int sim::SimEnergyDepositLite::trackID
private

simulation track id

Definition at line 81 of file SimEnergyDepositLite.h.

Referenced by operator sim::SimEnergyDeposit(), operator<(), and TrackID().


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