Celeritas  0.5.0-86+4a8eea4
Public Member Functions | List of all members
celeritas::EPlusGGInteractor Class Reference

Annihilate a positron to create two gammas. More...

#include <EPlusGGInteractor.hh>

Public Types

Type aliases
using Mass = units::MevMass
 
using Energy = units::MevEnergy
 

Public Member Functions

CELER_FUNCTION EPlusGGInteractor (EPlusGGData const &shared, ParticleTrackView const &particle, Real3 const &inc_direction, StackAllocator< Secondary > &allocate)
 Construct with shared and state data.
 
template<class Engine >
CELER_FUNCTION Interaction operator() (Engine &rng)
 Sample two gammas using the G4eeToTwoGammaModel model. More...
 

Detailed Description

Annihilate a positron to create two gammas.

This is a model for the discrete positron-electron annihilation process which simulates the in-flight annihilation of a positron with an atomic electron and produces into two photons. It is assumed that the atomic electron is initially free and at rest.

Note
This performs the same sampling routine as in Geant4's G4eeToTwoGammaModel class, as documented in section 10.3 of the Geant4 Physics Reference (release 10.6). The maximum energy for the model is specified in Geant4.

Member Function Documentation

◆ operator()()

template<class Engine >
CELER_FUNCTION Interaction celeritas::EPlusGGInteractor::operator() ( Engine &  rng)
inline

Sample two gammas using the G4eeToTwoGammaModel model.

Polarization is not implemented.


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