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

Livermore model for the photoelectric effect. More...

#include <LivermorePEInteractor.hh>

Public Types

Type aliases
using Energy = units::MevEnergy
 

Public Member Functions

CELER_FUNCTION LivermorePEInteractor (LivermorePERef const &shared, AtomicRelaxationHelper const &relaxation, ElementId el_id, ParticleTrackView const &particle, CutoffView const &cutoffs, Real3 const &inc_direction, StackAllocator< Secondary > &allocate)
 Construct with shared and state data. More...
 
template<class Engine >
CELER_FUNCTION Interaction operator() (Engine &rng)
 Sample using the Livermore model for the photoelectric effect.
 

Detailed Description

Livermore model for the photoelectric effect.

A parameterization of the photoelectric cross sections in two different energy intervals, formulated as

\[ \sigma(E) = a_1 / E + a_2 / E^2 + a_3 / E^3 + a_4 / E^4 + a_5 / E^5 + a_6 / E^6 \: , \]

is used. The coefficients for this model are calculated by fitting the tabulated EPICS2014 subshell cross sections. The parameterized model applies above approximately 5 keV; below this limit (which depends on the atomic number) the tabulated cross sections are used. The angle of the emitted photoelectron is sampled from the Sauter-Gavrila distribution.

Note
This performs the same sampling routine as in Geant4's G4LivermorePhotoElectricModel class, as documented in section 6.3.5 of the Geant4 Physics Reference (release 10.6).

Constructor & Destructor Documentation

◆ LivermorePEInteractor()

CELER_FUNCTION celeritas::LivermorePEInteractor::LivermorePEInteractor ( LivermorePERef const &  shared,
AtomicRelaxationHelper const &  relaxation,
ElementId  el_id,
ParticleTrackView const &  particle,
CutoffView const &  cutoffs,
Real3 const &  inc_direction,
StackAllocator< Secondary > &  allocate 
)
inline

Construct with shared and state data.

The incident particle must be above the energy threshold: this should be handled in code before the interactor is constructed.


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