Celeritas 0.6.0-dev.115+3b60a5fd
|
Manage physics processes and models. More...
#include <PhysicsParams.hh>
Classes | |
struct | Input |
Physics parameter construction arguments. More... | |
Public Types | |
Type aliases | |
using | SPConstParticles = std::shared_ptr< ParticleParams const > |
using | SPConstMaterials = std::shared_ptr< MaterialParams const > |
using | SPConstProcess = std::shared_ptr< Process const > |
using | SPConstModel = std::shared_ptr< Model const > |
using | SPConstRelaxation = std::shared_ptr< AtomicRelaxationParams const > |
using | VecProcess = std::vector< SPConstProcess > |
using | SpanConstProcessId = Span< ProcessId const > |
using | ActionIdRange = Range< ActionId > |
using | Options = PhysicsParamsOptions |
![]() | |
using | HostRef = HostCRef< PhysicsParamsData > |
using | DeviceRef = DeviceCRef< PhysicsParamsData > |
Public Member Functions | |
PhysicsParams (Input) | |
Construct with processes and helper classes. | |
ModelId::size_type | num_models () const |
Number of models. | |
ProcessId::size_type | num_processes () const |
Number of processes. | |
ParticleId::size_type | num_particles () const |
Number of particle types. | |
ProcessId::size_type | max_particle_processes () const |
Number of particle types. | |
SPConstModel const & | model (ModelId) const |
Get a model. | |
SPConstProcess const & | process (ProcessId) const |
Get a process. | |
ProcessId | process_id (ModelId id) const |
Get the process ID of the given model. | |
ActionIdRange | model_actions () const |
Get the action kernel IDs for all models. | |
SpanConstProcessId | processes (ParticleId) const |
Get the list of process IDs that apply to a particle type. | |
HostRef const & | host_ref () const final |
Access physics properties on the host. | |
DeviceRef const & | device_ref () const final |
Access physics properties on the device. | |
![]() | |
PhysicsParamsData< Ownership::const_reference, M > const & | ref () const |
PhysicsParamsData< Ownership::const_reference, M > const & | ref () const |
Dispatch a "ref" call to host or device data. | |
Additional Inherited Members | |
![]() | |
CELER_DEFAULT_COPY_MOVE (ParamsDataInterface) | |
Manage physics processes and models.
The physics params takes a vector of processes and sets up the processes and models. It constructs data and mappings of data:
During construction it constructs models and their corresponding list of ActionId
values, as well as the tables of cross section data. Besides the individual interaction kernels, the physics parameters manage additional actions:
|
inlinefinalvirtual |
Access physics properties on the device.
Implements celeritas::ParamsDataInterface< PhysicsParamsData >.
|
inlinefinalvirtual |
Access physics properties on the host.
Implements celeritas::ParamsDataInterface< PhysicsParamsData >.