Celeritas
0.5.0-56+6b053cd
|
Persistent shared physics data. More...
#include <PhysicsData.hh>
Public Types | |
template<class T > | |
using | Items = Collection< T, W, M > |
template<class T > | |
using | ParticleItems = Collection< T, W, M, ParticleId > |
template<class T > | |
using | ParticleModelItems = Collection< T, W, M, ParticleModelId > |
Public Member Functions | |
CELER_FUNCTION | operator bool () const |
True if assigned. | |
template<Ownership W2, MemSpace M2> | |
PhysicsParamsData & | operator= (PhysicsParamsData< W2, M2 > const &other) |
Assign from another set of data. | |
Public Attributes | |
Items< real_type > | reals |
Items< ParticleModelId > | pmodel_ids |
Items< ValueGrid > | value_grids |
Items< ValueGridId > | value_grid_ids |
Items< ProcessId > | process_ids |
Items< ValueTable > | value_tables |
Items< ValueTableId > | value_table_ids |
Items< IntegralXsProcess > | integral_xs |
Items< ModelGroup > | model_groups |
ParticleItems< ProcessGroup > | process_groups |
ParticleModelItems< ModelId > | model_ids |
ParticleModelItems< ModelXsTable > | model_xs |
HardwiredModels< W, M > | hardwired |
PhysicsParamsScalars | scalars |
Persistent shared physics data.
This includes macroscopic cross section, energy loss, and range tables ordered by [particle][process][material][energy].
So the first applicable process (ProcessId{0}) for an arbitrary particle (ParticleId{1}) in material 2 (MaterialId{2}) will have the following ID and cross section grid: