diff options
author | tlatorre <tlatorre@uchicago.edu> | 2018-11-28 09:46:52 -0600 |
---|---|---|
committer | tlatorre <tlatorre@uchicago.edu> | 2018-11-28 09:46:52 -0600 |
commit | f93d19b96093cdd498639868700e0f722b7eb9b0 (patch) | |
tree | 64891421c89e0d2b2f77618993c2444a35cc2eda /src/likelihood.c | |
parent | 22090220988bd7d5631481c5b4cbfa2f95c11131 (diff) | |
download | sddm-f93d19b96093cdd498639868700e0f722b7eb9b0.tar.gz sddm-f93d19b96093cdd498639868700e0f722b7eb9b0.tar.bz2 sddm-f93d19b96093cdd498639868700e0f722b7eb9b0.zip |
update sno_charge.c
This commit adds lots of comments to sno_charge.c and makes a couple of other
changes:
- use interp1d() instead of the GSL interpolation routines
- increase MAX_PE to 100
I increased MAX_PE because I determined that it had a rather large impact on
the likelihood function for 500 MeV electrons. This unfortunately slows down
the initialization by a lot. I think I could speed this up by convolving the
single PE charge distribution with a gaussian *before* convolving the charge
distributions to compute the charge distributions for multiple PE.
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 40261f9..93740a0 100644 --- a/src/likelihood.c +++ b/src/likelihood.c @@ -944,9 +944,9 @@ double nll_muon(event *ev, int id, double T0, double *pos, double *dir, double t if (ev->pmt_hits[i].hit) { for (j = 1; j < MAX_PE; j++) { if (fast) - logp[j] = log_pq(ev->pmt_hits[i].qhs,j) - mu[i] + j*log_mu - lnfact(j) + log_pt_fast; + logp[j] = get_log_pq(ev->pmt_hits[i].qhs,j) - mu[i] + j*log_mu - lnfact(j) + log_pt_fast; else - logp[j] = log_pq(ev->pmt_hits[i].qhs,j) - mu[i] + j*log_mu - lnfact(j) + log_pt(ev->pmt_hits[i].t, j, mu_noise, mu_indirect, &mu_direct[i], &mu_shower[i], 1, &ts[i], &ts_shower[i], ts[i], PMT_TTS, &ts_sigma[i]); + logp[j] = get_log_pq(ev->pmt_hits[i].qhs,j) - mu[i] + j*log_mu - lnfact(j) + log_pt(ev->pmt_hits[i].t, j, mu_noise, mu_indirect, &mu_direct[i], &mu_shower[i], 1, &ts[i], &ts_shower[i], ts[i], PMT_TTS, &ts_sigma[i]); if (j == 1 || logp[j] > max_logp) max_logp = logp[j]; |