Celeritas 0.6.0-dev.115+3b60a5fd
|
Set up and launch the optical Rayleigh scattering model interaction. More...
#include <RayleighModel.hh>
Classes | |
struct | Input |
Optional input for calculating MFP tables from material parameters. More... | |
Public Types | |
Type aliases | |
using | SPConstImported = std::shared_ptr< ImportedModels const > |
using | SPConstImportedMaterials = std::shared_ptr< ImportedMaterials const > |
using | SPConstMaterials = std::shared_ptr< MaterialParams const > |
using | SPConstCoreMaterials = std::shared_ptr<::celeritas::MaterialParams const > |
![]() | |
using | ModelBuilder = std::function< std::shared_ptr< Model >(ActionId)> |
Function to build optical models with a given action id. | |
![]() | |
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 > |
Public Member Functions | |
RayleighModel (ActionId id, SPConstImported imported, Input input) | |
Construct the model from imported data and imported material parameters. | |
void | build_mfps (OpticalMaterialId, MfpBuilder &) const final |
Build the mean free paths for the model. | |
void | step (CoreParams const &, CoreStateHost &) const final |
Execute the model on the host. | |
void | step (CoreParams const &, CoreStateDevice &) const final |
Execute the model on the device. | |
![]() | |
StepActionOrder | order () const override |
Action order for optical models is always post-step. | |
ConcreteAction (ActionId id, std::string label) noexcept(!CELERITAS_DEBUG) | |
Construct a concrete action from a label and ID. | |
ConcreteAction (ActionId id, std::string label, std::string description) noexcept(!CELERITAS_DEBUG) | |
Construct a concrete action from an ID, a unique label, and a description. | |
![]() | |
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. | |
![]() | |
virtual | ~ActionInterface () noexcept=0 |
Default destructor. | |
![]() | |
ConcreteAction (ActionId id, std::string label) noexcept(!CELERITAS_DEBUG) | |
Construct a concrete action from a label and ID. | |
ConcreteAction (ActionId id, std::string label, std::string description) noexcept(!CELERITAS_DEBUG) | |
Construct a concrete action from an ID, a unique label, and a description. | |
~ConcreteAction () noexcept override | |
Default destructor. | |
CELER_DELETE_COPY_MOVE (ConcreteAction) | |
ActionId | action_id () const final |
ID of this action for verification. | |
std::string_view | label () const final |
Short label. | |
std::string_view | description () const final |
Descriptive label. | |
Static Public Member Functions | |
static ModelBuilder | make_builder (SPConstImported, Input) |
Create a model builder for Rayleigh scattering from imported data and material parameters. | |
Additional Inherited Members | |
![]() | |
CELER_DEFAULT_COPY_MOVE (ActionInterface) | |
Set up and launch the optical Rayleigh scattering model interaction.
celeritas::optical::RayleighModel::RayleighModel | ( | ActionId | id, |
SPConstImported | imported, | ||
Input | input | ||
) |
Construct the model from imported data and imported material parameters.
Uses RayleighMfpCalculator
to calculate missing imported MFPs from material parameters, if available.
|
finalvirtual |
Build the mean free paths for the model.
Implements celeritas::optical::Model.
|
final |
Execute the model on the device.
Interact with device data.