示例#1
0
文件: ulh.py 项目: vincecr0ft/probfit
from iminuit import Minuit
from probfit import UnbinnedLH, gaussian, Extended
from matplotlib import pyplot as plt
from numpy.random import randn

data = randn(1000) * 2 + 1

ulh = UnbinnedLH(gaussian, data)
m = Minuit(ulh, mean=0., sigma=0.5)

plt.figure(figsize=(8, 6))
plt.subplot(221)
ulh.draw(m)
plt.title('Unextended Before')

m.migrad()  # fit

plt.subplot(222)
ulh.draw(m)
plt.title('Unextended After')

#Extended

data = randn(2000) * 2 + 1
egauss = Extended(gaussian)
ulh = UnbinnedLH(egauss, data, extended=True, extended_bound=(-10., 10.))
m = Minuit(ulh, mean=0., sigma=0.5, N=1800.)

plt.subplot(223)
ulh.draw(m)
plt.title('Extended Before')
示例#2
0
# ###Fitting

# <codecell>

from iminuit import Minuit
from probfit import UnbinnedLH, gaussian

# <codecell>

data = randn(10000)
hist(data, bins=100, histtype='step')

# <codecell>

ulh = UnbinnedLH(gaussian, data)
ulh.draw(args=dict(mean=1.2, sigma=0.7))

# <codecell>

m = Minuit(ulh, mean=1.2, sigma=0.7)

# <codecell>

m.migrad()

# <codecell>

print m.values
print m.errors
ulh.draw(m)
示例#3
0
# <codecell>

seed(0)
toydata = gen_toy(pdf, 1000,(-10,10), m0=-2, m1=2, s0=1, s1=1, f_0=0.3, quiet=False)

# <codecell>

inipars= dict(m0=0, m1=0, s0=1, s1=1, f_0=0.5, error_m0=0.1, error_m1=0.1, error_s0=0.1, error_s1=0.1, error_f_0=0.1)

# <codecell>

# Normal fit
uh1= UnbinnedLH(pdf, toydata)
m1= Minuit(uh1, print_level=1, **inipars)
m1.migrad();
uh1.draw();
print m1.values

# <codecell>

# Blind one parameter
uh2= UnbinnedLH( BlindFunc(pdf, toblind='m1', seedstring='some_random_stuff', width=0.5, signflip=False), toydata)
m2= Minuit(uh2, print_level=1, **inipars)
m2.migrad();
uh2.draw();
print m2.values

# <codecell>

# Blind more than one parameter. They will be shifted by the same amount
uh3= UnbinnedLH( BlindFunc(pdf, ['m0','m1'], seedstring='some_random_stuff', width=0.5, signflip=False), toydata)
示例#4
0
文件: ulh.py 项目: bks/probfit
from iminuit import Minuit
from probfit import UnbinnedLH, gaussian, Extended
from matplotlib import pyplot as plt
from numpy.random import randn

data = randn(1000)*2 + 1

ulh = UnbinnedLH(gaussian, data)
m = Minuit(ulh, mean=0., sigma=0.5)

plt.figure(figsize=(8, 6))
plt.subplot(221)
ulh.draw(m)
plt.title('Unextended Before')

m.migrad() # fit

plt.subplot(222)
ulh.draw(m)
plt.title('Unextended After')

#Extended

data = randn(2000)*2 + 1
egauss = Extended(gaussian)
ulh = UnbinnedLH(egauss, data, extended=True, extended_bound=(-10.,10.))
m = Minuit(ulh, mean=0., sigma=0.5, N=1800.)

plt.subplot(223)
ulh.draw(m)
plt.title('Extended Before')