Celeritas
0.5.0-86+4a8eea4
|
Sample energy loss from a gamma distribution. More...
#include <EnergyLossGammaDistribution.hh>
Public Types | |
Type aliases | |
using | Energy = units::MevEnergy |
using | EnergySq = Quantity< UnitProduct< units::Mev, units::Mev > > |
Public Member Functions | |
CELER_FUNCTION | EnergyLossGammaDistribution (Energy mean_loss, EnergySq bohr_var) |
Construct from distribution parameters. More... | |
CELER_FUNCTION | EnergyLossGammaDistribution (EnergyLossHelper const &helper) |
Construct from helper-calculated data. | |
template<class Generator > | |
CELER_FUNCTION Energy | operator() (Generator &rng) |
Sample energy loss according to the distribution. | |
Sample energy loss from a gamma distribution.
This model is valid for heavy particles with small mean losses (less than 2 Bohr standard deviations). It is a special case of EnergyLossGaussianDistribution
(see that class for more documentation).
Note that while this appears in G4UniversalFluctuation, the Geant4 documentation does not explain why the loss is sampled from a gamma distribution in this case.
|
inline |
Construct from distribution parameters.
The model is only valid (rather, used in Geant4) for mean < 2 * stddev, but it is allowable to construct the sampler explicitly but outside this range, for analysis purposes.