summaryrefslogtreecommitdiffstats
path: root/quick_tol.py
diff options
context:
space:
mode:
Diffstat (limited to 'quick_tol.py')
-rw-r--r--quick_tol.py78
1 files changed, 78 insertions, 0 deletions
diff --git a/quick_tol.py b/quick_tol.py
new file mode 100644
index 0000000..176ba28
--- /dev/null
+++ b/quick_tol.py
@@ -0,0 +1,78 @@
+
+import pylab
+import scipy
+from pylab import *
+from scipy import *
+
+
+#_ip.magic("cd ~/jlab/muon/scipy/")
+
+
+d_tol_weekend = pylab.load('../data/bnewbold_solar_weekend2/SOLAR000')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR001')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR002')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR003')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR004')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR005')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR006')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR007')
+d_tol_weekend += pylab.load('../data/bnewbold_solar_weekend2/SOLAR008')
+
+
+fitfunc = lambda p,x: p[0]*e^(-x/p[1])
+errfunc = lambda p,x,y: fitfunc(p,x) - y
+
+p0 = c_[1.0, 20.]
+y = frange(1,1024)
+fitfunc = lambda p,x: p[0]*e**(-x/p[1])
+errfunc = lambda p,x,y: fitfunc(p,x) - y
+p1,success = optimize.leastsq(errfunc, p0.copy(), args=(d_tol_weekend, y))
+p0 = c_[1.0, 20.]
+p0 = c_[50.0, 100.]
+p1,success = optimize.leastsq(errfunc, p0.copy(), args=(d_tol_weekend, y))
+p0 = c_[50.0, 100.]
+success
+p1
+errfunc = lambda p,x,y: fitfunc(p,x) - y
+p1,success = optimize.leastsq(errfunc, p0.copy(), args=(y, d_tol_weekend))
+plot(fitfunc(p1, frange(1,1024)), 'r')
+plot(d_tol_weekend, '.')
+legend(('Exponential Fit', 'Weekend #2 TOL data'))
+txt = text(380, 35, 'x0 = 32.555...\n T=171.1719...',)
+txt.set_bbox({"facecolor":"white","linewidth":1.0,"pad":16.0})
+
+title("Rough Fit of Weekend TOL Data")
+xlabel("Time (in bins...)")
+ylabel("Number of muon decays")
+
+
+fitfunc = lambda p,x: p[0]*e**(-x/p[1])+p[2]
+p0 = c_[50.0, 100.,10.]
+p1,success = optimize.leastsq(errfunc, p0.copy(), args=(y, d_tol_weekend))
+figure()
+plot(d_tol_weekend, '.')
+plot(fitfunc(p1, frange(1,1024)), 'r')
+title("Rough Fit of Weekend TOL Data, with +C")
+xlabel("Time (in bins...)")
+ylabel("Number of muon decays")
+t = text(380, 35, 'x0 = %e\n T=%e\nC=%e' % (p1[0],p1[1],p1[2]))
+t.set_bbox({"facecolor":"white","linewidth":1.0,"pad":16.0})
+success
+
+
+legend(('Weekend #2 TOL data', 'Exponential Fit'))
+
+
+fitfunc = lambda p,x: p[0]*e**(-x/p[1])+p[2]
+p0 = c_[50.0, 100.,10.]
+p1,success = optimize.leastsq(errfunc, p0.copy(), args=(y[13:1024], d_tol_weekend[13:1024]))
+figure()
+plot(d_tol_weekend, '.')
+plot(fitfunc(p1, frange(1,1024)), 'r')
+title("Rough Fit of Weekend TOL Data, with +C, minus outliers")
+xlabel("Time (in bins...)")
+ylabel("Number of muon decays")
+t = text(380, 35, 'x0 = %e\n T=%e\nC=%e' % (p1[0],p1[1],p1[2]))
+t.set_bbox({"facecolor":"white","linewidth":1.0,"pad":16.0})
+legend(('Weekend #2 TOL data', 'Exponential Fit'))
+success