Celeritas 0.6.0-2+develop.96611fab
|
Sample the large-angle MSC scattering cosine. More...
#include <UrbanLargeAngleDistribution.hh>
Public Member Functions | |
CELER_FUNCTION | UrbanLargeAngleDistribution (real_type tau) |
Construct with mean values. | |
template<class Engine > | |
CELER_FUNCTION real_type | operator() (Engine &rng) |
Sample from two parameters of the model function. | |
Sample the large-angle MSC scattering cosine.
urban-msc-2006 proposes a convex combination of three probability distribution functions:
\[ \begin{aligned} g_0(\mu) &\sim \exp(-a(1 - \mu)), \\ g_1(\mu) &\sim (b - \mu)^{-d}, \\ g_2(\mu) &\sim 1 \end{aligned} \]
which have normalizing constants and sum to
\[ g(\mu) = p_1 p_2 g_0(\mu) + p_1(1-p_2) g_1(\mu) + (1-p_1) g_2(\mu). \]
In this distribution for large angles, \( p_2 = 1 \) so only the exponential and constant terms are sampled.
The Goudsmit-Saunderson moments for the expected angular deflection \( \theta \) over a physical path length \( s \) are:
\[ \langle \cos \theta \rangle \equiv \langle \mu \rangle = \ee^{-s/\lambda_1} \ , \]
and
\[ \langle \cos^2 \theta \rangle \equiv \langle \mu^2 \rangle = \frac{1}{3}\left(1 + 2 \ee^{-s / \lambda_2}\right) \ , \]
where the transport mean free paths \( \lambda_l \) are related to the \( l \)th angular moment of the elastic cross section scattering (see Eqs. 6-8, 15-16 from fernandez-msc-1993 ).
Given the number of mean free paths
\[ \tau \equiv \frac{s}{\lambda_1} \ , \]
and from kawrakow-condensedhistory-1998 that for kinetic energies between a few keV and infinity,
\[ 2 < \frac{\lambda_2}{\lambda_1} < \infty \ , \]
this class calculates the mean scattering angle and approximates the second moment of the scattering cosine using \( \lambda_2 \approx 2.5 \lambda_1 \).
Using these moments, Urban calculates:
\[ a = \frac{2\langle \mu \rangle + 9\langle \mu^2 \rangle - 3} {2\langle \mu \rangle - 3\langle \mu^2 \rangle + 1} \]
and
\[ p_1 = \frac{(a + 2)\langle \mu \rangle}{a} \,. \]
|
inline |
Sample from two parameters of the model function.