diff options
Diffstat (limited to 'src/likelihood.c')
-rw-r--r-- | src/likelihood.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/likelihood.c b/src/likelihood.c index ccdfc84..5f66a72 100644 --- a/src/likelihood.c +++ b/src/likelihood.c @@ -392,6 +392,10 @@ double nll_muon(event *ev, double T0, double *pos, double *dir, double t0, doubl for (i = 0; i < MAX_PMTS; i++) { if (pmts[i].pmt_type != PMT_NORMAL) continue; + /* Skip PMTs which weren't hit when doing the "fast" likelihood + * calculation. */ + if (fast && !ev->pmt_hits[i].hit) continue; + params.i = i; if (fast) { @@ -501,13 +505,25 @@ double nll_muon(event *ev, double T0, double *pos, double *dir, double t0, doubl for (i = 0; i < MAX_PMTS; i++) { if (ev->pmt_hits[i].flags || pmts[i].pmt_type != PMT_NORMAL) continue; - mu[i] = mu_direct[i] + mu_indirect + mu_noise; + + /* Skip PMTs which weren't hit when doing the "fast" likelihood + * calculation. */ + if (fast && !ev->pmt_hits[i].hit) continue; + + if (fast) + mu[i] = mu_direct[i] + mu_noise; + else + mu[i] = mu_direct[i] + mu_indirect + mu_noise; } nhit = 0; for (i = 0; i < MAX_PMTS; i++) { if (ev->pmt_hits[i].flags || pmts[i].pmt_type != PMT_NORMAL) continue; + /* Skip PMTs which weren't hit when doing the "fast" likelihood + * calculation. */ + if (fast && !ev->pmt_hits[i].hit) continue; + log_mu = log(mu[i]); if (ev->pmt_hits[i].hit) { |