diff options
author | tlatorre <tlatorre@uchicago.edu> | 2018-08-14 11:29:22 -0500 |
---|---|---|
committer | tlatorre <tlatorre@uchicago.edu> | 2018-08-14 11:29:22 -0500 |
commit | 8e6895f1e55290fb5ce6b7a6ff77b3819806c51f (patch) | |
tree | 70d72950737448586f19177acd8cd9c94814523a /src/likelihood.c | |
parent | 0949702f6f4b9b69b5212681e03e026b0a8fb5a7 (diff) | |
download | sddm-8e6895f1e55290fb5ce6b7a6ff77b3819806c51f.tar.gz sddm-8e6895f1e55290fb5ce6b7a6ff77b3819806c51f.tar.bz2 sddm-8e6895f1e55290fb5ce6b7a6ff77b3819806c51f.zip |
fix how the RMS scattering angle is calculated
The RMS scattering angle calculation comes from Equation 33.15 in the PDG
article on the passage of particles through matter. It's not entirely obvious
if this equation is correct for a long track. It seems like it should be
integrated along the track to add up the contributions at different energies,
but it's not obvious how to do that with the log term.
In any case, the way I was previously calculating it (by using the momentum and
velocity at each point along the track) was definitely wrong.
I will try this out and perhaps try to integrate it later.
Diffstat (limited to 'src/likelihood.c')
-rw-r--r-- | src/likelihood.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/likelihood.c b/src/likelihood.c index 98a4ad7..4e24a79 100644 --- a/src/likelihood.c +++ b/src/likelihood.c @@ -103,7 +103,7 @@ static double gsl_muon_time(double x, void *params) t = x/SPEED_OF_LIGHT + distance*n/SPEED_OF_LIGHT; - return t*get_expected_charge(x, get_T(T0, x, HEAVY_WATER_DENSITY), pos, dir, pmts[i].pos, pmts[i].normal, PMT_RADIUS); + return t*get_expected_charge(x, get_T(T0, x, HEAVY_WATER_DENSITY), T0, pos, dir, pmts[i].pos, pmts[i].normal, PMT_RADIUS); } static double gsl_muon_charge(double x, void *params) @@ -124,7 +124,7 @@ static double gsl_muon_charge(double x, void *params) pos[1] = pos0[1] + dir[1]*x; pos[2] = pos0[2] + dir[2]*x; - return get_expected_charge(x, get_T(T0, x, HEAVY_WATER_DENSITY), pos, dir, pmts[i].pos, pmts[i].normal, PMT_RADIUS); + return get_expected_charge(x, get_T(T0, x, HEAVY_WATER_DENSITY), T0, pos, dir, pmts[i].pos, pmts[i].normal, PMT_RADIUS); } double nll_muon(event *ev, double T, double *pos, double *dir, double t0) |