Class EMTripletPairProduction

Inheritance Relationships

Base Type

Class Documentation

class EMTripletPairProduction : public Module

Electron triplet pair production of electrons with background photons.

This module simulates electron triplet pair production of electrons with background photons for several photon fields. The secondary electrons from this interaction are optionally created (default = false). The module limits the propagation step size to a fraction of the mean free path (default = 0.1).

Public Functions

EMTripletPairProduction(ref_ptr<PhotonField> photonField, bool haveElectrons = false, double limit = 0.1)

  • photonField: target photon background
  • haveElectrons: switch to create secondary electron pair
  • limit: step size limit as fraction of mean free path

void setPhotonField(ref_ptr<PhotonField> photonField)
void setHaveElectrons(bool haveElectrons)
void setLimit(double limit)
void initRate(std::string filename)
void initCumulativeRate(std::string filename)
void process(Candidate *candidate) const
void performInteraction(Candidate *candidate) const
std::string getDescription() const
void setDescription(const std::string &description)
void process(ref_ptr<Candidate> candidate) const
size_t addReference() const
size_t removeReference() const
int removeReferenceNoDelete() const
size_t getReferenceCount() const

Protected Attributes

size_t _referenceCount