summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--threadtest.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/threadtest.py b/threadtest.py
index d76224f..c9854a7 100644
--- a/threadtest.py
+++ b/threadtest.py
@@ -6,6 +6,7 @@ from pycuda import gpuarray
import pycuda.driver as cuda
from uncertainties import ufloat, umath
from histogram import Histogram
+import math
jobs = Queue()
output = Queue()
@@ -43,9 +44,10 @@ def likelihood(detector, event_times, position=(0,0,0), nphotons=5000, neval=100
job = output.get()
t[i] = job.earliest_times
- log_likelihood = ufloat((0,0))
+ log_likelihood = 0.0
+ log_likelihood_variance = 0.0
for i, time in event_times:
- h = Histogram(100, (-0.5e-9, 99.5e-9))
+ h = Histogram(500, (-0.5e-9, 99.5e-9))
h.fill(t[:,i])
if h.nentries > 0:
@@ -60,9 +62,10 @@ def likelihood(detector, event_times, position=(0,0,0), nphotons=5000, neval=100
probability = \
ufloat((1.0/len(h.bincenters), 1.0/len(h.bincenters)))
- log_likelihood += umath.log(probability)
+ log_likelihood += math.log(probability.nominal_value)
+ log_likelihood_variance += (probability.std_dev()/probability.nominal_value)**2
- return -log_likelihood
+ return ufloat((-log_likelihood, log_likelihood_variance**0.5))
if __name__ == '__main__':
import sys