Celeritas 0.6.0-dev.115+3b60a5fd
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
celeritas::ProcessGroup Struct Reference

Processes for a single particle type. More...

#include <PhysicsData.hh>

Public Member Functions

CELER_FUNCTION operator bool () const
 True if assigned and valid.
 
CELER_FUNCTION ParticleProcessId::size_type size () const
 Number of processes that apply.
 

Public Attributes

ItemRange< ProcessIdprocesses
 Processes that apply [ppid].
 
ItemRange< ModelGroupmodels
 Model applicability [ppid].
 
ItemRange< IntegralXsProcessintegral_xs
 [ppid]
 
ItemRange< ValueTablemacro_xs
 [ppid]
 
ValueTableId energy_loss
 Process-integrated energy loss.
 
ValueTableId range
 Process-integrated range.
 
ParticleProcessId at_rest
 ID of the particle's at-rest process.
 

Detailed Description

Processes for a single particle type.

Each index should be accessed with type ParticleProcessId. macro_xs stores the cross section tables for each process, while energy_loss and range are the process-integrated dE/dx and range for the particle. integral_xs will only be assigned if the integral approach is used and the particle has continuous-discrete processes.

Todo:
If it's possible for a particle to have multiple at-rest processes, at_rest should be the process with the smallest lifetime. This is used in select_discrete_interaction to choose the at-rest process with the smallest time to interaction if the particle is stopped and has a process that applies at rest.

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