Celeritas is a new Monte Carlo transport code designed to accelerate scientific discovery in high energy physics by improving detector simulation throughput and energy efficiency using GPUs.
Following on to #1354 , this PR improves readability of the physics models by adding a new distribution and refactoring some "manual" distributions in terms of other tested distributions. I also found one or two more places that could use a RejectionDistribution, which will also catch any errors we might've made in the envelope assumption (e.g. if the lowest muon cross sections is not the largest one).
Add an InverseSquareDistribution to sample $1/E^2$
Replace MuBB, BraggICRU73QO with inverse square distribution
Replace MuBremsstrahlung with reciprocal distribution, which allows us to mathematically eliminate the "min cutoff energy"
Fix variable name in KleinNishinaInteractor
Remove unused class data from moller-bhabha
Replace log canonical with existing exponential sampler in optical scintillation generator
Replace bernoulli with rejection there as well
Refactor and add scintillation tests for the "zero rise time" case and made sure that the above changes were correct
Following on to #1354 , this PR improves readability of the physics models by adding a new distribution and refactoring some "manual" distributions in terms of other tested distributions. I also found one or two more places that could use a RejectionDistribution, which will also catch any errors we might've made in the envelope assumption (e.g. if the lowest muon cross sections is not the largest one).
InverseSquareDistribution
to sample $1/E^2
$