Class EMDoublePairProduction¶
- Defined in File EMDoublePairProduction.h
Inheritance Relationships¶
Base Type¶
public Module
(Class Module)
Class Documentation¶
-
class
EMDoublePairProduction
: public Module¶ Electron double pair production of photons with background photons.
This module simulates electron double pair production of photons 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). Thinning is available. A thinning of 0 means that all particles are tracked. For the maximum thinning of 1, only a few representative particles are added to the list of secondaries. Note that for thinning>0 the output must contain the column “weights”, which should be included in the post-processing.
Public Functions
-
EMDoublePairProduction
(ref_ptr<PhotonField> photonField, bool haveElectrons = false, double thinning = 0, double limit = 0.1)¶ - Parameters
photonField
: target photon backgroundhaveElectrons
: switch to create the secondary electron pairthinning
: weighted sampling of secondaries (0: all particles are tracked; 1: maximum thinning)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
setThinning
(double thinning)¶
-
void
initRate
(std::string filename)¶
-
void
process
(Candidate *candidate) const
-
std::string
getDescription
() const
-
void
setDescription
(const std::string &description)
-
size_t
addReference
() const
-
size_t
removeReference
() const
-
int
removeReferenceNoDelete
() const
-
size_t
getReferenceCount
() const
Protected Attributes
-
size_t
_referenceCount
-