LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
genf::GFAbsEnergyLoss Class Referenceabstract

#include "GFAbsEnergyLoss.h"

Inheritance diagram for genf::GFAbsEnergyLoss:
genf::GFEnergyLossBetheBloch genf::GFEnergyLossBrems genf::GFEnergyLossCoulomb

Public Member Functions

virtual double energyLoss (const double &step, const double &mom, const int &pdg, const double &matDensity, const double &matZ, const double &matA, const double &radiationLength, const double &meanExcitationEnergy, const bool &doNoise=false, TMatrixT< Double_t > *noise=NULL, const TMatrixT< Double_t > *jacobian=NULL, const TVector3 *directionBefore=NULL, const TVector3 *directionAfter=NULL)=0
 Calculates energy loss in a given step, optional calculation of noise matrix. More...
 
virtual ~GFAbsEnergyLoss ()
 

Protected Member Functions

void getParticleParameters (const int &pdg, double &charge, double &mass)
 Gets particle charge and mass (in GeV) More...
 
double getParticleMass (const int &pdg)
 Returns particle mass (in GeV) More...
 

Detailed Description

Definition at line 45 of file GFAbsEnergyLoss.h.

Constructor & Destructor Documentation

genf::GFAbsEnergyLoss::~GFAbsEnergyLoss ( )
virtual

Definition at line 24 of file GFAbsEnergyLoss.cxx.

24 {}

Member Function Documentation

virtual double genf::GFAbsEnergyLoss::energyLoss ( const double &  step,
const double &  mom,
const int &  pdg,
const double &  matDensity,
const double &  matZ,
const double &  matA,
const double &  radiationLength,
const double &  meanExcitationEnergy,
const bool &  doNoise = false,
TMatrixT< Double_t > *  noise = NULL,
const TMatrixT< Double_t > *  jacobian = NULL,
const TVector3 *  directionBefore = NULL,
const TVector3 *  directionAfter = NULL 
)
pure virtual

Calculates energy loss in a given step, optional calculation of noise matrix.

Implemented in genf::GFEnergyLossCoulomb, genf::GFEnergyLossBetheBloch, and genf::GFEnergyLossBrems.

double genf::GFAbsEnergyLoss::getParticleMass ( const int &  pdg)
protected

Returns particle mass (in GeV)

Definition at line 33 of file GFAbsEnergyLoss.cxx.

References part.

Referenced by genf::GFEnergyLossBrems::energyLoss(), and genf::GFEnergyLossBetheBloch::energyLoss().

34 {
35  TParticlePDG* part = TDatabasePDG::Instance()->GetParticle(pdg);
36  return part->Mass();
37 }
TString part[npart]
Definition: Style.C:32
void genf::GFAbsEnergyLoss::getParticleParameters ( const int &  pdg,
double &  charge,
double &  mass 
)
protected

Gets particle charge and mass (in GeV)

Definition at line 26 of file GFAbsEnergyLoss.cxx.

References part.

Referenced by genf::GFEnergyLossBrems::energyLoss(), genf::GFEnergyLossBetheBloch::energyLoss(), and genf::GFEnergyLossCoulomb::energyLoss().

27 {
28  TParticlePDG* part = TDatabasePDG::Instance()->GetParticle(pdg);
29  charge = part->Charge() / (3.);
30  mass = part->Mass();
31 }
TString part[npart]
Definition: Style.C:32

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