Commit 6b143c37 authored by janlukas.bosse's avatar janlukas.bosse
Browse files

asdf asdf

parent 888e84d6
......@@ -118,113 +118,164 @@
%% Cell type:code id: tags:
``` python
def breit_wigner_pdf(s):
return 1 / ((s - const.M_Z**2)**2 + const.M_Z**2 * const.Gamma_Z**2)
return (const.Gamma_Z * const.M_Z
/ (np.pi * ((s - const.M_Z**2)**2 + const.M_Z**2 * const.Gamma_Z**2)))
```
%% Cell type:code id: tags:
``` python
class uniform_sampler(object):
def __init__(self, domain):
def breit_wigner_sampler():
x = np.random.uniform()
return const.Gamma_Z * const.M_Z * np.tan(np.pi * (x - 0.5)) + const.M_Z**2
```
%% Cell type:code id: tags:
``` python
class UniformSampler(object):
def __init__(self, domain, codomain):
self.domain = domain
self.domain_volume = 1
self.codomain = codomain
for varrange in domain:
self.domain_volume *= varrange[1] - varrange[0]
self.volume = self.domain_volume * (codomain[1] - codomain[0])
def __call__(self):
x = np.random.uniform(size=(len(self.domain)))
for (dim, dom) in enumerate(self.domain):
x[dim] = dom[0] + x[dim] * (dom[1] - dom[0])
return x
y = np.random.uniform(self.codomain[0], self.codomain[1])
return x, y
```
%% Cell type:code id: tags:
``` python
# really only works for the problem in question here. We
# are already over engineering this code a little bit
class BreitWignerSampler(object):
def __init__(self, prefactor):
self.prefactor = prefactor
self.volume = 2
self.codomain = (0, prefactor)
self.domain_volume = 2
def __call__(self):
s = np.random.uniform()
costheta = np.random.uniform(-1,1)
s = const.Gamma_Z * const.M_Z * np.tan(np.pi * (s - 0.5)) + const.M_Z**2
y = (self.prefactor * const.Gamma_Z * const.M_Z
/ (np.pi * ((s - const.M_Z**2)**2 + const.M_Z**2 * const.Gamma_Z**2)))
return np.array([s, costheta]), y
```
%% Cell type:code id: tags:
``` python
class mc_integrator(object):
def __init__(self, func: Callable, domain: List[Tuple], codomain: Tuple,
histograms=False, histbins=20, sampler=None):
class MCIntegrator(object):
def __init__(self, func: Callable, sampler,
histograms: bool =False, histbins=20):
"""A Monte-Carlo integrator.
Arguments:
----------
func : The function, that we want to integrate.
domain : The domain (x-values) of `func`.
codomain : The co-domain (y-values) of `func`. Should be as tight as
possibl for efficient sampling.
histograms : Record histograms of the accepted (x, y)?
histbins : Number of bins in the histograms. Has no effect, if
`histograms=False`
sampler : A sampling function to generate x-samples from. Defaults
to a uniform sampler on `domain` if nothing is passed.
weight_func : The weighting function for importance sampling. Defaults
to `lambda x : 1` if nothing is passed and should be
compatible with `sampler`.
"""
self.func = func
self.codomain = codomain
self.codomain_volume = codomain[1] - codomain[0]
self.sampler = sampler
self.N_acc = 0
self.N_try = 0
self.I = ufloat(0, 0)
if sampler is None:
self.sampler = uniform_sampler(domain)
else:
self.sampler = sampler
self.histograms = []
if histograms:
for (i, varrange) in enumerate(domain):
for (i, varrange) in enumerate(self.sampler.domain):
self.histograms.append(
Histo1D(histbins, varrange[0], varrange[1], name=f"x{i}"))
@classmethod
def uniform(cls, func, domain, codomain, *args, **kwargs):
sampler = UniformSampler(domain, codomain)
return cls(func, sampler, *args, **kwargs)
def __call__(self, N_try):
for _ in range(N_try):
x = self.sampler()
y = np.random.uniform(self.codomain[0], self.codomain[1])
if (f := self.func(x)) > y:
x, y = self.sampler()
if (f := self.func(x)) > y :
self.N_acc += 1
if self.histograms:
for (i, hist) in enumerate(self.histograms):
hist.Fill(x[i], f)
self.N_try += N_try
p_succ = self.N_acc / self.N_try
self.I = ufloat(self.sampler.domain_volume * self.codomain_volume * p_succ,
self.codomain_volume * self.sampler.domain_volume
* np.sqrt(p_succ * (1 - p_succ) / self.N_try)
self.I = ufloat(self.sampler.volume * p_succ,
self.sampler.volume * np.sqrt(p_succ * (1 - p_succ) / self.N_try)
)
self.I += self.sampler.domain_volume * self.codomain[0]
self.I += self.sampler.domain_volume * self.sampler.codomain[0]
return self.I
def __repr__(self):
return str(self.I)
def reset(self):
self.N_acc = self.N_try = 0
self.I = ufloat(0, 0)
def samples(self, N_samples):
return np.array([self.func(self.sampler()) for _ in range(N_samples)])
samples = np.empty(N_samples)
for i in range(N_samples):
x = self.sampler()
samples[i] = self.func(x)
return samples
```
%% Cell type:code id: tags:
``` python
minval = 0
maxval = 30
integrator = hit_miss_integrator(lambda x: eeqq_mel_random_q(const.M_Z**2, x, 0.),
[(-1,1)], (minval, maxval))
integrator = MCIntegrator.uniform(lambda x: eeqq_mel_random_q(const.M_Z**2, x, 0.),
[(-1,1)], (minval, maxval))
```
%% Cell type:code id: tags:
``` python
integrator(10000)
```
%%%% Output: execute_result
18.0965+/-0.07949353683109506
18.174+/-0.2757074036002661
%% Cell type:code id: tags:
``` python
(integrator.I * const.N_q * 2 * np.pi * const.f_conv
/ (64 * np.pi**2 * const.M_Z**2))
```
%%%% Output: execute_result
42135.51640485619+/-185.0911074089822
42315.96580232954+/-641.9514175304241
%% Cell type:markdown id: tags:
## Error estimate
......@@ -259,11 +310,11 @@
ax.set_yscale("log")
```
%%%% Output: display_data
![](data:image/png;base64,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)
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
## Sampling uniformly in $s$
......@@ -277,11 +328,11 @@
def func(x):
mel = eeqq_mel_random_q(x[0], x[1], 0.)
mel /= domain[0][1] - domain[0][0]
return 0.5 * mel / x[0]
integrator = hit_miss_integrator(func, domain, codomain, histograms=True, histbins=50)
integrator = MC_Integrator.uniform(func, domain, codomain, histograms=True, histbins=50)
```
%% Cell type:code id: tags:
``` python
......@@ -294,21 +345,21 @@
mel * const.N_q * 2 * np.pi * const.f_conv / (32 * np.pi**2)
```
%%%% Output: execute_result
10053.525868080165+/-98.19953452848868
9897.747613351825+/-97.51485843377063
%% Cell type:code id: tags:
``` python
integrator.histograms[0].Plot(c="C1", label=r"$p(s)$")
```
%%%% Output: display_data
![](data:image/png;base64,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)
![](data:image/png;base64,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)
%% Cell type:code id: tags:
``` python
N_trys = np.logspace(1, 4, 100)
......@@ -338,11 +389,11 @@
ax.set_yscale("log")
```
%%%% Output: display_data
![](data:image/png;base64,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iBGMHDmS0tJS5syZwxtvvMGIESN44IEHWLVqVWRkP2/ePG688UYuu+wy+vfvz7Jly/iXf/kXCgoKmDBhAhUVFQDcc889jB49mqFDhzJjxgzcnWeeeYaioiKmTZvGiBEjKC8vT/geSDvRiIdR9Qc2RS2fBnwCDAA6AO8DQ5rzwKv6vkaNGuWxPvjggzpliTz352I/98d/8DNnvxj5OvfHf/Dn/lzc4Dri6dy5s7///vt+3XXXeXl5uQ8fPtxff/11nzRpkru7z5o1y+fNm+fu7q+99poPHz7c3d3nzp3rY8aM8WPHjvnevXu9e/fufuLECf/00099yJAhkfpXrlzp06dP9+rqaq+qqvJJkyb56tWra7XhhRde8MmTJyds4/79+93d/ejRoz5kyBDft2+fu7sD/tRTT0W2GzdunK9fv9537drlffv29T179nhFRYVfcskl/txzz9Wq88SJEz5mzBjfs2ePu7svXbrUv/Od70Tque2222rVW7NcXl7uffr08a1bt7q7+7e//W1/4IEH3N39zDPP9J/+9Kdx+zB16lR/44033N39s88+83PPPdfd3a+88kp/88033d29tLTUKyoqar3/7l5ree7cuT527Fg/ceKEv/fee56Tk+MrVqxwd/fJkydH+lnznrm7f+tb3/Lly5fXeo/qew9iNeZ3VVILKPIEudOgCzdmtgQYD/Q0s2Jgrrs/bmazgJWErmgvcvfNyQzwZLt/5VbKK2p/hCuvqOL+lVuZPLLpH48Bhg0bxo4dO1iyZAlXXHFFrXVvvvkmzz77LABf+cpX2L9/P4cOHQJg0qRJdOzYkY4dO/KFL3yBv/3tb3Xqfvnll3n55ZcZOXIkEDr3uG3bNi6++OIGt2/BggU899xzQGiW9G3bttGjRw8yMzO57rrr6my/fv16xo8fT8154GnTprFmzRomT54c2Wbr1q1s2rSJr371q0Do4/Hpp58eWf+Nb3yjVp01y1u3bmXAgAGR2Y5uvPFGHn74YX74wx/G3a/Gq6++ygcffBBZPnz4MKWlpYwdO5Y77riDadOmce2119KnT59634+JEyeSlZVFQUEBVVVVTJgwAYCCggJ27NgBwOuvv859993H0aNHOXDgAEOGDOGqq66qVU9974G0fQ29uj01QfkKYEVSW9SCdh8sb1R5Y1199dXceeedrFq1iv3790fKPc6zbGoe3dCxY8dIWWZmZtzzde7O3Xffza233prw2EOGDOH999+nurq6zoPHVq1axauvvsrbb79Np06dGD9+PMeOHQNCE2tkZmbGPWZ93J0hQ4bU+Zheo2ZW9tjl+uqO3a9GdXU1b7/9dq3nBkHo9MSkSZNYsWIFF110Ea+++mq9ba953zMyMsjKyor8PDIyMqisrOTYsWN873vfo6ioiL59+zJv3rzIexatvvdA2r5T6s8Sz8jPaVR5Y91888385Cc/oaCgoFb5xRdfzJNPPgmEAqtnz5506dIlYT15eXmUlpZGli+//HIWLVpEWVkZALt27WLPntq3nZ511lkUFhYyd+7cSAht27aNF154gUOHDtGtWzc6derEhx9+yDvvvFNvXy688EJWr17Nvn37qKqqYsmSJYwbN67WNoMGDWLv3r2RgKioqIg8BC3Iueeey44dO9i+fTsAv/3tb+vUHc9ll13GQw89FFl+7733gND52IKCAmbPnk1hYSEffvhhnfewsWoCsWfPnpSVlfHMMyf/KCy67qa+B9J2nFIhedflg8jJqj1qysnK5K7LByWl/j59+vCDH/ygTvm8efMoKipi2LBhzJkzh9/85jeB9fTo0YOxY8cydOhQ7rrrLi677DK++c1vMmbMGAoKCpgyZUrcAHjsscf4/PPP+eIXv0hBQQHTp0/njDPOYMKECVRWVjJs2DD+7d/+jYsuuqjevpx++unMnz+fSy65hOHDh3P++edzzTXX1NqmQ4cOPPPMM8yePZvhw4czYsQI3nrrrXrrzs7O5te//jXXX389BQUFZGRkMHPmzHr3W7BgQeR9PO+881i4cCEADz74IEOHDmX48OHk5OQwceJEhg0bxmmnncbw4cN54IEH6q07Vn5+PtOnT6egoIDJkyczevToyLqbbrqJmTNnMmLECKqqqpr0HkjbYQ35WNVaFBYWeuw9fFu2bGHw4MENruP5d3dx/8qt7D5Yzhn5Odx1+aBmn48UaYjG/q5K6pjZBncvjLfulJt0d/LI3gpFEWmwU+rjtohIYykkRUQCtIuQbEvnVeXUpN/RtqvNh2R2djb79+/XL6G0Wu7O/v37yc7OTndTpAna/IWbPn36UFxczN69e9PdFJGEsrOzG/SXQNL6tPmQzMrKYsCAAeluhoi0U23+47aISEtSSIqIBFBIiogEaFN/lmhme4HPwotdgUNRq6OXo1/3BBo+PXdiscdr6raJ1sUrD+pj7PKp3Odk9TdRm5qyXbL63NI/40Rtasp2baXP8dpzprvHfz5MookmW/sX8Eii5ZjXCSfTbM7xmrptonXxyoP6qD6ffJ2s/jamz/Vtl6w+t/TP+FTsc2N+r929TX/c/n3Acuy6ljheU7dNtC5eeVAfY5fV5+RoaJ31bZesPrd0fxtTb3vpc6PqbFMft5vCzIo8wewe7dWp1udTrb+gPqdSWx5JNtQj9W/S7pxqfT7V+gvqc8q0+5GkiEhznAojSRGRJlNIiogEUEiKiAQ45ULSzAaa2eNm9kz9W7d9ZjbZzB41sxfM7LJ0tycVzGywmS00s2fM7LZ0tydVzKyzmW0wsyvT3ZZUMLPxZvZG+Gc9vqWO0y5C0swWmdkeM9sUUz7BzLaa2XYzmwPg7p+4+y3paWlyNLK/z7v7dOAm4BtpaG5SNLLPW9x9JvB1oM3eJtOYPofNBp5ObSuTq5F9dqAMyAaKW6xRybprP51fwMXA+cCmqLJM4GNgINABeB84L2r9M+lud4r7+1/A+elue6r6DFwNvAV8M91tT0WfgUuBGwj9Z3hlutueoj5nhNf/HfBkS7WpXYwk3X0NcCCm+AJgu4dGjieApcA1dXZugxrTXwv5KfAHd/9zqtuaLI39Gbv7cnf/EjAttS1Nnkb2+RLgIuCbwHQza5P/thvTZ3evDq8vATq2VJva/KS7AXoDO6OWi4ELzawH8B/ASDO7293np6V1yRe3v8A/ERpldDWzL7r7wnQ0roUk+hmPB64l9A9nRRra1ZLi9tndZwGY2U3AvqgAaQ8S/ZyvBS4H8oGHWurg7TkkLU6Zu/t+YGaqG5MCifq7AFiQ6sakSKI+rwJWpbYpKRO3z5EX7otT15SUSfRzXgYsa+mDt8kheQMVA32jlvsAu9PUllQ41foL6jOozy2uPYfkeuBsMxtgZh0IndRenuY2taRTrb+gPqvPKdAuQtLMlgBvA4PMrNjMbnH3SmAWsBLYAjzt7pvT2c5kOdX6C+qz+py+PmuCCxGRAO1iJCki0lIUkiIiARSSIiIBFJIiIgEUkiIiARSSIiIBFJIiIgEUkqcgM3Mz+6+o5TvNbF4S6u0fOw9gSzGz281si5k9mYrjBbSjLAl13Br+mQyOKttiZv2bW7c0n0Ly1HQcuNbMeqa7IdHC07o19Hfye8AV7t5mp0KLMgx4D5gEYGYdCc2R+Fk6GyUhCslTUyWhZxj/c3Rh7EiwZoQZLv/QzB4zs01m9qSZXWpmfzKzbWZ2QVQ1p5nZb8zsL+HHJ3QK1/UtM1tnZu+Z2a/MLDPqmFvM7BfAn6k9kQFmdkf4mJvM7IfhsoWEJmBdbmaxfehsZi+Z2fvhfb4RLn/eQo822GxmM6KOXW+/orar06+YY9fpY6L2xCgA7iUcksAQYIvrz+Fah3TPRKyv1H8RmvK+C7AD6ArcCcwD+lN7Rujo8kpC/5gzgA3AIkJTWF0DPB/evj+haewdcMwAAAL1SURBVLvGhpcXhesYDPweyAqX/wL4f1H7VAMXxWnnKGAj0BnIBTYDI8PrdgA94+xzHfBo1HLX8Pfu4e85wCagR3P7VfNehr/H7WOi9sS0eV+4XZvDP48bgYVR67ul+3fmVP7SSPIU5e6HgSeA2xu4y6fuvtFDk7luBl7z0L/gjYRCpMZOd/9T+PXvgC8D/0go8Nab2Xvh5YFR+3zm7u/EOeaXgefc/Yi7lxGaO/Af6mnnRuBSM/upmf2Dux8Kl99uZu8D7xAarZ6dhH5FS9THRO0BwMz6AvvdvRx4hdAkssOAv0Rt9kBsJ80s3hyL0gLa86S7Ur8HCX3E/XV4uZLap2Cyo14fj3pdHbVcTe3fo9iPiE5oZPYbd787QTuOJChvdBC4+0dmNgq4AphvZi8DawjNzj7G3Y+a2SpO9q05/Ypta9w+xrbH3e+JWj2MUJBCaBb1acDpwPPhfScA55rZnYTCeRmhacIsHMb/CzwOfD8ctJJkGkmewtz9AKGn69U8PfJvwBfMrEf44kFTHk3az8zGhF9PBd4EXgOmmNkXAMysu5md2YC61gCTzayTmXUGvga8EbSDmZ0BHHX33wH/SeihUl2BknBAnkvoWTDJ6Fe0uH1M0J5oBZwMydWERsrRwbkP+J27/ycwEljq7vcS+rl9mdDP7ikFZMvRSFL+i9Bcfbh7hZndA6wFPgU+bEJ9W4AbzexXwDbgl+Fw+jHwcvjqdQXwfeq5euvufzazxcC6cNFj7v5uPccvAO43s+rwcW4jFDgzzewvwFZCH7mb3a+Ytn6QoI9d47Qntr3Phus4bmYbCZ13PRheP4zQ0wEBRhAeYbr7x2Y2ktA5zsea0B9pIM0nKVKP8P2KL7r70DQc+2pCF3/uBe4Cvhs+f4qZLQ8v70l1u04lCkmReqQzJOMxs66Envj5urs/m+72tHcKSRGRALpwIyISQCEpIhJAISkiEkAhKSISQCEpIhJAISkiEkAhKSISQCEpIhJAISkiEuD/A3ggp2oWccK/AAAAAElFTkSuQmCC)
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
## $s$-Slicing
......@@ -359,11 +410,11 @@
``` python
minval = 0
maxval = 20
for (i, s) in enumerate(s_domain):
integrator = hit_miss_integrator(
integrator = MC_Integrator.uniform(
lambda x : eeqq_mel_random_q(s, x, 0.),
[(-1,1)], (minval, maxval))
mel = integrator(10000)
slices[i] = (mel * const.N_q * 2 * np.pi * const.f_conv
/ (64 * np.pi**2 * s))
......@@ -375,15 +426,15 @@
plt.step(s_domain, unp.nominal_values(slices) / (n_slices * (s_domain[-1]-s_domain[1])))
```
%%%% Output: execute_result
[<matplotlib.lines.Line2D at 0x7fad4ba268e0>]
[<matplotlib.lines.Line2D at 0x7fe924f25a00>]
%%%% Output: display_data
![](data:image/png;base64,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)
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
## What happens in Vegas, stays in Vegas
......@@ -405,21 +456,21 @@
result
```
%%%% Output: execute_result
0.00025695(52)
0.00025645(53)
%% Cell type:code id: tags:
``` python
result * const.N_q * 2 * np.pi * const.f_conv / (32 * np.pi**2)
```
%%%% Output: execute_result
9952(20)
9933(20)
%% Cell type:code id: tags:
``` python
print(result.summary())
......@@ -445,19 +496,207 @@
(7005.6900000000005, 9741.69)
%%%% Output: display_data
![](data:image/png;base64,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)
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
## Importance sampling
%% Cell type:code id: tags:
``` python
def func(x):
mel = eeqq_mel_random_q(x[0], x[1], 0.)
mel /= domain[0][1] - domain[0][0]
return 0.5 * mel / x[0]
integrator = MCIntegrator(func, sampler=BreitWignerSampler(prefactor=0.0004))
```
%% Cell type:code id: tags:
``` python
mel = integrator(100000)
mel
```
%% Cell type:code id: tags:
``` python
mel * const.N_q * 2 * np.pi * const.f_conv / (32 * np.pi**2)
```
%%%% Output: execute_result
1065913.1882593345+/-28536.71152709918
%% Cell type:code id: tags:
``` python
s = np.linspace((const.M_Z-3*const.Gamma_Z)**2, (const.M_Z+3*const.Gamma_Z)**2, 50)
costheta = np.linspace(-1, 1, 50)
X, Y = np.meshgrid(s, costheta)
f = func([X, Y])
g = func([X, Y]) / (0.0004 * breit_wigner_pdf(X))
h = breit_wigner_pdf(X)
#samples = integrator.samples(100)
```
%% Cell type:code id: tags:
``` python
plt.plot(f[-1,:])
plt.plot(0.0004 * h[-1,:])
```
%%%% Output: execute_result
[<matplotlib.lines.Line2D at 0x7fe922a6ef10>]
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:code id: tags:
``` python
ims = plt.imshow(g)#, extent=(s[0], s[-1], -1, 1))
plt.colorbar(ims)
plt.ylabel("costheta")
plt.xlabel("s")
```
%%%% Output: execute_result
Text(0.5, 0, 's')
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:code id: tags:
``` python
samples = integrator.samples(100)
```
%% Cell type:code id: tags:
``` python
samples
```
%%%% Output: execute_result
array([3.51926821e-05, 5.57425668e-05, 8.30004533e-05, 1.16665246e-04,
7.98217398e-05, 6.44316946e-05, 6.23550808e-05, 1.13624911e-04,
3.74021434e-05, 1.52341006e-04, 3.73793755e-05, 7.53121587e-05,
1.35550059e-04, 6.39967240e-05, 3.72306860e-05, 5.40028109e-05,
8.21817522e-05, 4.68047437e-05, 1.83492966e-04, 2.14541117e-04,
1.01887200e-04, 8.97415285e-05, 3.08174679e-05, 7.43260036e-05,
4.30177647e-05, 8.04837682e-05, 9.80177615e-05, 2.78505711e-03,
5.13142498e-05, 1.42101696e-04, 9.15817247e-05, 1.03995403e-04,
1.40048615e-04, 1.28768667e-04, 4.62583018e-05, 1.32527333e-04,
3.73489186e-05, 4.21237201e-05, 1.65497732e-04, 1.64902250e-04,
1.10691335e-04, 8.89356527e-05, 1.24654016e-04, 1.16578772e-04,
3.71840621e-05, 1.15607543e-04, 1.89140253e-04, 3.01888394e-05,
4.94212516e-05, 1.25366418e-04, 9.57432379e-05, 9.54312909e-05,
1.95469721e-04, 1.22247448e-04, 5.20632207e-05, 4.51905204e-05,
7.88528964e-05, 7.70176156e-05, 7.58507317e-05, 8.75674255e-05,
9.41088507e-05, 3.12774099e-05, 1.83379998e-04, 8.56654186e-05,
3.84161650e-05, 1.30458597e-04, 2.27486359e-04, 4.85894973e-05,
1.98808119e-04, 1.19033883e-04, 1.28568775e-04, 9.21207967e-05,
5.85462563e-05, 1.30992605e-04, 4.05686184e-05, 1.50817309e-04,
1.72002730e-04, 6.52427394e-05, 4.29316791e-05, 2.01835536e-04,
8.38265424e-05, 7.60200143e-05, 4.57295914e-05, 6.42872973e-05,
3.67895245e-05, 8.82506938e-05, 1.18321738e-04, 1.14342339e-04,
6.37880993e-05, 9.78021557e-05, 4.79105035e-05, 1.71804375e-04,
1.12293731e-04, 1.30040155e-04, 7.73188488e-05, 1.97402569e-04,
1.30946290e-04, 5.36473911e-05, 1.73703159e-04, 1.36221110e-04])
%% Cell type:code id: tags:
``` python
integrate.quad(breit_wigner_pdf, -10000000., 10000000.)
```
%%%% Output: execute_result
(0.9999854850591524, 1.0614706237397433e-08)
%% Cell type:code id: tags:
``` python
samples = np.array([breit_wigner_sampler() for _ in range(100000)])
```
%% Cell type:code id: tags:
``` python
x = np.linspace(3000, 12500, 1000)
y = breit_wigner_pdf(x)
plt.hist(samples, bins=100, range=(3000,12500), density=True);
plt.plot(x,y);
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
# Leftovers
%% Cell type:code id: tags:
``` python
def func(x):
return np.exp(-x**2 / 2) / np.sqrt(2 * np.pi)
def sampler():
x = np.random.uniform()
return scp.special.erfinv(x)
sampler.domain_volume = 1.
```
%% Cell type:code id: tags:
``` python
minval = 0.000
maxval = 1 / np.sqrt(np.pi)
codomain = (minval, maxval)
integrator = mc_integrator(func, [], codomain, histograms=False, sampler=sampler, weight_func=func)
```
%% Cell type:code id: tags:
``` python
integrate.quad(func, -10, 10)
```
%%%% Output: execute_result
(1.0000000000000002, 8.671029888166837e-10)
%% Cell type:code id: tags:
``` python
integrator(10000)
```
%%%% Output: execute_result
0.5641895835477563+/-0
%% Cell type:code id: tags:
``` python
for (q, integrator) in mel_integrators.items():
samples = integrator.samples(10000)
plt.hist(samples, bins=30, label=q)
```
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment