Celeritas 0.7.0-dev.79+develop.b3dc2e108
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::optical::SurfaceModel Class Referenceabstract

Optical surface physics model. More...

#include <SurfaceModel.hh>

Inheritance diagram for celeritas::optical::SurfaceModel:
Inheritance graph
[legend]

Public Types

Type aliases
using CoreStateHost = CoreState< MemSpace::host >
 
using CoreStateDevice = CoreState< MemSpace::device >
 
- Public Types inherited from celeritas::SurfaceModel
using VecSurfaceLayer = std::vector< PhysSurfaceId >
 Vector of surfaces.
 
using InternalSurfaceId = OpaqueId< struct InternalModelSurface_ >
 Opaque index of surface data in the list for a particular surface model.
 

Public Member Functions

virtual void step (CoreParams const &, CoreStateHost &) const =0
 Execute the model with host data.
 
virtual void step (CoreParams const &, CoreStateDevice &) const =0
 Execute the model with device data.
 
- Public Member Functions inherited from celeritas::SurfaceModel
virtual ~SurfaceModel ()=0
 Anchored default destructor.
 
virtual VecSurfaceLayer get_surfaces () const =0
 Get the list of surfaces/layers this applies to.
 
SurfaceModelId surface_model_id () const
 Opaque ID of this surface model.
 
std::string_view label () const
 Short descriptive name of this model.
 

Additional Inherited Members

- Protected Member Functions inherited from celeritas::SurfaceModel
 SurfaceModel (SurfaceModelId, std::string_view)
 Construct with label and model ID.
 
 CELER_DEFAULT_COPY_MOVE (SurfaceModel)
 

Detailed Description

Optical surface physics model.

Base class for implementing an optical surface physics model for a given physics sub-step. Adds step functions to the core phys::SurfaceModel.


The documentation for this class was generated from the following file: