|
Celeritas 0.7.0-dev.170+develop.df22d2a88
|
Base class for discrete, volumetric optical models. More...
#include <Model.hh>

Public Types | |
Type aliases | |
| using | ModelBuilder = std::function< std::shared_ptr< Model >(ActionId)> |
| Function to build optical models with a given action id. | |
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 > |
Public Member Functions | |
| StepActionOrder | order () const override |
| Action order for optical models is always post-step. | |
| virtual void | build_mfps (OptMatId mat, MfpBuilder &build) const =0 |
| Build mean free path grids for all optical materials. | |
| 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. | |
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. | |
Public Member Functions inherited from celeritas::ConcreteAction | |
| 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. | |
Additional Inherited Members | |
Protected Member Functions inherited from celeritas::ActionInterface | |
| CELER_DEFAULT_COPY_MOVE (ActionInterface) | |
Base class for discrete, volumetric optical models.
For optical physics, there is precisely one particle (optical photons) and one energy range (optical wavelengths), so only models and no processes are used in optical physics.
|
pure virtual |
Build mean free path grids for all optical materials.
Implemented in celeritas::optical::AbsorptionModel, celeritas::optical::MieModel, celeritas::optical::test::MockModel, celeritas::optical::RayleighModel, and celeritas::optical::WavelengthShiftModel.
|
inlineoverridevirtual |
Action order for optical models is always post-step.
Implements celeritas::StepActionInterface< P, S >.