|
Celeritas 0.7.0-3+develop.835656ac1
|
Initialize track states. More...
#include <InitializeTracksAction.hh>

Public Member Functions | |
| InitializeTracksAction (ActionId id) | |
| Construct with explicit Id. | |
| void | step (CoreParams const ¶ms, CoreStateHost &state) const final |
| Execute the action with host data. | |
| void | step (CoreParams const ¶ms, CoreStateDevice &state) const final |
| Execute the action with device data. | |
| ActionId | action_id () const final |
| ID of the action. | |
| std::string_view | label () const final |
| Short name for the action. | |
| std::string_view | description () const final |
| Description of the action for user interaction. | |
| StepActionOrder | order () const final |
| Dependency ordering of the action. | |
Public Member Functions inherited from celeritas::StepActionInterface< P, S > | |
| virtual void | step (P const &, S< MemSpace::host > &) const =0 |
| Execute the action with host data. | |
| virtual void | step (P const &, S< MemSpace::device > &) const =0 |
| Execute the action with device data. | |
Public Member Functions inherited from celeritas::ActionInterface | |
| virtual | ~ActionInterface () noexcept=0 |
| Default destructor. | |
Additional Inherited Members | |
Public Types inherited from celeritas::ActionTypeTraits< P, S > | |
| using | CoreParams = P |
| using | CoreStateHost = S< MemSpace::host > |
| using | CoreStateDevice = S< MemSpace::device > |
| using | SpanCoreStateHost = Span< S< MemSpace::host > *const > |
| using | SpanCoreStateDevice = Span< S< MemSpace::device > *const > |
Protected Member Functions inherited from celeritas::ActionInterface | |
| ActionInterface (ActionInterface const &)=default | |
| ActionInterface & | operator= (ActionInterface const &)=default |
| ActionInterface (ActionInterface &&)=default | |
| ActionInterface & | operator= (ActionInterface &&)=default |
Initialize track states.
Tracks created from secondaries produced in this action will have the geometry state copied over from the parent instead of initialized from the position. If there are more empty slots than new secondaries, they will be filled by any track initializers remaining from previous steps using the position.
With TrackOrder::init_charge, new neutral tracks are placed in the vacancies at the front of the track vector and new charged tracks in the vacancies at the back. The placement is determined on the device from a prefix sum of neutral flags over all track slots, so the number of new tracks never has to be copied to the host.
|
inlinefinalvirtual |
ID of the action.
Implements celeritas::ActionInterface.
|
inlinefinalvirtual |
Description of the action for user interaction.
Implements celeritas::ActionInterface.
|
inlinefinalvirtual |
Short name for the action.
Implements celeritas::ActionInterface.
|
inlinefinalvirtual |
Dependency ordering of the action.
Implements celeritas::StepActionInterface< P, S >.