Celeritas 0.7.0-dev.245+develop.a7be925e
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::GammaNuclearModel Class Referencefinal

Set up and launch the gamma-nuclear model interaction. More...

#include <GammaNuclearModel.hh>

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

Public Types

using MevEnergy = units::MevEnergy
 
using ReadData = std::function< inp::Grid(AtomicNumber)>
 
using HostRef = HostCRef< GammaNuclearData >
 
using DeviceRef = DeviceCRef< GammaNuclearData >
 
- 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 >
 

Public Member Functions

 GammaNuclearModel (ActionId id, ParticleParams const &particles, MaterialParams const &materials, ReadData load_data)
 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
 Get the microscopic cross sections for the given particle and material.
 
HostRef consthost_ref () const
 
DeviceRef constdevice_ref () const
 
- 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.
 
void step (CoreParams const &, CoreStateHost &) const final
 Apply the interaction kernel to host data.
 
void step (CoreParams const &, CoreStateDevice &) const final
 Interact with device data.
 

Additional Inherited Members

- Protected Member Functions inherited from celeritas::ActionInterface
 ActionInterface (ActionInterface const &)=default
 
ActionInterfaceoperator= (ActionInterface const &)=default
 
 ActionInterface (ActionInterface &&)=default
 
ActionInterfaceoperator= (ActionInterface &&)=default
 

Detailed Description

Set up and launch the gamma-nuclear model interaction.

The class also builds element cross-section tables using G4PARTICLEXS/gamma (IAEA) data at low energies and CHIPS gamma–nuclear cross sections using G4GammaNuclearXS above the IAEA upper energy limit (~130 MeV). The CHIPS cross sections are based on the parameterization developed by M. V. Kossov (CERN/ITEP Moscow) for the high energy region (106 MeV < E < 50 GeV) and on a Reggeon-based parameterization for the ultra high energy region (E > 50 GeV), as described in degtyarenko-chiralinvariant-2000. G4GammaNuclearXS uses CHIPS (G4PhotoNuclearCrossSection) above 150 MeV and performs linear interpolation between the upper limit of the G4PARTICLEXS gamma-nuclear (IAEA) data and 150 MeV.

Member Function Documentation

◆ applicability()

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

Particle types and energy ranges that this model applies to.

Implements celeritas::Model.

◆ device_ref()

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

Access model data

◆ host_ref()

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

Access model data

◆ micro_xs()

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

Get the microscopic cross sections for the given particle and material.

Implements celeritas::Model.

◆ step()

void celeritas::GammaNuclearModel::step ( CoreParams const ,
CoreStateHost &   
) const
final

Apply the interaction kernel to host data.

Apply the interaction kernel.


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