|
Celeritas 0.7.0-dev.194+develop.0df4cab59
|
Helper class for emitting an AlongStep action. More...
#include <AlongStepFactory.hh>

Public Types | |
Type aliases | |
| using | argument_type = AlongStepFactoryInput const & |
| using | result_type = std::shared_ptr< CoreStepActionInterface const > |
Public Member Functions | |
| virtual result_type | operator() (argument_type input) const =0 |
Protected Member Functions | |
| CELER_DEFAULT_COPY_MOVE (AlongStepFactoryInterface) | |
Helper class for emitting an AlongStep action.
Currently Celeritas accepts a single custom along-step action (i.e., the same stepper is used for charged particles across all energies and regions of the problem). The along-step action is a single GPU kernel that combines the field stepper selection, the magnetic field, slowing-down calculation, multiple scattering, and energy loss fluctuations.
The factory will be called from the thread that initializes SharedParams. Instead of a daughter class, you can provide any function-like object that has the same interface.
Celeritas provides a few "default" configurations of along-step actions in celeritas/alongstep.
|
pure virtual |