Celeritas 0.7.0-dev.313+develop.1857205b
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::DTMixMucfModel Class Referencefinal

Muon-catalyzed fusion model for dd, dt, and tt molecules. More...

#include <DTMixMucfModel.hh>

Inheritance diagram for celeritas::DTMixMucfModel:
Inheritance graph
[legend]

Public Member Functions

 DTMixMucfModel (ActionId id, ParticleParams const &particles, MaterialParams const &materials)
 Construct from model ID and other necessary data.
 
SetApplicability applicability () const final
 Particle types and energy ranges that this model applies to.
 
XsTable micro_xs (Applicability) const final
 At-rest model does not require microscopic cross sections.
 
void step (CoreParams const &, CoreStateHost &) const final
 Interact with host data.
 
void step (CoreParams const &, CoreStateDevice &) const final
 Interact with device data.
 
- Public Member Functions inherited from celeritas::Model
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.
 
- Public Member Functions inherited from celeritas::StaticConcreteAction
 StaticConcreteAction (ActionId id, std::string_view label) noexcept(! 0)
 Construct a concrete action from a label and ID.
 
 StaticConcreteAction (ActionId id, std::string_view label, std::string_view description) noexcept(! 0)
 Construct a concrete action from an ID, a unique label, and a description.
 
 StaticConcreteAction (StaticConcreteAction const &)=delete
 
StaticConcreteActionoperator= (StaticConcreteAction const &)=delete
 
 StaticConcreteAction (StaticConcreteAction &&)=delete
 
StaticConcreteActionoperator= (StaticConcreteAction &&)=delete
 
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.
 

Type aliases

using HostRef = HostCRef< DTMixMucfData >
 
using DeviceRef = DeviceCRef< DTMixMucfData >
 
HostRef consthost_ref () const
 
DeviceRef constdevice_ref () const
 

Additional Inherited Members

- Public Types inherited from celeritas::Model
using XsTable = std::vector< inp::UniformGrid >
 Type aliases.
 
using SetApplicability = std::set< Applicability >
 
- 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
 
ActionInterfaceoperator= (ActionInterface const &)=default
 
 ActionInterface (ActionInterface &&)=default
 
ActionInterfaceoperator= (ActionInterface &&)=default
 

Detailed Description

Muon-catalyzed fusion model for dd, dt, and tt molecules.

In this model the executor performs the full muon-catalyzed fusion workflow. It forms a muonic d or t atom, samples which muonic molecule will be produced, selects the channel, and calls the appropriate interactor.

The full set of "actions" is as follows, and in this ordering:

Note
This is an at-rest model.

Member Typedef Documentation

◆ DeviceRef

Access model data

◆ HostRef

Access model data

Constructor & Destructor Documentation

◆ DTMixMucfModel()

celeritas::DTMixMucfModel::DTMixMucfModel ( ActionId  id,
ParticleParams const particles,
MaterialParams const materials 
)

Construct from model ID and other necessary data.

Most of the muon-catalyzed fusion data is static throughout the simulation, as it is only material-dependent (DT mixture and temperature). Therefore, most grids can be host-only and used to calculate final values, which are then cached and copied to device. The exception to this is the muon energy CDF grid, needed to sample the final state of the outgoing muon after a muCF interaction.

Todo:
Correctly update ImportProcessClass and ImportModelClass . These operate under the assumption that there is a one-to-one equivalente between Geant4 and Celeritas. But for muCF, everything is done via one process/model/executor in Celeritas, whereas in Geant4 atom formation, spin flip, atom transfer, etc., are are all separate processes.

Member Function Documentation

◆ applicability()

auto celeritas::DTMixMucfModel::applicability ( ) const
finalvirtual

Particle types and energy ranges that this model applies to.

Implements celeritas::Model.

◆ device_ref()

DeviceRef const & celeritas::DTMixMucfModel::device_ref ( ) const
inline

Access model data

◆ host_ref()

HostRef const & celeritas::DTMixMucfModel::host_ref ( ) const
inline

Access model data

◆ micro_xs()

auto celeritas::DTMixMucfModel::micro_xs ( Applicability  ) const
finalvirtual

At-rest model does not require microscopic cross sections.

Implements celeritas::Model.


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