Celeritas  0.5.0-56+6b053cd
Public Member Functions | List of all members
celeritas::SBEnergyDistHelper Class Reference

Help sample exiting photon energy from Bremsstrahlung. More...

#include <SBEnergyDistHelper.hh>

Public Types

Type aliases
using SBDXsec = NativeCRef< SeltzerBergerTableData >
 
using Xs = Quantity< SBElementTableData::XsUnits >
 
using Energy = units::MevEnergy
 
using EnergySq = Quantity< UnitProduct< units::Mev, units::Mev > >
 

Public Member Functions

CELER_FUNCTION SBEnergyDistHelper (SBDXsec const &differential_xs, Energy inc_energy, ElementId element, EnergySq density_correction, Energy min_gamma_energy)
 Construct from incident particle and energy. More...
 
template<class Engine >
CELER_FUNCTION Energy sample_exit_energy (Engine &rng) const
 
CELER_FUNCTION Xs calc_xs (Energy energy) const
 Calculate tabulated cross section for a given energy.
 
CELER_FUNCTION Xs max_xs () const
 Maximum cross section calculated for rejection.
 
template<class Engine >
CELER_FUNCTION auto sample_exit_energy (Engine &rng) const -> Energy
 Sample an exit energy on a scaled and adjusted reciprocal distribution.
 

Detailed Description

Help sample exiting photon energy from Bremsstrahlung.

This class simply preprocesses the input data needed for the SBEnergyDistribution, which is templated on a dynamic cross section correction factor.

The cross section units are immaterial since the cross section merely acts as a shape function for rejection: the sampled energy's cross section is always divided by the maximium cross section.

Constructor & Destructor Documentation

◆ SBEnergyDistHelper()

CELER_FUNCTION celeritas::SBEnergyDistHelper::SBEnergyDistHelper ( SBDXsec const &  differential_xs,
Energy  inc_energy,
ElementId  element,
EnergySq  density_correction,
Energy  min_gamma_energy 
)
inline

Construct from incident particle and energy.

The incident energy must be within the bounds of the SB table data, so the Model's applicability must be consistent with the table data.


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