From 653867df41b8456f1874396c746175f942bab869 Mon Sep 17 00:00:00 2001 From: Hartmut Stadie <hartmut.stadie@cern.ch> Date: Wed, 9 Oct 2024 13:26:42 +0200 Subject: [PATCH] for lecture 3 --- exercises/notes.ipynb | 143 +++- lecture_1.ipynb | 364 ++++++++-- lecture_2.ipynb | 456 +++++++++--- lecture_3.ipynb | 1593 +++++++++++++++++++++++++++++++++++------ 4 files changed, 2167 insertions(+), 389 deletions(-) diff --git a/exercises/notes.ipynb b/exercises/notes.ipynb index 804fe12..63efdac 100644 --- a/exercises/notes.ipynb +++ b/exercises/notes.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "f9a43738", + "id": "fb753830", "metadata": {}, "source": [ "# Lecture 1" @@ -83,7 +83,7 @@ }, { "cell_type": "markdown", - "id": "8e32e760", + "id": "10024be8", "metadata": {}, "source": [ "### Covariance" @@ -92,7 +92,7 @@ { "cell_type": "code", "execution_count": 6, - "id": "e6109cc4", + "id": "b07134d7", "metadata": {}, "outputs": [ { @@ -111,7 +111,7 @@ { "cell_type": "code", "execution_count": 7, - "id": "66931fe8", + "id": "e207963a", "metadata": {}, "outputs": [ { @@ -129,7 +129,7 @@ }, { "cell_type": "markdown", - "id": "419aa49b", + "id": "6fc8d005", "metadata": {}, "source": [ "### Error propagation" @@ -138,7 +138,7 @@ { "cell_type": "code", "execution_count": 8, - "id": "012ef0dd", + "id": "951de8f4", "metadata": {}, "outputs": [ { @@ -172,7 +172,7 @@ }, { "cell_type": "markdown", - "id": "33313d40", + "id": "ed3e4f59", "metadata": {}, "source": [ "### Transformation" @@ -181,7 +181,7 @@ { "cell_type": "code", "execution_count": 11, - "id": "70418de5", + "id": "46b1c6f0", "metadata": {}, "outputs": [ { @@ -230,7 +230,7 @@ }, { "cell_type": "markdown", - "id": "4747c4aa", + "id": "53d8a462", "metadata": {}, "source": [ "### error propagation" @@ -239,7 +239,7 @@ { "cell_type": "code", "execution_count": 16, - "id": "3c37cd42", + "id": "e095853d", "metadata": {}, "outputs": [ { @@ -277,7 +277,7 @@ { "cell_type": "code", "execution_count": 30, - "id": "c868b9fa", + "id": "6134e4d4", "metadata": {}, "outputs": [ { @@ -318,7 +318,7 @@ }, { "cell_type": "markdown", - "id": "c97e694a", + "id": "bb8d0c7f", "metadata": {}, "source": [ "# Lecture 2" @@ -327,7 +327,7 @@ { "cell_type": "code", "execution_count": 31, - "id": "ee1dd957", + "id": "606ec8c6", "metadata": {}, "outputs": [ { @@ -355,7 +355,7 @@ { "cell_type": "code", "execution_count": 33, - "id": "4df90d0b", + "id": "eda2fc7e", "metadata": {}, "outputs": [ { @@ -389,7 +389,7 @@ { "cell_type": "code", "execution_count": 34, - "id": "4b9f8e68", + "id": "101767aa", "metadata": {}, "outputs": [ { @@ -410,7 +410,7 @@ { "cell_type": "code", "execution_count": 35, - "id": "0a159c23", + "id": "ebb42a75", "metadata": {}, "outputs": [ { @@ -433,7 +433,7 @@ { "cell_type": "code", "execution_count": 36, - "id": "bdeeeec8", + "id": "809eec62", "metadata": {}, "outputs": [ { @@ -453,7 +453,7 @@ }, { "cell_type": "markdown", - "id": "9d4cde4d", + "id": "54fd38f2", "metadata": {}, "source": [ "#### Better interval" @@ -462,7 +462,7 @@ { "cell_type": "code", "execution_count": 37, - "id": "8268e8ba", + "id": "2a4dbc43", "metadata": {}, "outputs": [ { @@ -500,7 +500,7 @@ }, { "cell_type": "markdown", - "id": "9c9db3b4", + "id": "14ddb550", "metadata": {}, "source": [ "### Wilk's theorem" @@ -509,7 +509,7 @@ { "cell_type": "code", "execution_count": 45, - "id": "5183cc6f", + "id": "696ccef4", "metadata": {}, "outputs": [ { @@ -561,7 +561,7 @@ { "cell_type": "code", "execution_count": 42, - "id": "866ef837", + "id": "0a64c4a6", "metadata": {}, "outputs": [ { @@ -600,7 +600,7 @@ }, { "cell_type": "markdown", - "id": "f90ce4d2", + "id": "bd77aaf4", "metadata": {}, "source": [ "### Handball" @@ -609,7 +609,7 @@ { "cell_type": "code", "execution_count": 43, - "id": "dc3bd040", + "id": "9cce4f0d", "metadata": {}, "outputs": [ { @@ -673,10 +673,103 @@ "plt.show()" ] }, + { + "cell_type": "markdown", + "id": "40f143b2", + "metadata": {}, + "source": [ + "# Lecture 3" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "891ae27b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.000432711737554162 0.004531178682458194\n" + ] + }, + { + "data": { + "image/png": "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9dVXuDsAgG4rJlVKGOztKtwmICBAdrvd22UYy6VBsrt379acOXO0f/9+5efn69y5c8rMzFR9fb1TuwkTJqi0tNQxvffee07Ls7OzlZeXp9zcXH3yySeqq6vTxIkTdf78+SvfIwAAvGDMmDGaN2+esrOzFRkZqbi4OL322muqr6/Xv/zLvygsLEzXXXed3n//fUltl3hsNpuqq6slSZs2bVJERIQ+/PBD/fjHP1bv3r0dv6cdMWPGDN19991avny54uLiFBERoWXLluncuXN67LHHFBUVpauvvlqvv/6603pPPPGEUlNTFRISoh/96Ed66qmn1NLSIqntxYTjxo3ThAkTHC8grK6u1jXXXKOlS5e66chdmEsB5YMPPtCMGTM0cOBADRo0SBs3btSpU6dUUFDg1C4wMFB2u90xRUVFOZbV1NRow4YNevHFFzVu3DjdeOONevPNN/XFF19ox44d7tkrAAC8YPPmzYqJidGBAwc0b948PfLII5oyZYoyMjL0v//7vxo/frymTZumhoYLj6dpaGjQCy+8oDfeeEN79uzRqVOntHDhwg73//HHH+vbb7/Vnj17tHLlSuXk5GjixImKjIzUZ599ptmzZ2v27NkqKSlxrBMWFqZNmzbp2LFjeumll7R+/XqtWrVKkmSz2bR582YdOHBAL7/8siRp9uzZiouLU05OTucPVAdc0W3GNTU1kuQUQKS2VBgbG6vU1FTNmjVL5eXljmUFBQVqaWlRZmamY15CQoLS0tK0d+/eC/bT1NSk2tpapwkAANMMGjRITz75pFJSUrR48WIFBwcrJiZGs2bNUkpKip5++mlVVlbq8OHDF1y/paVFr776qoYNG6YhQ4Zo7ty5+u///u8O9x8VFaWXX35ZAwYM0L/+679qwIABamho0JIlSxw1BQQE6NNPP3Ws8+STTyojI0PXXnutJk2apAULFug///M/HcsTExP129/+Vk888YSWLFmiP/3pT/r9738vf3//zh+oDuj0IFnLsjR//nzdfPPNSktLc8zPysrSlClTlJycrOLiYj311FO67bbbVFBQoMDAQJWVlSkgIECRkZFO24uLi1NZWdkF+1qxYoWWLVvW2VIBAOgSN9xwg+PPfn5+io6OVnp6umNeXFycJKm8vFx9+vRpt35ISIiuu+46x+f4+Hinv+RfzsCBA3XVVf889xAXF+f0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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import scipy\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "xs = scipy.stats.norm.rvs(1,1,size=(1000,10))\n", + "ys = scipy.stats.uniform.rvs(0,2,size=(1000,10))\n", + "\n", + "#xs = ys\n", + "mu1 = np.mean(xs, axis=1)\n", + "mu2 = (np.max(xs, axis=1) + np.min(xs, axis=1))/2\n", + "plt.hist(mu1-1, histtype=\"step\", label=\"mean\")\n", + "plt.hist(mu2-1, histtype=\"step\", label=\"min_max\")\n", + "plt.legend()\n", + "print(np.mean(mu1-1), np.mean(mu2-1))" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "543f9986", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "-0.09993926417503385 -0.032052568755410106\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAGdCAYAAAA8F1jjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA0/ElEQVR4nO3de3xU9Z3/8fcYcoVkBhKSTCBIEBIhgNBEl6BcFA0lLVXBLe26XGylRS7+IFI0+uhW6iVakUbKrVgUlW1hHw24dqEsuJLgJayASaVy0zYlaUyMSUkCCeQC5/dHlsExFzJDJnMyeT0fj/N45Hzne875zDfnQd6cq8UwDEMAAAAmdJ23CwAAAGgLQQUAAJgWQQUAAJgWQQUAAJgWQQUAAJgWQQUAAJgWQQUAAJgWQQUAAJhWL28X0BGXLl3S559/rtDQUFksFm+XAwAAOsAwDJ09e1YxMTG67jr3jo10i6Dy+eefKzY21ttlAAAANxQXF2vgwIFuLdstgkpoaKik5i8aFhbm5WoAAEBH1NTUKDY21vF33B3dIqhcPt0TFhZGUAEAoJu5lss2uJgWAACYFkEFAACYFkEFAACYVre4RgUA4LsMw1BTU5MuXrzo7VLgIj8/P/Xq1cujjw4hqAAAvKahoUGlpaWqq6vzdilwU0hIiOx2uwICAjyyfoIKAMArLl26pMLCQvn5+SkmJkYBAQE81LMbMQxDDQ0N+vLLL1VYWKhhw4a5/VC39hBUAABe0dDQoEuXLik2NlYhISHeLgduCA4Olr+/v06fPq2GhgYFBQV1+ja4mBYA4FWe+F84uo6nf3/sHQAAwLQ49QMAMJ2SqvM6U9vQZdvr2ztAA2zBXbY9dBxBBQBgKiVV53Xni7k639h1tysH+/vp7Ucm+VRY2bJli5YuXaqqqipvl3JNCCoAAFM5U9ug840XlTVrjIZG9vH49j4rP6el2wt0prbBpaBSVlamzMxM7dq1S3//+99ltVo1bNgw/eu//qvmzJnj9QuEZ82apbS0NK/W0BkIKgAAUxoa2UcjB1i9XUar/vrXv+rWW2+VzWbTs88+q1GjRqmpqUmnTp3SK6+8opiYGH3nO9/xao3BwcEKDu7+R4i4mBa+rapY+rzAeaoq9m5NALq9hQsXqlevXjp8+LC++93vavjw4Ro1apRmzpypXbt2afr06ZKk1atXa9SoUerdu7diY2O1cOFCnTt3zrGeJ598UmPGjHFad1ZWlgYPHuyYz8nJ0S233KLevXvLZrPp1ltv1enTpyVJf/rTn3T77bcrNDRUYWFhSkpK0uHDhyU1n/qx2WyO9fzlL3/R3XffraioKPXp00c333yz3n77badtDx48WM8++6x+8IMfKDQ0VIMGDdKmTZs6ceRcR1CB76oqltbdIm2a5Dytu4WwAsBtlZWV2rt3rxYtWqTevXu32ufyg+uuu+46rVmzRn/+85/12muv6Z133tGKFSs6vK2mpibdc889mjRpkj7++GPl5eXpRz/6kWP9999/vwYOHKhDhw7pyJEjeuyxx+Tv79/qus6dO6e0tDS9/fbbys/P19SpUzV9+nQVFRU59XvxxReVnJys/Px8LVy4UA899JBOnDjR4Zo7G6d+4LvqKqXGOmnGy1JEfHNbxSlpx/zmz2yx3q0PQLf02WefyTAMJSQkOLVHRETowoULkqRFixbp+eef19KlSx2fx8XF6amnntJDDz2k9evXd2hbNTU1qq6u1re//W3dcMMNkqThw4c7Pi8qKtJPfvIT3XjjjZKkYcOGtbmum266STfddJNj/umnn9bOnTv11ltvafHixY72tLQ0LVy4UJL06KOP6pe//KVycnIc2+hq13REJTMzUxaLxekX0Zrc3FwlJSUpKChIQ4YM0caNG69ls4BrIuKlmDHN0+XAAgDX6OuP+//www9VUFCgxMRE1dfXS5L279+vu+66SwMGDFBoaKjmzJmjyspK1dbWdmgb/fr107x58xxHP1566SWVlpY6Pk9PT9eDDz6oO++8U88995z+8pe/tLmu2tparVixQiNGjJDNZlOfPn104sSJFkdURo8e7fQdo6OjVV5e3qF6PcHtoHLo0CFt2rTJ6Qu1prCwUGlpaZowYYLy8/P1+OOP6+GHH1Z2dra7mwYAwGuGDh0qi8XS4nTIkCFDNHToUMcFrKdPn1ZaWppGjhyp7OxsHTlyROvWrZMkNTY2Smo+NWQYhtN6Ln922auvvqq8vDyNHz9e27dvV3x8vA4ePCip+RqXTz75RN/61rf0zjvvaMSIEdq5c2erdf/kJz9Rdna2nnnmGb377rsqKCjQqFGj1NDg/Lyar586slgsunTpkitD1KncCirnzp3T/fffr5dffll9+/Ztt+/GjRs1aNAgZWVlafjw4XrwwQf1gx/8QKtWrXKrYAAAvCk8PFx33XWX1q5d2+6RkcOHD6upqUkvvviixo0bp/j4eH3++edOffr376+ysjKnsFJQUNBiXWPHjlVGRoY++OADjRw5Ur/97W8dn8XHx2vZsmXau3evZsyYoVdffbXVet59913NmzdP9957r0aNGqXo6Gj97W9/c+3Le4Fb16gsWrRI3/rWt3TnnXfq6aefbrdvXl6eUlNTndqmTp2qzZs3q7GxsdWLfurr6x2HzaTmc3QAgJ7ls/JzV+/kpe2sX79et956q5KTk/Xkk09q9OjRuu6663To0CGdOHFCSUlJuuGGG9TU1KRf/epXmj59ut5///0Wlz5MnjxZX375pX7xi1/ovvvu0549e/THP/5RYWFhkprPSmzatEnf+c53FBMTo5MnT+rUqVOaM2eOzp8/r5/85Ce67777FBcXp7///e86dOiQZs6c2WrNQ4cO1Y4dOzR9+nRZLBb99Kc/9eqRko5yOahs27ZNH330kQ4dOtSh/mVlZYqKinJqi4qKUlNTkyoqKmS321ssk5mZqZUrV7paGgDAB/TtHaBgfz8t3V7QZdsM9vdT394BHe5/ww03KD8/X88++6wyMjL097//XYGBgRoxYoSWL1+uhQsXKiQkRKtXr9bzzz+vjIwMTZw4UZmZmZozZ45jPcOHD9f69ev17LPP6qmnntLMmTO1fPlyxy3BISEhOnHihF577TVVVlbKbrdr8eLF+vGPf6ympiZVVlZqzpw5+uKLLxQREaEZM2a0+ffzl7/8pX7wgx9o/PjxioiI0KOPPtotDgRYjK+fHGtHcXGxkpOTtXfvXseVw5MnT9aYMWOUlZXV6jLx8fF64IEHlJGR4Wh7//33ddttt6m0tFTR0dEtlmntiEpsbKyqq6sdKRO4qs8Lmm9H/lFu84W0bbUB8IoLFy6osLBQcXFxCgoKcvqMd/10H+39HmtqamS1Wq/p77dLR1SOHDmi8vJyJSUlOdouXryoAwcOaO3ataqvr5efn5/TMtHR0SorK3NqKy8vV69evRQeHt7qdgIDAxUYGOhKaQAAHzLAFkxwgCQXg8qUKVN09OhRp7YHHnhAN954ox599NEWIUWSUlJS9Ic//MGpbe/evUpOTm7zoTSAx1WcuvJzSDjPVAEAk3IpqISGhmrkyJFObb1791Z4eLijPSMjQyUlJXr99dclSQsWLNDatWuVnp6u+fPnKy8vT5s3b9bvfve7TvoKgAtCwiX/kOaHvl3mHyIt+pCwAgAm1OlPpi0tLXV6eExcXJx2796tZcuWad26dYqJidGaNWvavCoZ8ChbbHMoqatsnudJtQBgatccVHJycpzmt2zZ0qLPpEmT9NFHH13rpoDOYYsllABAN8FLCQEAgGkRVAAAgGkRVAAAgGl1+sW0AABcs6riKxe9d4UufkxBTk6Obr/9dp05c0Y2m02S9Oabb2r58uUqLCzUkiVL2nyQak9DUAEAmEtVsbTuFqmxruu22cWPKRg/frxKS0tltVodbT/+8Y/1wAMP6OGHH1ZoaGiX1NEdEFQAAOZSV9kcUma8LEXEe357XnhMQUBAgNMrZM6dO6fy8nJNnTpVMTExbq+3oaFBAQEdf2dRd8A1KgAAc4qIb34nl6cnN8LQ4MGDW5yaGTNmjJ588klJksVi0W9+8xvde++9CgkJ0bBhw/TWW285+ubk5Mhisaiqqko5OTmOIyh33HGHLBaL49Ef2dnZSkxMVGBgoAYPHqwXX3yxRR1PP/205s2bJ6vVqvnz52vLli2y2Wz6r//6LyUkJCgkJET33Xefamtr9dprr2nw4MHq27evlixZoosXL7r83bsaQQUAAA9YuXKlvvvd7+rjjz9WWlqa7r//fv3jH/9o0W/8+PE6efKkpOZgUlpaqvHjx+vIkSP67ne/q+9973s6evSonnzySf30pz9t8byyF154QSNHjtSRI0f005/+VJJUV1enNWvWaNu2bdqzZ49ycnI0Y8YM7d69W7t379Ybb7yhTZs26fe//73Hx+FaceoHAAAPmDdvnr7//e9Lkp599ln96le/0ocffqhvfvObTv0CAgIUGRkpSerXr5/jlNDq1as1ZcoUR/iIj4/XsWPH9MILL2jevHmO5e+44w4tX77cMf/ee++psbFRGzZs0A033CBJuu+++/TGG2/oiy++UJ8+fTRixAjdfvvt2r9/v2bNmuWxMegMHFEBAMADRo8e7fi5d+/eCg0NVXl5eYeXP378uG699VantltvvVWffvqp0ymb5OTkFsuGhIQ4QookRUVFafDgwerTp49Tmyv1eAtBBQAAF1133XUyDMOprbGx0Wne39/fad5isejSpUsd3oZhGLJYLC3avq53794t2lrb9rXW4y0EFQAA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5K8CAAB8jUtBZcOGDZKkyZMnO7W/+uqrmjdvniSptLRURUVFjs8aGhq0fPlylZSUKDg4WImJidq1a5fS0tKurXIAAODzXD71czVbtmxxml+xYoVWrFjhUlEAAAAS7/oBAAAmRlABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACmRVABAACm5VJQyczM1M0336zQ0FBFRkbqnnvu0cmTJ6+6XG5urpKSkhQUFKQhQ4Zo48aNbhcMeE3FKenzgitTVbGXCwIA39fLlc65ublatGiRbr75ZjU1NemJJ55Qamqqjh07pt69e7e6TGFhodLS0jR//nxt3bpV77//vhYuXKj+/ftr5syZnfIl0ENUFUt1lc0/V5zquu2GhEv+IdKO+c7t/iHSog8lW2zX1QIAPYzFMAzD3YW//PJLRUZGKjc3VxMnTmy1z6OPPqq33npLx48fd7QtWLBAf/rTn5SXl9eh7dTU1Mhqtaq6ulphYWHulovurKpYWneL1Fh3pa0rg8JXQ5LUHJR2zJd+lCvFjPH89gGgG+qMv98uHVH5uurqaklSv3792uyTl5en1NRUp7apU6dq8+bNamxslL+/f4tl6uvrVV9f75ivqam5ljLhC+oqm0PKjJeliPjmtpDwrjuaYYvlyAkAeIHbF9MahqH09HTddtttGjlyZJv9ysrKFBUV5dQWFRWlpqYmVVRUtLpMZmamrFarY4qN5Q8E/k9EfPMRjJgxBAcA6AHcDiqLFy/Wxx9/rN/97ndX7WuxWJzmL59t+nr7ZRkZGaqurnZMxcVctAgAQE/k1qmfJUuW6K233tKBAwc0cODAdvtGR0errKzMqa28vFy9evVSeHh4q8sEBgYqMDDQndIAAIAPcemIimEYWrx4sXbs2KF33nlHcXFxV10mJSVF+/btc2rbu3evkpOTW70+BQAA4DKXgsqiRYu0detW/fa3v1VoaKjKyspUVlam8+fPO/pkZGRozpw5jvkFCxbo9OnT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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import scipy\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "n_sample = 10\n", + "xs = scipy.stats.norm.rvs(1,1,size=(10000,n_sample))\n", + "ys = scipy.stats.uniform.rvs(0, 2,size=(10000,n_sample))\n", + "\n", + "true_var1 = 1\n", + "true_var2 = 2**2/12\n", + "\n", + "var1 = np.var(xs, axis=1)\n", + "var2 = np.var(ys, axis=1)\n", + "plt.hist(var1 - true_var1, histtype=\"step\", density=True, bins=20, label=\"Gaussian\")\n", + "plt.hist(var2 - true_var2, histtype=\"step\", density=True, bins=20, label=\"uniform\")\n", + "plt.legend()\n", + "print(np.mean(var1 - true_var1), np.mean(var2 - true_var2))" + ] + }, { "cell_type": "code", "execution_count": null, - "id": "4065accd", + "id": "a17614fe", "metadata": {}, "outputs": [], "source": [] diff --git a/lecture_1.ipynb b/lecture_1.ipynb index 5cada08..95e22a9 100644 --- a/lecture_1.ipynb +++ b/lecture_1.ipynb @@ -31,7 +31,7 @@ }, { "cell_type": "markdown", - "id": "0ad07a74", + "id": "325cab6e", "metadata": { "slideshow": { "slide_type": "slide" @@ -51,6 +51,9 @@ "<br>\n", "\n", "* Volker Blobel, Erich Lohrmann, Statistische und numerische Methoden der Datenanalyse,[pdf](https://www.desy.de/~sschmitt/blobel/eBuch.pdf)\n", + "<br>\n", + "\n", + "* Particle Data Group, Statistics [pdf](https://pdg.lbl.gov/2020/reviews/rpp2020-rev-statistics.pdf)\n", " " ] }, @@ -574,7 +577,7 @@ "\n", "$$g(a) da = \\int_{dS} f(x)\\,dx$$ \n", "\n", - "if $x(a)$ (the inverse of $a(x)$) exists:\n", + "if $x^{-1}(a)$ (the inverse of $a(x)$) exists:\n", "$$g(a) da = \\left| \\int_{x(a)}^{x(a +da)} f(x^\\prime)\\,dx^\\prime \\right| = \\int_{x(a)}^{x(a) + |\\frac{dx}{da}|da} f(x^\\prime)\\,dx^\\prime$$\n", "or\n", "$$g(a) = f(x(a)) \\left|\\frac{dx}{da}\\right|$$" @@ -602,7 +605,7 @@ "For $x$ equally distributed between 0 and 1, p.d.f. of $x$: $u(x) = 1$ and $a(x) = F^{-1}(x)$, $x(a) = F(a)$<br>\n", "\n", "p.d.f. $g(a)$:\n", - "$$g(a) = u(x(a)) \\left|\\frac{dx}{da}\\right| = 1 \\cdot \\left|\\frac{dF(a)}{da}\\right| = f(a$$" + "$$g(a) = u(x(a)) \\left|\\frac{dx}{da}\\right| = 1 \\cdot \\left|\\frac{dF(a)}{da}\\right| = f(a)$$" ] }, { @@ -655,10 +658,10 @@ "$$E[a\\cdot g(x) + b \\cdot h(x)] = a\\cdot E[g(x)] + b\\cdot E[h(x)]$$\n", "\n", "- $n$th moment:\n", - "$$E[x^n] = \\int_{-\\infty}^{\\infty} x \\, f(x)\\,dx$$\n", + "$$E[x^n] = \\int_{-\\infty}^{\\infty} x^n \\, f(x)\\,dx$$\n", "\n", "- $n$th central moment:\n", - "$$E[(x - E[x])^n] = E[(x-\\mu)^n] = \\int_{-\\infty}^{\\infty} x \\, f(x)\\,dx$$" + "$$E[(x - E[x])^n] = E[(x-\\mu)^n] = \\int_{-\\infty}^{\\infty} (x-\\mu)^n \\, f(x)\\,dx$$" ] }, { @@ -943,10 +946,29 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "b44e356e-b829-4879-b5fc-9706fffe873d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "array([[5., 0.],\n", + " [2., 1.],\n", + " [0., 1.],\n", + " [0., 3.],\n", + " [0., 1.],\n", + " [2., 2.],\n", + " [4., 0.],\n", + " [2., 1.],\n", + " [1., 3.]])" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "import numpy as np\n", "data = np.loadtxt('./exercises/09_data.txt')\n", @@ -956,20 +978,42 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "2aeacb94-518d-464f-a7ab-5282b97bc225", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "array([5., 2., 0., 0., 0., 2., 4., 2., 1.])" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "data[0:9,0]" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "1829fa78-7d7b-4bac-9f24-5129dca63629", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "(np.float64(0.0), np.float64(6.0))" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "np.min(data), np.max(data)" ] @@ -988,7 +1032,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "871f915d-09f8-4d14-a79a-8fbd2f16ab75", "metadata": { "cell_style": "center", @@ -998,7 +1042,30 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "(array([74., 96., 0., 67., 0., 43., 13., 0., 10., 3.]),\n", + " array([0. , 0.6, 1.2, 1.8, 2.4, 3. , 3.6, 4.2, 4.8, 5.4, 6. ]),\n", + " <BarContainer object of 10 artists>)" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGfCAYAAAB1KinVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAb8ElEQVR4nO3dcazV9X3/8dct6BXcBYWWe7kT9Xa7ma2odeAIaMVOZXHU1JBVO2zL0i6BgFXKHMrY5rVZ71W6UrZSWa5LLK6h+oeyulgrN2uLbVhTRFkZbbSNVG5ab2660XtRyWXC9/eHP09+V2yF/g49n2sfj+SbcD7ne8998xXl6eece05TVVVVAAAK8rZGDwAA8HoCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACjO+BP9gieeeCKf+cxnsmvXrrzwwgvZunVrrrvuutr9VVXlzjvvTG9vbw4cOJA5c+bkC1/4Qs4///zaOSMjI7n11lvz5S9/OYcOHcqVV16Ze+65J2edddZxzXD06NH89Kc/TUtLS5qamk70twAANEBVVTl48GDa29vztre9yR5JdYK++tWvVmvXrq0eeuihKkm1devWUfffddddVUtLS/XQQw9Ve/bsqW644YZq+vTp1fDwcO2cZcuWVb/9279d9fX1VU899VT1vve9r7rooouqV1555bhm6O/vr5I4HA6Hw+EYg0d/f/+b/l3fVFW/+ocFNjU1jdpBqaoq7e3tWblyZW677bYkr+6WtLa25u67787SpUszNDSUd7zjHfmXf/mX3HDDDUmSn/70p5kxY0a++tWv5o/+6I/e9PsODQ3ljDPOSH9/fyZNmvSrjg8A/BoNDw9nxowZ+fnPf57Jkyf/0nNP+CmeX2bfvn0ZGBjIggULamvNzc2ZP39+duzYkaVLl2bXrl353//931HntLe3Z+bMmdmxY8cbBsrIyEhGRkZqtw8ePJgkmTRpkkABgDHmeF6eUdcXyQ4MDCRJWltbR623trbW7hsYGMipp56aM8888xee83o9PT2ZPHly7ZgxY0Y9xwYACnNSforn9WVUVdWb1tIvO2fNmjUZGhqqHf39/XWbFQAoT10Dpa2tLUmO2QkZHBys7aq0tbXl8OHDOXDgwC885/Wam5trT+d4WgcA3vrqGigdHR1pa2tLX19fbe3w4cPZvn175s2blySZNWtWTjnllFHnvPDCC/mv//qv2jkAwG+2E36R7Isvvpgf/ehHtdv79u3L7t27M2XKlJx99tlZuXJluru709nZmc7OznR3d2fixIlZvHhxkmTy5Mn5+Mc/nr/4i7/I1KlTM2XKlNx666254IILctVVV9XvdwYAjFknHChPPvlk3ve+99Vur1q1KkmyZMmSfPGLX8zq1atz6NChLF++vPZGbdu2bUtLS0vtaz73uc9l/Pjxuf7662tv1PbFL34x48aNq8NvCQAY6/6/3gelUYaHhzN58uQMDQ15PQoAjBEn8ve3z+IBAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOCf8Rm2U6dzbH230CCfsx3ctbPQIABTKDgoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFKfugfLKK6/kr//6r9PR0ZEJEybkne98Zz71qU/l6NGjtXOqqkpXV1fa29szYcKEXHHFFdm7d2+9RwEAxqi6B8rdd9+df/qnf8rGjRvzgx/8IOvWrctnPvOZfP7zn6+ds27duqxfvz4bN27Mzp0709bWlquvvjoHDx6s9zgAwBhU90D5j//4j3zgAx/IwoULc+655+ZP/uRPsmDBgjz55JNJXt092bBhQ9auXZtFixZl5syZ2bx5c15++eVs2bKl3uMAAGNQ3QPlsssuy7//+7/n2WefTZL853/+Z7797W/nj//4j5Mk+/bty8DAQBYsWFD7mubm5syfPz87dux4w8ccGRnJ8PDwqAMAeOsaX+8HvO222zI0NJTzzjsv48aNy5EjR/LpT386f/qnf5okGRgYSJK0traO+rrW1tY8//zzb/iYPT09ufPOO+s9KgBQqLrvoDz44IP50pe+lC1btuSpp57K5s2b8/d///fZvHnzqPOamppG3a6q6pi116xZsyZDQ0O1o7+/v95jAwAFqfsOyl/+5V/m9ttvz4c+9KEkyQUXXJDnn38+PT09WbJkSdra2pK8upMyffr02tcNDg4es6vymubm5jQ3N9d7VACgUHXfQXn55ZfztreNfthx48bVfsy4o6MjbW1t6evrq91/+PDhbN++PfPmzav3OADAGFT3HZRrr702n/70p3P22Wfn/PPPz9NPP53169fnYx/7WJJXn9pZuXJluru709nZmc7OznR3d2fixIlZvHhxvccBAMagugfK5z//+fzN3/xNli9fnsHBwbS3t2fp0qX527/929o5q1evzqFDh7J8+fIcOHAgc+bMybZt29LS0lLvcQCAMaipqqqq0UOcqOHh4UyePDlDQ0OZNGlSo8cpwrm3P9roEU7Yj+9a2OgRAPg1OpG/v30WDwBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxRnf6AFKdO7tjzZ6BAD4jWYHBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAozvhGDwBjybm3P9roEU7Yj+9a2OgRAE6YHRQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOCclUH7yk5/kwx/+cKZOnZqJEyfmPe95T3bt2lW7v6qqdHV1pb29PRMmTMgVV1yRvXv3noxRAIAxqO6BcuDAgVx66aU55ZRT8thjj+X73/9+PvvZz+aMM86onbNu3bqsX78+GzduzM6dO9PW1parr746Bw8erPc4AMAYNL7eD3j33XdnxowZue+++2pr5557bu3XVVVlw4YNWbt2bRYtWpQk2bx5c1pbW7Nly5YsXbr0mMccGRnJyMhI7fbw8HC9xwYAClL3HZRHHnkks2fPzgc/+MFMmzYtF198ce69997a/fv27cvA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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "import matplotlib.pyplot as plt\n", "\n", @@ -1021,12 +1088,33 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "f8263279-48b5-4421-be05-604ddbfd8d6f", "metadata": { "cell_style": "center" }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0, 'k')" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAikAAAGzCAYAAADqhoemAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAdCElEQVR4nO3df3DX9X3A8VcKEsGFKFQSMqOmXVqt+KtgOaIddGp2jnp63KodtmXXbgcHWlPmEMY2ozcTpZOxlcou7o7CehT/sEx39Qe5aWMd6xWjrIz2tD2p5KxZbh1NULkw4bM/en5vMXSF+k2/r9jH4+5zx/fz/Xw/eeVzejx5f39VFUVRBABAMu+p9AAAAMcjUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJQmnuwDnn766fjiF78Yvb298eqrr8aOHTvi+uuvL91fFEXceeed0dXVFQcPHoy5c+fGl7/85bjgggtKxwwPD8dtt90WX/va1+Lw4cNx5ZVXxv333x9nnXXWCc1w7Nix+PGPfxw1NTVRVVV1sr8CAFABRVHEoUOHoqGhId7znhNYJylO0qOPPlqsXbu2eOihh4qIKHbs2DHi/nvuuaeoqakpHnrooWLv3r3FjTfeWMycObMYGhoqHbNs2bLiN3/zN4vu7u7iueeeKz72sY8VF198cfHmm2+e0Ax9fX1FRNhsNpvNZhuHW19f3wn9fV9VFL/8FwxWVVWNWEkpiiIaGhqira0tbr/99oj42apJXV1d3HvvvbF06dIYHByMM888M/7xH/8xbrzxxoiI+PGPfxyNjY3x6KOPxu/+7u/+wp87ODgYp59+evT19cXUqVN/2fEBgF+hoaGhaGxsjJ/+9KdRW1v7C48/6ad7/j/79++P/v7+aG1tLe2rrq6O+fPnx65du2Lp0qXR29sb//M//zPimIaGhpg1a1bs2rXruJEyPDwcw8PDpduHDh2KiIipU6eKFAAYZ070pRplfeFsf39/RETU1dWN2F9XV1e6r7+/PyZNmhRnnHHGzz3m7To7O6O2tra0NTY2lnNsACChMXl3z9sLqSiKX1hN/98xa9asicHBwdLW19dXtlkBgJzKGin19fUREaNWRAYGBkqrK/X19XHkyJE4ePDgzz3m7aqrq0tP7XiKBwB+PZQ1UpqamqK+vj66u7tL+44cORI9PT3R0tISERGzZ8+OU045ZcQxr776avzHf/xH6RgAgJN+4exrr70WP/zhD0u39+/fH3v27Ilp06bF2WefHW1tbdHR0RHNzc3R3NwcHR0dMWXKlFi8eHFERNTW1sbnPve5+JM/+ZOYPn16TJs2LW677ba48MIL46qrrirfbwYAjGsnHSnPPvtsfOxjHyvdXrlyZURELFmyJL7yla/EqlWr4vDhw7F8+fLSh7nt3LkzampqSo/5m7/5m5g4cWLccMMNpQ9z+8pXvhITJkwow68EALwbvKPPSamUoaGhqK2tjcHBQa9PAYBx4mT//vbdPQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSOulPnIX/69zV36j0CMf1o3sWVnoEAN4hKykAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKRU9kh5880348///M+jqakpJk+eHO973/virrvuimPHjpWOKYoi2tvbo6GhISZPnhwLFiyIffv2lXsUAGAcK3uk3HvvvfH3f//3sXHjxvj+978f69atiy9+8YvxpS99qXTMunXrYv369bFx48bYvXt31NfXx9VXXx2HDh0q9zgAwDhV9kj5t3/7t7juuuti4cKFce6558bv//7vR2trazz77LMR8bNVlA0bNsTatWtj0aJFMWvWrNiyZUu88cYbsW3btnKPAwCMU2WPlCuuuCL+5V/+JV588cWIiPj3f//3eOaZZ+L3fu/3IiJi//790d/fH62traXHVFdXx/z582PXrl3HPefw8HAMDQ2N2ACAd7eJ5T7h7bffHoODg3HeeefFhAkT4ujRo3H33XfHH/zBH0RERH9/f0RE1NXVjXhcXV1dvPzyy8c9Z2dnZ9x5553lHhUASKzsKykPPvhgfPWrX41t27bFc889F1u2bIm//uu/ji1btow4rqqqasTtoihG7XvLmjVrYnBwsLT19fWVe2wAIJmyr6T86Z/+aaxevTo++clPRkTEhRdeGC+//HJ0dnbGkiVLor6+PiJ+tqIyc+bM0uMGBgZGra68pbq6Oqqrq8s9KgCQWNlXUt544414z3tGnnbChAmltyA3NTVFfX19dHd3l+4/cuRI9PT0REtLS7nHAQDGqbKvpFx77bVx9913x9lnnx0XXHBBPP/887F+/fr47Gc/GxE/e5qnra0tOjo6orm5OZqbm6OjoyOmTJkSixcvLvc4AMA4VfZI+dKXvhR/8Rd/EcuXL4+BgYFoaGiIpUuXxl/+5V+Wjlm1alUcPnw4li9fHgcPHoy5c+fGzp07o6amptzjAADjVFVRFEWlhzhZQ0NDUVtbG4ODgzF16tRKj/Nr7dzV36j0CMf1o3sWVnoEAN7mZP/+9t09AEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkNLESg+Q0bmrv1HpEUb50T0LKz0CAPxKWUkBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFKaWOkB4NfFuau/UekRjutH9yys9AgAx2UlBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICUxiRSXnnllfjUpz4V06dPjylTpsQll1wSvb29pfuLooj29vZoaGiIyZMnx4IFC2Lfvn1jMQoAME6VPVIOHjwYl19+eZxyyinx2GOPxfe+972477774vTTTy8ds27duli/fn1s3Lgxdu/eHfX19XH11VfHoUOHyj0OADBOTSz3Ce+9995obGyMzZs3l/ade+65pT8XRREbNmyItWvXxqJFiyIiYsuWLVFXVxfbtm2LpUuXlnskAGAcKvtKyiOPPBJz5syJT3ziEzFjxoy49NJL44EHHijdv3///ujv74/W1tbSvurq6pg/f37s2rXruOccHh6OoaGhERsA8O5W9kh56aWXYtOmTdHc3BxPPPFELFu2LD7/+c/H1q1bIyKiv78/IiLq6upGPK6urq5039t1dnZGbW1taWtsbCz32ABAMmWPlGPHjsWHP/zh6OjoiEsvvTSWLl0af/zHfxybNm0acVxVVdWI20VRjNr3ljVr1sTg4GBp6+vrK/fYAEAyZY+UmTNnxoc+9KER+84///w4cOBARETU19dHRIxaNRkYGBi1uvKW6urqmDp16ogNAHh3K3ukXH755fHCCy+M2Pfiiy/GOeecExERTU1NUV9fH93d3aX7jxw5Ej09PdHS0lLucQCAcars7+75whe+EC0tLdHR0RE33HBDfOc734murq7o6uqKiJ89zdPW1hYdHR3R3Nwczc3N0dHREVOmTInFixeXexwAYJwqe6RcdtllsWPHjlizZk3cdddd0dTUFBs2bIibbrqpdMyqVavi8OHDsXz58jh48GDMnTs3du7cGTU1NeUeBwAYp8oeKRERH//4x+PjH//4z72/qqoq2tvbo729fSx+PADwLuC7ewCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAICWRAgCkJFIAgJRECgCQkkgBAFISKQBASiIFAEhJpAAAKYkUACAlkQIApCRSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAApiRQAIKWJlR4A4O3OXf2NSo9wXD+6Z2GlR4BfK1ZSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmNeaR0dnZGVVVVtLW1lfYVRRHt7e3R0NAQkydPjgULFsS+ffvGehQAYBwZ00jZvXt3dHV1xUUXXTRi/7p162L9+vWxcePG2L17d9TX18fVV18dhw4dGstxAIBxZMwi5bXXXoubbropHnjggTjjjDNK+4uiiA0bNsTatWtj0aJFMWvWrNiyZUu88cYbsW3btrEaBwAYZ8YsUlasWBELFy6Mq666asT+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4447ioiw2Ww2m832Ltj6+vpOqBcqspLylqqqqhG3i6IYtS8iYs2aNbFy5crS7WPHjsV///d/x/Tp0497fBZDQ0PR2NgYfX19MXXq1EqPk5prdeJcqxPnWp041+rEuVYn5/9er5qamjh06FA0NDSc0GMrEinvfe97Y8KECdHf3z9i/8DAQNTV1Y06vrq6Oqqrq0fsO/3008dyxLKaOnWq/5BPkGt14lyrE+danTjX6sS5VifnretVW1t7wo+pyAtnJ02aFLNnz47u7u4R+7u7u6OlpaUSIwEAyVTs6Z6VK1fGpz/96ZgzZ07Mmzcvurq64sCBA7Fs2bJKjQQAJFKxSLnxxhvjJz/5Sdx1113x6quvxqxZs+LRRx+Nc845p1IjlV11dXXccccdo56qYjTX6sS5VifOtTpxrtWJc61Ozju5XlVFcaLvAwIA+NXx3T0AQEoiBQBISaQAACmJFAAgJZEyRu6///5oamqKU089NWbPnh3f+ta3Kj1SSk8//XRce+210dDQEFVVVfFP//RPlR4prc7OzrjsssuipqYmZsyYEddff3288MILlR4rpU2bNsVFF11U+vCoefPmxWOPPVbpscaFzs7OqKqqira2tkqPkk57e3tUVVWN2Orr6ys9VlqvvPJKfOpTn4rp06fHlClT4pJLLone3t6TOodIGQMPPvhgtLW1xdq1a+P555+Pj370o3HNNdfEgQMHKj1aOq+//npcfPHFsXHjxkqPkl5PT0+sWLEivv3tb0d3d3e8+eab0draGq+//nqlR0vnrLPOinvuuSeeffbZePbZZ+N3fud34rrrrot9+/ZVerTUdu/eHV1dXXHRRRdVepS0Lrjggnj11VdL2969eys9UkoHDx6Myy+/PE455ZR47LHH4nvf+17cd999J/9p8e/86wJ5u4985CPFsmXLRuw777zzitWrV1doovEhIoodO3ZUeoxxY2BgoIiIoqenp9KjjAtnnHFG8Q//8A+VHiOtQ4cOFc3NzUV3d3cxf/784tZbb630SOnccccdxcUXX1zpMcaF22+/vbjiiive8XmspJTZkSNHore3N1pbW0fsb21tjV27dlVoKt6NBgcHIyJi2rRpFZ4kt6NHj8b27dvj9ddfj3nz5lV6nLRWrFgRCxcujKuuuqrSo6T2gx/8IBoaGqKpqSk++clPxksvvVTpkVJ65JFHYs6cOfGJT3wiZsyYEZdeemk88MADJ30ekVJm//Vf/xVHjx4d9UWJdXV1o75QEX5ZRVHEypUr44orrohZs2ZVepyU9u7dG7/xG78R1dXVsWzZstixY0d86EMfqvRYKW3fvj2ee+656OzsrPQoqc2dOze2bt0aTzzxRDzwwAPR398fLS0t8ZOf/KTSo6Xz0ksvxaZNm6K5uTmeeOKJWLZsWXz+85+PrVu3ntR5Kvax+O92VVVVI24XRTFqH/yybr755vjud78bzzzzTKVHSeuDH/xg7NmzJ37605/GQw89FEuWLImenh6h8jZ9fX1x6623xs6dO+PUU0+t9DipXXPNNaU/X3jhhTFv3rx4//vfH1u2bImVK1dWcLJ8jh07FnPmzImOjo6IiLj00ktj3759sWnTpvjMZz5zwuexklJm733ve2PChAmjVk0GBgZGra7AL+OWW26JRx55JJ566qk466yzKj1OWpMmTYrf+q3fijlz5kRnZ2dcfPHF8bd/+7eVHiud3t7eGBgYiNmzZ8fEiRNj4sSJ0dPTE3/3d38XEydOjKNHj1Z6xLROO+20uPDCC+MHP/hBpUdJZ+bMmaP+QXD++eef9BtIREqZTZo0KWbPnh3d3d0j9nd3d0dLS0uFpuLdoCiKuPnmm+PrX/96PPnkk9HU1FTpkcaVoihieHi40mOkc+WVV8bevXtjz549pW3OnDlx0003xZ49e2LChAmVHjGt4eHh+P73vx8zZ86s9CjpXH755aM+IuHFF1886S8R9nTPGFi5cmV8+tOfjjlz5sS8efOiq6srDhw4EMuWLav0aOm89tpr8cMf/rB0e//+/bFnz56YNm1anH322RWcLJ8VK1bEtm3b4uGHH46amprSal1tbW1Mnjy5wtPl8md/9mdxzTXXRGNjYxw6dCi2b98e3/zmN+Pxxx+v9Gjp1NTUjHpd02mnnRbTp0/3eqe3ue222+Laa6+Ns88+OwYGBuKv/uqvYmhoKJYsWVLp0dL5whe+EC0tLdHR0RE33HBDfOc734murq7o6uo6uRO94/cHcVxf/vKXi3POOaeYNGlS8eEPf9jbRH+Op556qoiIUduSJUsqPVo6x7tOEVFs3ry50qOl89nPfrb0/9+ZZ55ZXHnllcXOnTsrPda44S3Ix3fjjTcWM2fOLE455ZSioaGhWLRoUbFv375Kj5XWP//zPxezZs0qqquri/POO6/o6uo66XNUFUVRlDGeAADKwmtSAICURAoAkJJIAQBSEikAQEoiBQBISaQAACmJFAAgJZECpLFgwYJoa2ur9BhAEiIFAEhJpAAAKYkUIK3HH388amtrY+vWrZUeBagAkQKktH379rjhhhti69at8ZnPfKbS4wAVIFKAdO6///5YtmxZPPzww3HddddVehygQiZWegCA/+uhhx6K//zP/4xnnnkmPvKRj1R6HKCCrKQAqVxyySVx5plnxubNm6MoikqPA1SQSAFSef/73x9PPfVUPPzww3HLLbdUehyggjzdA6TzgQ98IJ566qlYsGBBTJw4MTZs2FDpkYAKEClASh/84AfjySefjAULFsSECRPivvvuq/RIwK9YVeFJXwAgIa9JAQBSEikAQEoiBQBISaQAACmJFAAgJZECAKQkUgCAlEQKAJCSSAEAUhIpAEBKIgUASEmkAAAp/S+yutai6Y48NAAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "plt.hist(data[:, 0], bins=np.arange(-0.25,6.25,0.5))\n", "plt.xlabel(\"k\")" @@ -1046,7 +1134,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "5056a717-6561-41ec-be39-1757984863a9", "metadata": { "cell_style": "split", @@ -1055,7 +1143,18 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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np6eaGpqKh0rFosxe/bs2L59+2Efa3BwMPr7+4csAODINSIfdb9ly5Z4+OGHY8eOHcPu6+npiYiI6urqIcerq6vjySefPOzjtbW1xXXXXVf+QQGAJJV9B6W7uzuuuuqq+MEPfhBHH330vz2vUCgMuZ1l2bBjL1qxYkX09fWVVnd3d1lnBgDSUvYdlK6urujt7Y3p06eXjh08eDAeeOCBWLduXTz66KMR8cJOypQpU0rn9Pb2DttVeVGxWIxisVjuUQGARJV9B+W8886LXbt2xc6dO0trxowZcfnll8fOnTvjTW96U9TU1ERHR0fpZw4cOBCdnZ3R2NhY7nEAgFGo7DsolZWVMW3atCHHjjnmmJg0aVLpeHNzc7S2tkZDQ0M0NDREa2trjB8/PubPn1/ucQCAUWhEXiT7UpYtWxb79++PxYsXx759+2LmzJmxbdu2qKyszGMcACAxr0qg/OxnPxtyu1AoREtLS7S0tLwavx4AGGV8Fw8AkByBAgAkR6AAAMkRKABAcgQKAJAcgQIAJEegAADJESgAQHIECgCQHIECACRHoAAAyREoAEByBAoAkByBAgAkR6AAAMkRKABAcgQKAJAcgQIAJEegAADJESgAQHIECgCQHIECACRHoAAAyREoAEByBAoAkByBAgAkR6AAAMkRKABAcgQKAJAcgQIAJEegAADJESgAQHIECgCQHIECACRHoAAAyREoAEByBAoAkByBAgAkR6AAAMkRKABAcgQKAJAcgQIAJEegAADJESgAQHIECgCQHIECACRHoAAAyREoAEByBAoAkByBAgAkR6AAAMkRKABAcgQKAJAcgQIAJEegAADJESgAQHIECgCQHIECACRHoAAAyREoAEByBAoAkByBAgAkp+yB0tbWFmeffXZUVlbG5MmT45JLLolHH310yDlZlkVLS0vU1tbGuHHjYs6cObF79+5yjwIAjFJlD5TOzs5YsmRJ/OpXv4qOjo54/vnno6mpKZ599tnSOatXr441a9bEunXrYseOHVFTUxMXXHBBDAwMlHscAGAUqij3A95zzz1Dbm/YsCEmT54cXV1d8X//93+RZVmsXbs2Vq5cGfPmzYuIiI0bN0Z1dXVs3rw5Fi5cWO6RAIBRZsRfg9LX1xcRERMnToyIiD179kRPT080NTWVzikWizF79uzYvn37YR9jcHAw+vv7hywA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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "\n", "plt.hist(data[:, 0], bins=np.arange(-0.25,6.26,0.5))\n", @@ -1066,12 +1165,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "id": "3f64d35c", "metadata": { "cell_style": "split" }, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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rF27NsuWLcvcuXOzZcuWvPLKK9m6dWuzxwEAJqGmB8qll16af/3Xf83TTz+dJPmP//iPPProo/m1X/u1JMnevXszNDSUnp6exmNaW1uzaNGi7Nix46jPOTY2ltHR0XEHAHD8mtrsJ/zoRz+akZGRnHPOOZkyZUoOHz6c2267Lb/5m7+ZJBkaGkqStLe3j3tce3t7nnvuuaM+58DAQD72sY81e1QAoFBN30G57777cs8992Tr1q15/PHHs2XLlvzZn/1ZtmzZMu68lpaWcberqpqw9po1a9ZkZGSkcezbt6/ZYwMABWn6Dsrv//7vZ/Xq1Xnve9+bJDnvvPPy3HPPZWBgINddd106OjqSfGcnZfbs2Y3HDQ8PT9hVeU1ra2taW1ubPSoAUKim76C88soredObxj/tlClTGm8z7urqSkdHRwYHBxv3Hzp0KNu3b8/ChQubPQ4AMAk1fQflqquuym233ZYzzzwzb3vb2/LVr34169evzwc+8IEk3/nVTm9vb/r7+9Pd3Z3u7u709/dn+vTpueaaa5o9DgAwCTU9UD75yU/mj/7oj7JixYoMDw+ns7Mz119/ff74j/+4cc7NN9+cgwcPZsWKFdm/f38WLFiQbdu2pa2trdnjAACTUEtVVVXdQ7xeo6OjmTlzZkZGRjJjxoymP//Zqx9s+nO+Uc/evrTuEZK4JgD86F7Pz2+fxQMAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABTnmATKCy+8kPe9732ZNWtWpk+fnre//e3ZtWtX4/6qqtLX15fOzs5MmzYtixcvzp49e47FKADAJNT0QNm/f38uueSSnHDCCXnooYfy5JNP5hOf+ETe/OY3N85Zt25d1q9fn40bN2bnzp3p6OjIFVdckQMHDjR7HABgEpra7Cf8+Mc/njlz5uSuu+5qrJ199tmNf1dVlQ0bNmTt2rVZtmxZkmTLli1pb2/P1q1bc/311zd7JABgkmn6DsoDDzyQ+fPn593vfndOP/30XHjhhbnzzjsb9+/duzdDQ0Pp6elprLW2tmbRokXZsWPHUZ9zbGwso6Oj4w4A4PjV9EB55plnsmnTpnR3d+fhhx/O8uXL86EPfSh33313kmRoaChJ0t7ePu5x7e3tjfu+28DAQGbOnNk45syZ0+yxAYCCND1Qjhw5kne84x3p7+/PhRdemOuvvz6/+7u/m02bNo07r6WlZdztqqomrL1mzZo1GRkZaRz79u1r9tgAQEGaHiizZ8/OW9/61nFr5557bp5//vkkSUdHR5JM2C0ZHh6esKvymtbW1syYMWPcAQAcv5oeKJdcckmeeuqpcWtPP/10zjrrrCRJV1dXOjo6Mjg42Lj/0KFD2b59exYuXNjscQCASajp7+L58Ic/nIULF6a/vz9XX311vvKVr2Tz5s3ZvHlzku/8aqe3tzf9/f3p7u5Od3d3+vv7M3369FxzzTXNHgcAmISaHigXXXRR7r///qxZsya33nprurq6smHDhlx77bWNc26++eYcPHgwK1asyP79+7NgwYJs27YtbW1tzR4HAJiEmh4oSXLllVfmyiuv/J73t7S0pK+vL319fcfiywMAk5zP4gEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4hyTtxnDT4qzVz9Y9whJkmdvX1r3CABNZQcFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKc8wDZWBgIC0tLent7W2sVVWVvr6+dHZ2Ztq0aVm8eHH27NlzrEcBACaJYxooO3fuzObNm3P++eePW1+3bl3Wr1+fjRs3ZufOneno6MgVV1yRAwcOHMtxAIBJ4pgFyksvvZRrr702d955Z0455ZTGelVV2bBhQ9auXZtly5Zl7ty52bJlS1555ZVs3br1WI0DAEwixyxQVq5cmaVLl+byyy8ft753794MDQ2lp6ensdba2ppFixZlx44dR32usbGxjI6OjjsAgOPX1GPxpPfee28ef/zx7Ny5c8J9Q0NDSZL29vZx6+3t7XnuueeO+nwDAwP52Mc+1vxBgaY7e/WDdY/Q8OztS+seAXiDmr6Dsm/fvtx000255557ctJJJ33P81paWsbdrqpqwtpr1qxZk5GRkcaxb9++ps4MAJSl6Tsou3btyvDwcObNm9dYO3z4cB555JFs3LgxTz31VJLv7KTMnj27cc7w8PCEXZXXtLa2prW1tdmjAgCFavoOymWXXZYnnngiu3fvbhzz58/Ptddem927d+ctb3lLOjo6Mjg42HjMoUOHsn379ixcuLDZ4wAAk1DTd1Da2toyd+7ccWsnn3xyZs2a1Vjv7e1Nf39/uru7093dnf7+/kyfPj3XXHNNs8cBACahY/Ii2R/k5ptvzsGDB7NixYrs378/CxYsyLZt29LW1lbHOABAYX4sgfLFL35x3O2Wlpb09fWlr6/vx/HlAYBJxmfxAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxWl6oAwMDOSiiy5KW1tbTj/99LzrXe/KU089Ne6cqqrS19eXzs7OTJs2LYsXL86ePXuaPQoAMEk1PVC2b9+elStX5stf/nIGBwfz6quvpqenJy+//HLjnHXr1mX9+vXZuHFjdu7cmY6OjlxxxRU5cOBAs8cBACahqc1+ws997nPjbt911105/fTTs2vXrvzSL/1SqqrKhg0bsnbt2ixbtixJsmXLlrS3t2fr1q25/vrrmz0SADDJHPPXoIyMjCRJTj311CTJ3r17MzQ0lJ6ensY5ra2tWbRoUXbs2HHU5xgbG8vo6Oi4AwA4fh3TQKmqKqtWrcqll16auXPnJkmGhoaSJO3t7ePObW9vb9z33QYGBjJz5szGMWfOnGM5NgBQs2MaKDfccEO+9rWv5R/+4R8m3NfS0jLudlVVE9Zes2bNmoyMjDSOffv2HZN5AYAyNP01KK+58cYb88ADD+SRRx7JGWec0Vjv6OhI8p2dlNmzZzfWh4eHJ+yqvKa1tTWtra3HalQAoDBN30Gpqio33HBDPv3pT+fzn/98urq6xt3f1dWVjo6ODA4ONtYOHTqU7du3Z+HChc0eBwCYhJq+g7Jy5cps3bo1n/3sZ9PW1tZ4XcnMmTMzbdq0tLS0pLe3N/39/enu7k53d3f6+/szffr0XHPNNc0eBwCYhJoeKJs2bUqSLF68eNz6XXfdld/+7d9Oktx88805ePBgVqxYkf3792fBggXZtm1b2tramj0OADAJNT1Qqqr6gee0tLSkr68vfX19zf7yAMBxwGfxAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFmVr3AADHu7NXP1j3CA3P3r607hHgh2IHBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4AgUAKI5AAQCKI1AAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4tQaKHfccUe6urpy0kknZd68efnSl75U5zgAQCGm1vWF77vvvvT29uaOO+7IJZdckr/5m7/JkiVL8uSTT+bMM8+saywAfkzOXv1g3SMkSZ69fWndI3AUte2grF+/Ph/84AfzO7/zOzn33HOzYcOGzJkzJ5s2baprJACgELXsoBw6dCi7du3K6tWrx6339PRkx44dE84fGxvL2NhY4/bIyEiSZHR09JjMd2TslWPyvG/EsfoeXy/X5OhKuS6uydGVcl1ck6Mr5bqUdE2Od69d66qqfvDJVQ1eeOGFKkn1b//2b+PWb7vtturnfu7nJpx/yy23VEkcDofD4XAcB8e+fft+YCvU9hqUJGlpaRl3u6qqCWtJsmbNmqxatapx+8iRI/mf//mfzJo166jn1210dDRz5szJvn37MmPGjLrHKYbrMpFrMpFrcnSuy0SuyUSlX5OqqnLgwIF0dnb+wHNrCZTTTjstU6ZMydDQ0Lj14eHhtLe3Tzi/tbU1ra2t49be/OY3H8sRm2LGjBlF/gdSN9dlItdkItfk6FyXiVyTiUq+JjNnzvyhzqvlRbInnnhi5s2bl8HBwXHrg4ODWbhwYR0jAQAFqe1XPKtWrcr73//+zJ8/PxdffHE2b96c559/PsuXL69rJACgELUFynve8558+9vfzq233poXX3wxc+fOzT//8z/nrLPOqmukpmltbc0tt9wy4ddSP+lcl4lck4lck6NzXSZyTSY6nq5JS1X9MO/1AQD48fFZPABAcQQKAFAcgQIAFEegAADFESjHwB133JGurq6cdNJJmTdvXr70pS/VPVKtHnnkkVx11VXp7OxMS0tLPvOZz9Q9Uu0GBgZy0UUXpa2tLaeffnre9a535amnnqp7rFpt2rQp559/fuMPTF188cV56KGH6h6rKAMDA2lpaUlvb2/do9Sqr68vLS0t446Ojo66x6rdCy+8kPe9732ZNWtWpk+fnre//e3ZtWtX3WO9YQKlye6777709vZm7dq1+epXv5pf/MVfzJIlS/L888/XPVptXn755VxwwQXZuHFj3aMUY/v27Vm5cmW+/OUvZ3BwMK+++mp6enry8ssv1z1abc4444zcfvvteeyxx/LYY4/lV37lV/LOd74ze/bsqXu0IuzcuTObN2/O+eefX/coRXjb296WF198sXE88cQTdY9Uq/379+eSSy7JCSeckIceeihPPvlkPvGJT0yKv7r+PTXl0/9o+IVf+IVq+fLl49bOOeecavXq1TVNVJYk1f3331/3GMUZHh6uklTbt2+ve5SinHLKKdXf/u3f1j1G7Q4cOFB1d3dXg4OD1aJFi6qbbrqp7pFqdcstt1QXXHBB3WMU5aMf/Wh16aWX1j1GU9lBaaJDhw5l165d6enpGbfe09OTHTt21DQVk8HIyEiS5NRTT615kjIcPnw49957b15++eVcfPHFdY9Tu5UrV2bp0qW5/PLL6x6lGN/4xjfS2dmZrq6uvPe9780zzzxT90i1euCBBzJ//vy8+93vzumnn54LL7wwd955Z91j/UgEShP993//dw4fPjzhAw/b29snfDAivKaqqqxatSqXXnpp5s6dW/c4tXriiSfyUz/1U2ltbc3y5ctz//33561vfWvdY9Xq3nvvzeOPP56BgYG6RynGggULcvfdd+fhhx/OnXfemaGhoSxcuDDf/va36x6tNs8880w2bdqU7u7uPPzww1m+fHk+9KEP5e677657tDestj91fzxraWkZd7uqqglr8JobbrghX/va1/Loo4/WPUrtfv7nfz67d+/O//7v/+Yf//Efc91112X79u0/sZGyb9++3HTTTdm2bVtOOumkuscpxpIlSxr/Pu+883LxxRfnZ37mZ7Jly5asWrWqxsnqc+TIkcyfPz/9/f1JkgsvvDB79uzJpk2b8lu/9Vs1T/fG2EFpotNOOy1TpkyZsFsyPDw8YVcFkuTGG2/MAw88kC984Qs544wz6h6ndieeeGJ+9md/NvPnz8/AwEAuuOCC/MVf/EXdY9Vm165dGR4ezrx58zJ16tRMnTo127dvz1/+5V9m6tSpOXz4cN0jFuHkk0/Oeeedl2984xt1j1Kb2bNnTwj5c889d1K/QUOgNNGJJ56YefPmZXBwcNz64OBgFi5cWNNUlKiqqtxwww359Kc/nc9//vPp6uqqe6QiVVWVsbGxuseozWWXXZYnnngiu3fvbhzz58/Ptddem927d2fKlCl1j1iEsbGxfP3rX8/s2bPrHqU2l1xyyYQ/VfD0009P6g/g9SueJlu1alXe//73Z/78+bn44ouzefPmPP/881m+fHndo9XmpZdeyje/+c3G7b1792b37t059dRTc+aZZ9Y4WX1WrlyZrVu35rOf/Wza2toau24zZ87MtGnTap6uHn/wB3+QJUuWZM6cOTlw4EDuvffefPGLX8znPve5ukerTVtb24TXJZ188smZNWvWT/TrlT7ykY/kqquuyplnnpnh4eH8yZ/8SUZHR3PdddfVPVptPvzhD2fhwoXp7+/P1Vdfna985SvZvHlzNm/eXPdob1y9byI6Pv3VX/1VddZZZ1Unnnhi9Y53vOMn/q2jX/jCF6okE47rrruu7tFqc7TrkaS666676h6tNh/4wAca/9/89E//dHXZZZdV27Ztq3us4nibcVW95z3vqWbPnl2dcMIJVWdnZ7Vs2bJqz549dY9Vu3/6p3+q5s6dW7W2tlbnnHNOtXnz5rpH+pG0VFVV1dRGAABH5TUoAEBxBAoAUByBAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFEShAcRYvXpze3t66xwBqJFAAgOIIFACgOAIFACiOQAEAiiNQAIDiCBQAoDgCBQAojkABAIojUACA4ggUAKA4LVVVVXUPAQDw/7ODAgAUR6AAAMURKABAcQQKAFAcgQIAFEegAADFESgAQHEECgBQHIECABRHoAAAxREoAEBx/h894AS6MKHZXQAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "plt.hist(data[:, 1], bins=np.arange(-0.25,6.26,0.5))\n", "plt.xlabel(\"l\")\n", @@ -1093,7 +1203,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "id": "4ecfb198-c621-4ee4-9d24-9f9a8cb8bec7", "metadata": { "slideshow": { @@ -1101,7 +1211,25 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "median 1.0\n" + ] + }, + { + "data": { + "image/png": "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dw87WvKOadOmxUc+8pGoqqoaXJs5c2YUCoX47W9/G+eff/6wfcrLy6O8vLyY0QCACaqoIyNlZWVRV1cX7e3tQ9bb29ujsbFxxH3mzp0bb7zxRrz11luDa7/61a/ipJNOirPPPnsMIwMAx5OiT9O0trbGAw88EOvXr49du3bF8uXLo7OzM1paWiLi7VMsixYtGtz+2muvjSlTpsSXv/zleOWVV+L555+Pr3/96/GVr3wlTjnllKP3SgCACano64wsXLgw9u3bF6tXr46urq6YNWtWbNq0KWbMmBEREV1dXdHZ2Tm4/Yc//OFob2+Pm266Kerr62PKlCmxYMGCuP3224/eqwAAJqyirzOSwXVGmEhcZwSYaCbUdUYAAI42MQIApBIjAEAqMQIApBIjAEAqMQIApBIjAEAqMQIApCr6CqyceFzEC4BjyZERACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUokRACCVGAEAUo0pRtasWRO1tbVRUVERdXV1sXXr1lHt9/Of/zxKS0vj4osvHsvTAgDHoaJjZOPGjbFs2bJYtWpV7NixI+bNmxfNzc3R2dn5rvv19vbGokWL4sorrxzzsADA8afoGLnrrrvi+uuvjxtuuCFmzpwZd999d9TU1MTatWvfdb+vfvWrce2110ZDQ8OYhwUAjj9FxcjBgwejo6Mjmpqahqw3NTXFtm3bjrjfQw89FP/5n/8Zt95666iep7+/P/r6+obcAIDjU1Ex0tPTEwMDA1FdXT1kvbq6Ovbu3TviPq+++mqsWLEiHnnkkSgtLR3V87S1tUVVVdXgraamppgxAYAJZEwfYC0pKRlyv1AoDFuLiBgYGIhrr702brvttrjgggtG/fgrV66M3t7ewduePXvGMiYAMAGM7lDF/zN16tSYNGnSsKMg3d3dw46WRETs378/tm/fHjt27Igbb7wxIiIOHz4chUIhSktLY/PmzXHFFVcM26+8vDzKy8uLGQ0AmKCKOjJSVlYWdXV10d7ePmS9vb09Ghsbh21fWVkZL730UuzcuXPw1tLSEhdeeGHs3Lkz5syZ8/6mBwAmvKKOjEREtLa2xnXXXRf19fXR0NAQ69ati87OzmhpaYmIt0+xvP7667Fhw4Y46aSTYtasWUP2P/PMM6OiomLYOgBwYio6RhYuXBj79u2L1atXR1dXV8yaNSs2bdoUM2bMiIiIrq6u97zmCADAO0oKhUIhe4j30tfXF1VVVdHb2xuVlZXZ45xwzl3xdPYIABxDv77j6mPyuKP9++23aQCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVGIEAEglRgCAVKXZA2Q7d8XT2SMAwAnNkREAIJUYAQBSiREAIJUYAQBSiREAIJUYAQBSiREAIJUYAQBSiREAIJUYAQBSjSlG1qxZE7W1tVFRURF1dXWxdevWI277+OOPx2c/+9k444wzorKyMhoaGuLZZ58d88AAwPGl6BjZuHFjLFu2LFatWhU7duyIefPmRXNzc3R2do64/fPPPx+f/exnY9OmTdHR0RGf/vSnY/78+bFjx473PTwAMPGVFAqFQjE7zJkzJy655JJYu3bt4NrMmTPjmmuuiba2tlE9xic+8YlYuHBhfPOb3xzx3/v7+6O/v3/wfl9fX9TU1ERvb29UVlYWM+578kN5AJzofn3H1cfkcfv6+qKqquo9/34XdWTk4MGD0dHREU1NTUPWm5qaYtu2baN6jMOHD8f+/fvj9NNPP+I2bW1tUVVVNXirqakpZkwAYAIpKkZ6enpiYGAgqqurh6xXV1fH3r17R/UYd955Zxw4cCAWLFhwxG1WrlwZvb29g7c9e/YUMyYAMIGUjmWnkpKSIfcLhcKwtZH88Ic/jG9961vx5JNPxplnnnnE7crLy6O8vHwsowEAE0xRMTJ16tSYNGnSsKMg3d3dw46W/F8bN26M66+/Pn70ox/FZz7zmeInBQCOS0WdpikrK4u6urpob28fst7e3h6NjY1H3O+HP/xhfOlLX4of/OAHcfXVx+ZDMgDAxFT0aZrW1ta47rrror6+PhoaGmLdunXR2dkZLS0tEfH25z1ef/312LBhQ0S8HSKLFi2K73znO/Gnf/qng0dVTjnllKiqqjqKLwUAmIiKjpGFCxfGvn37YvXq1dHV1RWzZs2KTZs2xYwZMyIioqura8g1R773ve/FoUOHYsmSJbFkyZLB9cWLF8fDDz/8/l8BADChFX2dkQyj/Z7yWLjOCAAnugl1nREAgKNNjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBKjAAAqcQIAJBqTDGyZs2aqK2tjYqKiqirq4utW7e+6/ZbtmyJurq6qKioiI9+9KNx//33j2lYAOD4U3SMbNy4MZYtWxarVq2KHTt2xLx586K5uTk6OztH3P61116Lq666KubNmxc7duyIW265JZYuXRqPPfbY+x4eAJj4SgqFQqGYHebMmROXXHJJrF27dnBt5syZcc0110RbW9uw7b/xjW/EU089Fbt27Rpca2lpiX/913+NF198cVTP2dfXF1VVVdHb2xuVlZXFjPuezl3x9FF9PACYaH59x9XH5HFH+/e7tJgHPXjwYHR0dMSKFSuGrDc1NcW2bdtG3OfFF1+MpqamIWuf+9zn4sEHH4w//OEPcfLJJw/bp7+/P/r7+wfv9/b2RsTbL+poO9z/+6P+mAAwkRyLv6///+O+13GPomKkp6cnBgYGorq6esh6dXV17N27d8R99u7dO+L2hw4dip6enpg2bdqwfdra2uK2224btl5TU1PMuADAKFTdfWwff//+/VFVVXXEfy8qRt5RUlIy5H6hUBi29l7bj7T+jpUrV0Zra+vg/cOHD8fvfve7mDJlyrs+T7H6+vqipqYm9uzZc9RP/xyPvF+j570aPe/V6HmvRs97NXrH8r0qFAqxf//+mD59+rtuV1SMTJ06NSZNmjTsKEh3d/ewox/vOOuss0bcvrS0NKZMmTLiPuXl5VFeXj5k7bTTTitm1KJUVlb6L2sRvF+j570aPe/V6HmvRs97NXrH6r16tyMi7yjq2zRlZWVRV1cX7e3tQ9bb29ujsbFxxH0aGhqGbb958+aor68f8fMiAMCJpeiv9ra2tsYDDzwQ69evj127dsXy5cujs7MzWlpaIuLtUyyLFi0a3L6lpSV+85vfRGtra+zatSvWr18fDz74YNx8881H71UAABNW0Z8ZWbhwYezbty9Wr14dXV1dMWvWrNi0aVPMmDEjIiK6urqGXHOktrY2Nm3aFMuXL4/77rsvpk+fHvfcc0984QtfOHqvYozKy8vj1ltvHXZKiJF5v0bPezV63qvR816Nnvdq9MbDe1X0dUYAAI4mv00DAKQSIwBAKjECAKQSIwBAqhM6RtasWRO1tbVRUVERdXV1sXXr1uyRxqXnn38+5s+fH9OnT4+SkpL48Y9/nD3SuNTW1hZ/8id/EpMnT44zzzwzrrnmmvj3f//37LHGpbVr18ZFF100eJGlhoaG+OlPf5o91oTQ1tYWJSUlsWzZsuxRxqVvfetbUVJSMuR21llnZY81br3++uvxV3/1VzFlypT40Ic+FBdffHF0dHR84HOcsDGycePGWLZsWaxatSp27NgR8+bNi+bm5iFfS+ZtBw4ciNmzZ8e9996bPcq4tmXLlliyZEn84he/iPb29jh06FA0NTXFgQMHskcbd84+++y44447Yvv27bF9+/a44oor4vOf/3y8/PLL2aONa7/85S9j3bp1cdFFF2WPMq594hOfiK6ursHbSy+9lD3SuPRf//VfMXfu3Dj55JPjpz/9abzyyitx5513HtMrnh9R4QR16aWXFlpaWoasffzjHy+sWLEiaaKJISIKTzzxRPYYE0J3d3chIgpbtmzJHmVC+KM/+qPCAw88kD3GuLV///7C+eefX2hvby/82Z/9WeFrX/ta9kjj0q233lqYPXt29hgTwje+8Y3CZZddlj1GoVAoFE7IIyMHDx6Mjo6OaGpqGrLe1NQU27ZtS5qK401vb29ERJx++unJk4xvAwMD8eijj8aBAweioaEhe5xxa8mSJXH11VfHZz7zmexRxr1XX301pk+fHrW1tfHFL34xdu/enT3SuPTUU09FfX19/MVf/EWceeaZ8alPfSq+//3vp8xyQsZIT09PDAwMDPtxv+rq6mE/6gdjUSgUorW1NS677LKYNWtW9jjj0ksvvRQf/vCHo7y8PFpaWuKJJ56IP/7jP84ea1x69NFH41/+5V+ira0te5Rxb86cObFhw4Z49tln4/vf/37s3bs3GhsbY9++fdmjjTu7d++OtWvXxvnnnx/PPvtstLS0xNKlS2PDhg0f+CxFXw7+eFJSUjLkfqFQGLYGY3HjjTfGv/3bv8ULL7yQPcq4deGFF8bOnTvjv//7v+Oxxx6LxYsXx5YtWwTJ/7Fnz5742te+Fps3b46Kiorscca95ubmwf/8yU9+MhoaGuK8886Lf/iHf4jW1tbEycafw4cPR319fXz729+OiIhPfepT8fLLL8fatWuH/MbcB+GEPDIyderUmDRp0rCjIN3d3cOOlkCxbrrppnjqqafiueeei7PPPjt7nHGrrKwsPvaxj0V9fX20tbXF7Nmz4zvf+U72WONOR0dHdHd3R11dXZSWlkZpaWls2bIl7rnnnigtLY2BgYHsEce1U089NT75yU/Gq6++mj3KuDNt2rRh8T9z5syUL3KckDFSVlYWdXV10d7ePmS9vb09Ghsbk6ZioisUCnHjjTfG448/Hj/72c+itrY2e6QJpVAoRH9/f/YY486VV14ZL730UuzcuXPwVl9fH3/5l38ZO3fujEmTJmWPOK719/fHrl27Ytq0admjjDtz584ddvmBX/3qV4M/fPtBOmFP07S2tsZ1110X9fX10dDQEOvWrYvOzs5oaWnJHm3ceeutt+I//uM/Bu+/9tprsXPnzjj99NPjnHPOSZxsfFmyZEn84Ac/iCeffDImT548eOStqqoqTjnllOTpxpdbbrklmpubo6amJvbv3x+PPvpo/NM//VM888wz2aONO5MnTx72uaNTTz01pkyZ4vNII7j55ptj/vz5cc4550R3d3fcfvvt0dfXF4sXL84ebdxZvnx5NDY2xre//e1YsGBB/PM//3OsW7cu1q1b98EPk/tlnlz33XdfYcaMGYWysrLCJZdc4iuYR/Dcc88VImLYbfHixdmjjSsjvUcRUXjooYeyRxt3vvKVrwz+b++MM84oXHnllYXNmzdnjzVh+GrvkS1cuLAwbdq0wsknn1yYPn164c///M8LL7/8cvZY49ZPfvKTwqxZswrl5eWFj3/844V169alzFFSKBQKH3wCAQC87YT8zAgAMH6IEQAglRgBAFKJEQAglRgBAFKJEQAglRgBAFKJEQAglRgBUlx++eWxbNmy7DGAcUCMAACpxAgAkEqMAOPCM888E1VVVbFhw4bsUYAPmBgB0j366KOxYMGC2LBhQyxatCh7HOADJkaAVGvWrImWlpZ48skn4/Of/3z2OECC0uwBgBPXY489Fm+++Wa88MILcemll2aPAyRxZARIc/HFF8cZZ5wRDz30UBQKhexxgCRiBEhz3nnnxXPPPRdPPvlk3HTTTdnjAEmcpgFSXXDBBfHcc8/F5ZdfHqWlpXH33XdnjwR8wMQIkO7CCy+Mn/3sZ3H55ZfHpEmT4s4778weCfgAlRScqAUAEvnMCACQSowAAKnECACQSowAAKnECACQSowAAKnECACQSowAAKnECACQSowAAKnECACQ6n8BMh3HN5rbMX8AAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "plt.hist(data[:, 0], bins=100, cumulative=True, density = True, label=\"kumuliert\")\n", "plt.xlabel(\"k\")\n", @@ -1181,15 +1309,31 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 31, "id": "5f98b25d", "metadata": { "slideshow": { "slide_type": "-" } }, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1.56535948 1.26470588]\n", + "variance [1.85357128 1.27306805]\n", + "[1.36145925 1.12830317]\n" + ] + } + ], + "source": [ + "print(np.mean(data, axis=0))\n", + "\n", + "print(\"variance\", np.var(data, axis=0))\n", + "\n", + "print(np.std(data, axis=0))" + ] }, { "cell_type": "markdown", @@ -1208,13 +1352,27 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 32, "id": "bf609514", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 1. , -0.12507831],\n", + " [-0.12507831, 1. ]])" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "plt.hist2d(data[:,0], data[:,1], bins=np.arange(-0.5,6.1,1))\n", - ";" + "#plt.hist2d(data[:,0], data[:,1], bins=np.arange(-0.5,6.1,1))\n", + "\n", + "np.cov(data, rowvar=False)\n", + "np.corrcoef(data, rowvar=False)\n" ] }, { @@ -1249,11 +1407,40 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 43, "id": "6b0966b7", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "wrong: 3.136890603235832\n", + "correct: [[3.5224258]]\n" + ] + }, + { + "data": { + "text/plain": [ + "np.float64(3.510914605493613)" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C = np.cov(data, rowvar=False)\n", + "\n", + "print(\"wrong:\", C[0,0] + C[1,1])\n", + "\n", + "A = np.array([[1, -1]]) \n", + "print(\"correct:\", A@C@A.T)\n", + "\n", + "sum = data[:,0] - data[:,1]\n", + "np.var(sum)" + ] }, { "cell_type": "markdown", @@ -1300,9 +1487,37 @@ " * use [`scipy.stats.norm`](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.uniform.html) class\n" ] }, + { + "cell_type": "code", + "execution_count": 55, + "id": "2aee5ea6", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "rng = np.random.default_rng(12345)\n", + "\n", + "r = rng.random(100000)\n", + "plt.hist(r, density=True, bins=50);\n", + "plt.hist(np.sqrt(r), density=True, bins=50);\n" + ] + }, { "cell_type": "markdown", - "id": "d1cc2736", + "id": "14d9bb8f", "metadata": { "slideshow": { "slide_type": "slide" @@ -1311,7 +1526,7 @@ "source": [ "### Error propagation: voltage measurement\n", "\n", - "$R = 40$ $\\Omega$ und $I = 0.6 \\pm 0.1$ A \n", + "$R = 40$ $\\Omega$ and $I = 0.6 \\pm 0.1$ A \n", "\n", "Assumptions: $I$ Gaussian distributed $g(I)$ with $\\mu_I = 0.6$ and $\\sigma_I = 0.1$ \n", " \n", @@ -1321,13 +1536,13 @@ "$$\\begin{aligned}\n", " p(U) & = &1/R g(I(R)) = \\frac{1}{R \\sqrt{2\\pi}\\sigma_I}e^{-\\frac{(U/R-\\mu_I)^2}{2\\sigma_I^2}} \\\\\n", " & = & \\frac{1}{\\sqrt{2\\pi}R\\sigma_I}e^{-\\frac{(U-R\\mu_I)^2}{2R^2\\sigma_I^2}} \\\\\n", - " & = & g(U) \\text{ mit $\\mu_U = R\\mu_I$ und $\\sigma_U = R\\sigma_I$}\\\\ \n", + " & = & g(U) \\text{ with $\\mu_U = R\\mu_I$ and $\\sigma_U = R\\sigma_I$}\\\\ \n", "\\end{aligned}$$" ] }, { "cell_type": "markdown", - "id": "170bbd56", + "id": "63415397", "metadata": {}, "source": [ "Exercise: Simulate measurement and compare with expectation" @@ -1335,21 +1550,46 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "b0cff440", + "execution_count": 61, + "id": "3b43d025", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "24.0 24.004732040652097 4.0 3.99811282189392\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ + "import scipy\n", "sI = 0.1\n", "mI = 0.6\n", - "Is = stats.norm.rvs(mI,sI,100000)\n", + "Is = scipy.stats.norm.rvs(mI,sI,100000)\n", "R = 40\n", - "Us = R*Is" + "Us = R*Is\n", + "\n", + "U_axis = np.linspace(10,40,1000)\n", + "plt.hist(Us,bins=100,density=True,range=(10,40))\n", + "#plt.plot(U_axis, p(R_axis,mu_I=mI, sigma_I=sI))\n", + "plt.plot(U_axis, scipy.stats.norm.pdf(U_axis,R*mI,R*sI),\"-\")\n", + "print(R*mI, np.mean(Us), R*sI, np.std(Us))" ] }, { "cell_type": "markdown", - "id": "b451b3a5", + "id": "86736b5b", "metadata": { "slideshow": { "slide_type": "slide" @@ -1373,7 +1613,7 @@ }, { "cell_type": "markdown", - "id": "678543e1", + "id": "5bbd27c8", "metadata": { "slideshow": { "slide_type": "-" @@ -1385,15 +1625,45 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "90dea4aa", + "execution_count": 65, + "id": "510c9a8f", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "40.0 41.2377434103552 6.666666666666668 7.6143898465949444\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "sI = 0.1\n", "mI = 0.6\n", - "Is = stats.norm.rvs(mI,sI,100000)\n", - "U = 24" + "Is = scipy.stats.norm.rvs(mI,sI,100000)\n", + "U = 24\n", + "\n", + "def p(R, U = 24, mu_I = 0.6, sigma_I = 0.1):\n", + " # p(R) = U/R^2 g(I(R)) = \\frac{U}{R^2 \\sqrt{2\\pi}\\sigma_I}e^{-\\frac{(U/R-\\mu_I)^2}{2\\sigma_I^2}}\n", + " return U/R**2/np.sqrt(2 * np.pi)/sigma_I * np.exp(-(U/R-mu_I)**2/(2*(sigma_I)**2))\n", + "\n", + "Rs = U/Is\n", + "R_axis = np.linspace(20,80,1000)\n", + "plt.hist(Rs,bins=100,density=True,range=(20,80))\n", + "plt.plot(R_axis, p(R_axis,mu_I=mI, sigma_I=sI), label=\"p(R)\")\n", + "plt.plot(R_axis, scipy.stats.norm.pdf(R_axis,U/mI,U/mI**2*sI),\"-\", label=\"g(R)\")\n", + "plt.legend()\n", + "print(U/mI, np.mean(Rs), U/mI/mI*sI, np.std(Rs))" ] } ], diff --git a/lecture_2.ipynb b/lecture_2.ipynb index ac451ee..f657ebb 100644 --- a/lecture_2.ipynb +++ b/lecture_2.ipynb @@ -30,7 +30,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "bcfb9003", + "id": "229b45c8", "metadata": { "slideshow": { "slide_type": "skip" @@ -116,12 +116,33 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "id": "662bb993", "metadata": { "cell_style": "split" }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, '$P(k)$')" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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AABgLIIQAAAwFkEIAAAYiyAEAACMRRACAADGIggBAABjEYQAAICxCEIAAMBYBCEAAGAsghAAADAWQQgAABhrytW8+KOPPlJXV5f+85//aPr06Zo2bdq1qgsAAGDSjXtGaHBwUK+88oruuOMOuVwufepTn1JmZqamT5+u9PR0feUrX9E777wzGbUCAABcU+MKQi+++KI+9alP6Uc/+pE+//nPa+/evfJ6vXrvvffU0tKi73znOzp37pxWrFihVatWqb29fbLqBgAAuGq2QCAQuNLOX/ziF/XMM89owYIFY/YbHh7Wq6++qoSEBH35y1++6iKt4vf75XK51N/fL6fTaXU5AADgCozn/D2uIPR/nT59WikpKRMqMFoQhAAAiD7jOX9P+Ftj9913n86dO3fJ5y7XDgAAEEkmHIRuuOEGPfHEE6Pae3t7tXz58qsqCgAAIBwmHIR+/vOf680339SPf/zjYNuJEye0ZMkSLiMBAICoMOF1hD75yU9qz549+tznPqcFCxbo3//+t+6//3499thj2rJly7WsEQAAYFKMKwitWbNGixYtUnZ2thYtWqQFCxZo+/btuvvuuzU0NKTt27dr3bp1k1UrAADANTWuIDRnzhz9/ve/V01NjXp7e/XJT35SCxcuVCAQ0IMPPqhFixbpo48+0nXXXTdZ9QIAAFwzE/76/L/+9S95vd6Q7eTJk5oyZYrmzZunY8eOXetaw46vzwMAEH3Gc/6e8D1CqampSk1N1T333BNsGxwcVFtbm/785z9PdFgAAICwGdeMUEdHh2bPnn3Fg586dUo33XTThAqLBMwIAQAQfSZtQcXFixfrK1/5iv74xz9etk9/f79+9KMfKSsrS3v37h3P8AAAAGE1rktjJ06c0He/+12tWrVK1113nXJzczVr1iw5HA79+9//1l//+le9++67ys3N1fe+9z0VFxdPVt0AAABXbUI3Sw8NDengwYNqamrS+++/r//+979KSkpSdna2Vq5cqaysrMmoNey4NAYAQPSZ9JulT58+rSlTpuiBBx7QkiVLJlQkAACA1cYdhOrr67Vu3TqdO3dONptN2dnZOnjwoKZPnz4Z9QEAAEyacf/W2LPPPquHH35Yf//73/Wb3/xGcXFx+uY3vzkZtQEAAEyqcd8jlJCQoPb2dqWnp0uS3nvvPeXk5OjMmTOTUqCVuEcIAIDo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XXfp+PHj8nq9wS03N1cPPvigvF4vIWiSDA8P68SJE5o5c6Yl78+MUJhVVlaqrKxMubm5ys/PV21trTo6OlReXm51aTFlcHBQf//734OPT548Ka/Xq2nTpmn27NkWVhZb1q9fr127dmn//v1KTEwMzna6XC5NnTrV4upix7e+9S0VFxcrLS1NAwMD2r17t373u9/p17/+tdWlxZTExMRR97ddf/31uvHGG7nv7Rp66qmntHr1as2ePVvd3d167rnn5Pf7tW7dOkvqIQiFWWlpqXp7e7V582b5fD5lZWWpsbFR6enpVpcWU44ePao777wz+Pjided169aprq7Ooqpiz8VlIO64446Q9p/+9Kd65JFHwl9QjDp9+rTKysrk8/nkcrl022236de//rVWrFhhdWnAuP3rX//SAw88oJ6eHk2fPl1Lly7VH/7wB8vOg6wjBAAAjMU9QgAAwFgEIQAAYCyCEAAAMBZBCAAAGIsgBAAAjEUQAgAAxiIIAQAAYxGEAACAsQhCAADAWAQhAMb5+te/rtWrV1tdBoAIQBACYByv16tFixZZXQaACEAQAmCcY8eOKTs72+oyAEQAghAAo3R2dqq3tzc4I9TX16fVq1eroKBAPp/P2uIAhB1BCIBRvF6vXC6XMjIydPz4cS1evFgzZ87U7373O82cOdPq8gCEGUEIgFG8Xq8WLlyo+vp6LVu2TE899ZRqa2uVkJBgdWkALGALBAIBq4sAgHC577779Nvf/laS9Ktf/UoFBQUWVwTASswIATCK1+vVfffdp6GhIfX19VldDgCLMSMEwBgDAwNyuVxqbW3VsWPHtGHDBjU3N+vWW2+1ujQAFplidQEAEC5er1fx8fHKzMxUdna23n33Xa1evVp//OMflZSUZHV5ACzApTEAxjh27JjmzZsnu90uSdqyZYsyMzN177336uzZsxZXB8AKXBoDAADGYkYIAAAYiyAEAACMRRACAADGIggBAABjEYQAAICxCEIAAMBYBCEAAGAsghAAADAWQQgAABiLIAQAAIxFEAIAAMb6/2/9LwSh7hyWAAAAAElFTkSuQmCC", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "import numpy as np\n", "import scipy\n", @@ -528,11 +549,32 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "9b4557d9", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ 0.71073077 -0.26772731 1.32780191 ... 0.89156421 1.22196187\n", + " 0.82673948]\n", + "[False True False ... False False False]\n", + "fraction outside one sigma: 0.3088\n" + ] + } + ], + "source": [ + "import scipy\n", + "import numpy as np\n", + "\n", + "pseudo_a = scipy.stats.norm.rvs(1, 0.5, 10000) \n", + "print(pseudo_a) \n", + "is_outside = abs(pseudo_a - 1) > 0.5\n", + "#print(pseudo_a[is_outside])\n", + "print(is_outside) \n", + "print(\"fraction outside one sigma:\", sum(is_outside)/len(pseudo_a))\n" + ] }, { "cell_type": "markdown", @@ -550,6 +592,28 @@ "\"let $X_{1},X_{2},\\dots ,X_{n}$ denote a statistical sample of size $n$ from a population with expected value (average) $\\mu$ and finite positive variance $\\sigma ^{2}$, and let $\\bar {X_{n}}$ denote the sample mean (which is itself a random variable). Then the limit as $n\\to \\infty$ of the distribution of $\\frac {({\\bar {X}}_{n}-\\mu )}{\\frac {\\sigma }{\\sqrt {n}}}$, is a normal distribution with mean 0 and variance 1.\"\n" ] }, + { + "cell_type": "code", + "execution_count": 34, + "id": "081552b2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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LctqNSZJxcXFmjdvnv361KlT+uabb5Senv6j9aaIRCIKBAKqqalRamqq0+04jvvRGvekNe5Ja9yTWNyP1jrLPbEsS42NjfL7/eesdSSgZGRkKCEhodVsSX19fatZFUlyu91yu90xY5dffvnFbLFdpaamGv0XpqNxP1rjnrTGPWmNexKL+9FaZ7gn55o5+YEji2STkpKUk5OjysrKmPHKykrl5+c70RIAADCIYx/xzJs3T9OmTVNubq5uvfVWbdiwQceOHdPMmTOdagkAABjCsYAyefJkff3111q2bJnq6uqUnZ2tHTt2aODAgU611O7cbrceffTRVh9PdVfcj9a4J61xT1rjnsTifrTWFe+Jy2rLd30AAAA6EM/iAQAAxiGgAAAA4xBQAACAcQgoAADAOASUDvTyyy8rLy9PycnJysjI0IQJE5xuyQjRaFQ33XSTXC6XDhw44HQ7jjh69KimT5+uzMxMJScn66qrrtKjjz6q5uZmp1vrUOvWrVNmZqYuvfRS5eTk6K233nK6JceUlpbqlltuUUpKivr27atf/OIX+uijj5xuyyilpaVyuVwKBoNOt+Kozz//XL/+9a+Vnp6unj176qabblJ1dbXTbV0wAkoHeeGFFzRt2jTdf//9+te//qW3335bU6ZMcbotIyxYsKBN2x53ZR9++KFOnTqlP//5zzp8+LBWr16tP/3pT/rd737ndGsd5vnnn1cwGNTixYu1f/9+3XbbbRo7dqyOHTvmdGuOqKqq0uzZs7V3715VVlbqu+++U2Fhob799lunWzPCvn37tGHDBg0ZMsTpVhzV0NCgYcOGqUePHtq5c6c++OADPfHEE51qt/UzsnDRnTx50vrJT35i/eUvf3G6FePs2LHDuu6666zDhw9bkqz9+/c73ZIxVq5caWVmZjrdRof56U9/as2cOTNm7LrrrrMWLVrkUEdmqa+vtyRZVVVVTrfiuMbGRisrK8uqrKy0RowYYT388MNOt+SYhQsXWsOHD3e6jYuCGZQO8N577+nzzz/XJZdcoqFDh6pfv34aO3asDh8+7HRrjvriiy/04IMPasuWLerZs6fT7RgnHA4rLS3N6TY6RHNzs6qrq1VYWBgzXlhYqD179jjUlVnC4bAkdZu/E2cze/ZsjRs3TgUFBU634rjt27crNzdXEydOVN++fTV06FBt3LjR6bbaBQGlA3z22WeSpCVLluj3v/+9/vGPf6h3794aMWKEvvnmG4e7c4ZlWbrvvvs0c+ZM5ebmOt2Ocf7zn//oqaee6jaPfvjqq6/U0tLS6mGhXq+31UNFuyPLsjRv3jwNHz5c2dnZTrfjqPLycr333nsqLS11uhUjfPbZZ1q/fr2ysrL06quvaubMmXrooYf07LPPOt3aBSOgXIAlS5bI5XKd9Xj33Xd16tQpSdLixYt19913KycnR88884xcLpf++te/OnwV7aut9+Spp55SJBJRcXGx0y1fVG29H/+/2tpa/fznP9fEiRP1wAMPONS5M1wuV8xry7JajXVHc+bM0fvvv6/nnnvO6VYcVVNTo4cfflhbt27VpZde6nQ7Rjh16pRuvvlmlZSUaOjQoZoxY4YefPBBrV+/3unWLphjz+LpCubMmaN77rnnrDVXXHGFGhsbJUk33HCDPe52u3XllVd2uQWAbb0ny5cv1969e1s9NyI3N1dTp07V5s2bL2abHaat9+MHtbW1uv322+0HaHYXGRkZSkhIaDVbUl9f32pWpbuZO3eutm/frjfffFP9+/d3uh1HVVdXq76+Xjk5OfZYS0uL3nzzTa1du1bRaFQJCQkOdtjx+vXrF/PeIknXX3+9XnjhBYc6aj8ElAuQkZGhjIyMc9bl5OTI7Xbro48+0vDhwyVJJ0+e1NGjR7vUwxGltt+TJ598UsuXL7df19bWasyYMXr++eeVl5d3MVvsUG29H9L3XxW8/fbb7Rm2Sy7pPhOcSUlJysnJUWVlpX75y1/a45WVlbrrrrsc7Mw5lmVp7ty5qqio0BtvvKHMzEynW3LcqFGjdPDgwZix+++/X9ddd50WLlzY7cKJJA0bNqzV188//vjjLvHeQkDpAKmpqZo5c6YeffRRBQIBDRw4UI8//rgkaeLEiQ5354wBAwbEvL7sssskSVdddVW3/F9ibW2tRo4cqQEDBugPf/iDvvzyS/ucz+dzsLOOM2/ePE2bNk25ubn2DNKxY8e6zTqc082ePVvbtm3TSy+9pJSUFHt2yePxKDk52eHunJGSktJqDU6vXr2Unp7ebdfmPPLII8rPz1dJSYkmTZqkd955Rxs2bOgSM7AElA7y+OOPKzExUdOmTVNTU5Py8vL0+uuvq3fv3k63BgPs2rVLn376qT799NNWAc3qJg8cnzx5sr7++mstW7ZMdXV1ys7O1o4dO7rE/wTPxw9rCEaOHBkz/swzz+i+++7r+IZgpFtuuUUVFRUqLi7WsmXLlJmZqTVr1mjq1KlOt3bBXFZ3+dcPAAB0Gt3nQ24AANBpEFAAAIBxCCgAAMA4BBQAAGAcAgoAADAOAQUAABiHgAIAAIxDQAEAAMYhoAAAAOMQUAAAgHEIKAAAwDgEFAAAYJz/ByskVn19o1xWAAAAAElFTkSuQmCC", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "a = scipy.stats.uniform.rvs(-1,2, (10000,10)) \n", + "plt.hist(np.sum(a, axis=1),bins=50);" + ] + }, { "cell_type": "markdown", "id": "977b88f5-3cb7-445b-adac-f44be4d69c90", @@ -565,7 +629,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 37, "id": "641ec6cc-6f1a-4399-b652-7e3da333782a", "metadata": { "slideshow": { @@ -573,7 +637,25 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(array([24., 45., 66., 67., 58., 25., 18., 1., 2., 0.]), array([-0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5]), <BarContainer object of 10 artists>)\n" + ] + }, + { + "data": { + "image/png": "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pqZG1dXV8dujo6P65z//qblz5572fFtFo1Hl5uaqv79fWVlZ6R7HsXidpwav89TgdZ4avM5TIxKJaP78+ZozZ05KHi/lgXL++edrxowZY3ZLBgYGxuyqSJLb7Zbb7U5YO++881I91pTJysriP4ApwOs8NXidpwav89TgdZ4aZ52VmstbU36R7KxZs7R06VJ1dHQkrHd0dKiwsDDVTwcAABxoUv7EU11drbvuukv5+flatmyZWltbdfToUa1du3Yyng4AADjMpATKT3/6U3355Zd69NFH9dlnnykvL09/+tOftGDBgsl4Oiu43W49/PDDY/5chdTidZ4avM5Tg9d5avA6T41Uv84uk6rPAwEAAKQI38UDAACsQ6AAAADrECgAAMA6BAoAALAOgZICTz31lAKBgGbPnq2lS5fqjTfeSPdIjlJfX69rrrlGHo9H8+bN0y233KJDhw6leyzHq6+vl8vlUlVVVbpHcaRPP/1Ud955p+bOnavMzExdffXVOnDgQLrHcpRvvvlGv/71rxUIBJSRkaGLLrpIjz76qEZHR9M92hlt3759WrlypXJycuRyufTSSy8l3G+MUV1dnXJycpSRkaHi4mL19vYm/TwEygQ999xzqqqqUm1trd59911dd911Kisr09GjR9M9mmN0dnZq/fr12r9/vzo6OvTNN9+otLRUx44dS/dojtXd3a3W1lYtXrw43aM40uDgoJYvX66zzz5bL7/8st5//309+eSTZ/S/om2jJ554Qk8//bSam5v1wQcfqKGhQf/zP/+j3/72t+ke7Yx27NgxXXXVVWpubj7t/Q0NDWpsbFRzc7O6u7vl9/tVUlKioaGh5J7IYEKuvfZas3bt2oS1Sy+91GzevDlNEznfwMCAkWQ6OzvTPYojDQ0NmWAwaDo6OkxRUZHZuHFjukdynAcffNCsWLEi3WM4Xnl5ubn33nsT1ioqKsydd96ZpomcR5J58cUX47dHR0eN3+83W7Zsia99/fXXxuv1mqeffjqpx2YHZQJGRkZ04MABlZaWJqyXlpaqq6srTVM5XyQSkaSUfSEVEq1fv17l5eW68cYb0z2KY+3evVv5+fm69dZbNW/ePC1ZskRbt25N91iOs2LFCv35z3/Whx9+KEn661//qjfffFM33XRTmidzrr6+PoXD4YT3RbfbraKioqTfFyft24yngy+++EInTpwY8yWIPp9vzJclIjWMMaqurtaKFSuUl5eX7nEcZ+fOnXrnnXfU3d2d7lEc7fDhw2ppaVF1dbUeeughvfXWW7r//vvldrt19913p3s8x3jwwQcViUR06aWXasaMGTpx4oQef/xx3XHHHekezbFOvved7n3xyJEjST0WgZICLpcr4bYxZswaUmPDhg1677339Oabb6Z7FMfp7+/Xxo0b1d7ertmzZ6d7HEcbHR1Vfn6+QqGQJGnJkiXq7e1VS0sLgZJCzz33nJ599lm1tbXpiiuuUE9Pj6qqqpSTk6PVq1enezxHS8X7IoEyAeeff75mzJgxZrdkYGBgTD1i4u677z7t3r1b+/bt04UXXpjucRznwIEDGhgY0NKlS+NrJ06c0L59+9Tc3KxYLKYZM2akcULnyM7O1uWXX56wdtlll+n5559P00TO9Ktf/UqbN2/W7bffLkm68sordeTIEdXX1xMok8Tv90v6diclOzs7vj6e90WuQZmAWbNmaenSpero6EhY7+joUGFhYZqmch5jjDZs2KAXXnhBr732mgKBQLpHcqQbbrhBBw8eVE9PT/zIz8/XqlWr1NPTQ5yk0PLly8d8VP7DDz909BeqpsPx48d11lmJb3MzZszgY8aTKBAIyO/3J7wvjoyMqLOzM+n3RXZQJqi6ulp33XWX8vPztWzZMrW2turo0aNau3ZtukdzjPXr16utrU27du2Sx+OJ71h5vV5lZGSkeTrn8Hg8Y67rOeecczR37lyu90mxBx54QIWFhQqFQrrtttv01ltvqbW1Va2trekezVFWrlypxx9/XPPnz9cVV1yhd999V42Njbr33nvTPdoZ7auvvtLHH38cv93X16eenh7NmTNH8+fPV1VVlUKhkILBoILBoEKhkDIzM1VZWZncE6XiY0bT3e9+9zuzYMECM2vWLPODH/yAj7+mmKTTHtu2bUv3aI7Hx4wnzx//+EeTl5dn3G63ufTSS01ra2u6R3KcaDRqNm7caObPn29mz55tLrroIlNbW2tisVi6Rzujvf7666f9/+TVq1cbY779qPHDDz9s/H6/cbvd5vrrrzcHDx5M+nlcxhiTiqICAABIFa5BAQAA1iFQAACAdQgUAABgHQIFAABYh0ABAADWIVAAAIB1CBQAAGAdAgUAAFiHQAEwJYqLi1VVVZXuMQCcIQgUAABgHQIFAABYh0ABkBZ79+6V1+vVjh070j0KAAsRKACm3M6dO3Xbbbdpx44duvvuu9M9DgALESgAptRTTz2ltWvXateuXbr55pvTPQ4AS81M9wAApo/nn39en3/+ud58801de+216R4HgMXYQQEwZa6++mpdcMEF2rZtm4wx6R4HgMUIFABT5uKLL9brr7+uXbt26b777kv3OAAsxp94AEypRYsW6fXXX1dxcbFmzpyppqamdI8EwEIECoApd8kll+i1115TcXGxZsyYoSeffDLdIwGwjMvwh2AAAGAZrkEBAADWIVAAAIB1CBQAAGAdAgUAAFiHQAEAANYhUAAAgHUIFAAAYB0CBQAAWIdAAQAA1iFQAACAdQgUAABgnf8FQX9AbUh+Cg8AAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", @@ -644,7 +726,7 @@ "cell_type": "markdown", "id": "b54b11f9-e897-4d2a-a5df-961c16cdbb3f", "metadata": { - "cell_style": "split", + "cell_style": "center", "slideshow": { "slide_type": "fragment" }, @@ -664,7 +746,7 @@ "execution_count": 3, "id": "5052bdb2-6e4b-4ea6-b08e-ba22f2a4a3d2", "metadata": { - "cell_style": "split", + "cell_style": "center", "slideshow": { "slide_type": "fragment" }, @@ -729,11 +811,24 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "d8da88a3", + "execution_count": 38, + "id": "3da79f92", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "data": { + "text/plain": [ + "(0.6781977937903096, 7.529508059159858e-15)" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scipy.integrate.quad(lambda x: scipy.stats.poisson.pmf(18,x), 18-np.sqrt(18), 18+np.sqrt(18)) " + ] }, { "cell_type": "markdown", @@ -763,7 +858,7 @@ "Physics Letters B 701 (2011), pp. 313-320\n", "[https://arxiv.org/abs/1103.4574]\n", "\n", - "<img src=\"./figures/12/ht_bq_1jets_comb_5pc.png width=\"100%\" \\>" + "<img src=\"./figures/12/ht_bq_1jets_comb_5pc.png\" width=\"100%\" />" ] }, { @@ -783,17 +878,43 @@ "Naive confidence interval: $1\\pm 1$\n", "\n", "Test it:\n", - " - draw the Poisson probability $P(1,\\mu$ vs. \\mu\n", + " - draw the Poisson probability $P(1,\\mu$) vs. $\\mu$\n", " - compute the confidence for the interval $[0, 2]$ numerically with [scipy.integrate.quad](https://docs.scipy.org/doc/scipy/reference/generated/scipy.integrate.quad.html)" ] }, { "cell_type": "code", - "execution_count": null, - "id": "db12f45d", + "execution_count": 40, + "id": "1d904c23", "metadata": {}, - "outputs": [], - "source": [] + "outputs": [ + { + "data": { + "text/plain": [ + "(0.593994150290162, 6.594659821447934e-15)" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiwAAAGxCAYAAABBZ+3pAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABQ70lEQVR4nO3deXhTdb4/8PdJ0iRtaULpXrpQNlt2aFlaqLhAEZURdaTqCHoFld+gQ+HOHUV0BrmjVceFYVXGhasOWGeQEUcYKS4slrW0iOxLoaW0lJY26Zq0yfn9kSZQWqBpk5wkfb+eJw/09OT0k87jnDff5XMEURRFEBEREbkxmdQFEBEREd0MAwsRERG5PQYWIiIicnsMLEREROT2GFiIiIjI7TGwEBERkdtjYCEiIiK3p5C6AEcxm824cOECAgICIAiC1OUQERFRO4iiiOrqakRGRkImu/44itcElgsXLiA6OlrqMoiIiKgDioqKEBUVdd3ve01gCQgIAGD5wBqNRuJqiIiIqD30ej2io6Nt9/Hr8ZrAYp0G0mg0DCxEREQe5mbLObjoloiIiNweAwsRERG5PQYWIiIicnsMLEREROT2GFiIiIjI7TGwEBERkdtjYCEiIiK3x8BCREREbo+BhYiIiNweAwsRERG5PQYWIiIicnsMLEREROT2GFi8UK2hCZeqDTA2maUuhYiIyCG85mnNXZ2uvhEf/1SAb34uwcmyGgCAj1zAgEgtHhzRE79OjIKfkv9zExGRZ+IdzAtsPXIRv//nQVTVNbY43mgScbCoCgeLqrDqx9P405QBuGtQhERVEhERdRwDi4f7YMcZ/PmbowCAfqHd8Nvb++C2/qHQ+vqguKoe2Ucu4sOdBSiuqsfszw7giZReWHhPAnzknA0kIiLPIYiiKEpdhCPo9XpotVrodDpoNBqpy3GJT3efw8v/+gUA8HhyLBbeMwBKResg0tBowrtbT+D9bWcAABMHhGHZI8Oh9pG7tF4iIqJrtff+zX9me6i9BZfxp68sYeXZ2/vilfsGtRlWAEDtI8eCyQl4f3oilAoZso9cxJy/H0CTiYtyiYjIMzCweKDKWiOeW3cAZhG4f3hP/Hda/3a9b9LAcKz5r5FQKWT47lgZXv7qF3jJABsREXk5BhYP9MZ/juGi3oDeIf7489RBEASh3e9N6ROMpY8Mh0wA1u0twt92nHFipURERI7BwOJhDhRW4vN9RQCANx8cAn+V/eumJw0Mxx/vHQAAeOM/x7H/7GWH1khERORoDCweRBRFvNq8I+jXiVFI6tWjw9d6PKUXfjU0EiaziGfX5qGy1uioMomIiByOgcWDbD9ZjtxzlVApZPjDpFs6dS1BEPDaA4PRO8QfpfoGLP73EQdVSURE5HgMLB5CFEW8m30CAPDYmFiEatSdvmY3lQLvTBsGmQBsyCvGd0cvdvqaREREzsDA4iH2n6tEflEVVAoZZo/v47DrDovujqdSewMAXtxwCLr6xpu8g4iIyPUYWDzEmp/OArBsYw4JUDn02vMm9kdcsD8u6g148z/HHHptIiIiR2Bg8QAXqurxn8OlACyLZR1N7SPHa/cPBgCs21uIIxf0Dv8ZREREndGhwLJy5UrExcVBrVYjMTERO3bsuO65O3fuxNixYxEUFARfX1/Ex8fj3XffbXHOmjVrIAhCq1dDQ0NHyvM6X+wvgsksYnRcDyREOOexA8l9gnDPkAiYRWDR14fZUI6IiNyK3U08srKykJGRgZUrV2Ls2LF4//33MXnyZBw5cgQxMTGtzvf398ezzz6LIUOGwN/fHzt37sQzzzwDf39/PP3007bzNBoNjh8/3uK9anXnF5Z6OrNZxPoD5wEAD4+KdurPevHuBHx39CL2FlzGN4dKcO+QSKf+PCIiovay++GHo0ePxogRI7Bq1SrbsYSEBEydOhWZmZntusYDDzwAf39/fPrppwAsIywZGRmoqqpqdx0GgwEGg8H2tV6vR3R0tNc9/HDPmQqkr94Nf6Uc+16aAD+lcx+w/detJ/Hu1hOICvTF9/9923WfT0REROQITnn4odFoRG5uLtLS0locT0tLQ05OTruukZeXh5ycHIwfP77F8ZqaGsTGxiIqKgr33nsv8vLybnidzMxMaLVa2ys62rmjD1L58kAxAODuwRFODysA8PStvREaoML5ynpk7St0+s8jIiJqD7sCS3l5OUwmE8LCwlocDwsLQ2lp6Q3fGxUVBZVKhaSkJMyZMwezZs2yfS8+Ph5r1qzBxo0bsW7dOqjVaowdOxYnT5687vUWLFgAnU5nexUVFdnzUTxCk8mMb49Yfq/3D+/pkp/pq5TjuTv7AQCWfn8KdcYml/xcIiKiG+nQP9mvfdieKIo3fQDfjh07UFNTg927d+OFF15A37598cgjjwAAxowZgzFjxtjOHTt2LEaMGIFly5Zh6dKlbV5PpVJBpXLs9l53s7fgMqrqGhHo54NRcR1vw2+v9KRorN5+GkWX6/F/Oefw/25zXN8XIiKijrBrhCU4OBhyubzVaEpZWVmrUZdrxcXFYfDgwXjqqacwb948LFq06PpFyWQYOXLkDUdYuoJvm7cyTxwQBoXcdWtJlAoZ5k3oDwB4b9tpNpMjIiLJ2XUXVCqVSExMRHZ2dovj2dnZSElJafd1RFFssWC2re/n5+cjIiLCnvK8itks4tvDllb5kwaGu/zn3zesJ/qFdoOuvhEf7ixw+c8nIiK6mt1TQvPnz8f06dORlJSE5ORkrF69GoWFhZg9ezYAy9qS4uJifPLJJwCAFStWICYmBvHx8QAsfVneeustPPfcc7ZrvvLKKxgzZgz69esHvV6PpUuXIj8/HytWrHDEZ/RIPxfrUKpvgL9SjrF9g13+8+UyARkT+mPO2gNY81MBnkqNQ4Dax+V1EBERAR0ILOnp6aioqMDixYtRUlKCQYMGYdOmTYiNjQUAlJSUoLDwyu4Ss9mMBQsWoKCgAAqFAn369MHrr7+OZ555xnZOVVUVnn76aZSWlkKr1WL48OHYvn07Ro0a5YCP6Jm2NE8H3RYfCrWPXJIa7hoUjt4h/jhzqRZ/31Po0GcYERER2cPuPizuqr37uD3FlGU7cahYh7cfGooHE6Mkq+Ofuefx+38cRHA3FXY+f7tk4YmIiLyTU/qwkGtU1hrxywUdACC1n+ung65237BI9Ozui/IaA7L2ed/WcSIi8gwMLG7op9PlEEXglrAAhGqkfTyBj1yG2eN7AwDe33YaxiazpPUQEVHXxMDihnacKAcAjJN4dMXqoaRoBHdT4YKuAd8cuiB1OURE1AUxsLgZURSx85R7BRa1jxxPpFgWVX+4s4BPciYiIpdjYHEzBeW1KK6qh1Iuw2gXdre9mUdHx0KlkOGXYj32FFyWuhwiIupiGFjcTM7pCgDAiNjuLnnYYXv18Ffadit9sION5IiIyLUYWNxM7rlKAMCouCCJK2ntybFxAIDvjl1EQXmtxNUQEVFXwsDiZvadtUy3jOwVKHElrfUN7YY74kMhisDHP3GUhYiIXIeBxY2U6OpxvrIeMgEYHuN+gQUAZo6zjLL8Y/95VNUZJa6GiIi6CgYWN7L/rGU6KCFCg24q91m/crWUPkGIDw9AfaOJjeSIiMhlGFjciHX9yshe7rM76FqCIOCJlF4AgL/vKYTZzC3ORETkfAwsbsS6fiXJDdevXO2+YT2hUStQeLkO205ekrocIiLqAhhY3ESNoQlHS/QAgKRY9x1hAQBfpRwPJUUDAD7ddU7iaoiIqCtgYHETh87rYBaBnt19Ea6V9vlB7fHYGEvn2x+Ol6Hocp3E1RARkbdjYHETh4qrAABDorTSFtJOccH+SO0XDFEEPtvDURYiInIuBhY38fN5HQBgsIcEFgCYkdwLAPDFviI0NJqkLYaIiLwaA4ubOFRsCSxDenaXthA73BEfip7dfVFZ14hvfi6RuhwiIvJiDCxuQFfXiHMVlnUgg3t6zgiLXCbg0dExAIBPdnNaiIiInIeBxQ1YR1dig/yg9fORuBr7pI+Mho9cwMGiKhy+oJO6HCIi8lIMLG7g5+YFt540umIV3E2FtIHhAMDOt0RE5DQMLG7gUPOCW0/ZIXSth0daerJsyCtGvZGLb4mIyPEYWNyAbYeQBy24vdrYPsGICvRFdUMTNv/CxbdEROR4DCwS09U1oriqHgAwIFIjcTUdI5MJSG/ufPv5Xk4LERGR4zGwSOxYqaUdf8/uvtD6etaC26s9lBQNmQDsPXsZp8pqpC6HiIi8DAOLxI5frAYAxIcHSFxJ54Rr1bgjPhQAkLWvUOJqiIjI2zCwSOxoSXNgifDswAIA6SMtPVnWHyiGsckscTVERORNGFgkZp0Sig/3zPUrV7v9lhCEaVS4XGtE9pGLUpdDRERehIFFQmaziOOllhGWBC8YYVHIZXgosXnxLaeFiIjIgRhYJHS+sh51RhOUChl6BflLXY5DTGveLbTjZDmKLtdJXA0REXkLBhYJHW2eDuof1g0KuXf8TxET5IdxfYMBAP/Yzy3ORETkGN5xl/RQx5oX3N4S5vnrV642rbnz7foDxTCbRYmrISIib8DAIqHjFy0jLN6wfuVqaQPCEKBWoLiqHrvPVEhdDhEReQEGFgmduGhpsNY/zLsCi9pHjilDIwEA/8g9L3E1RETkDRhYJNJoMuNseS0AoG9oN4mrcbxfJ0YBADb/UoLqhkaJqyEiIk/XocCycuVKxMXFQa1WIzExETt27LjuuTt37sTYsWMRFBQEX19fxMfH491332113vr16zFgwACoVCoMGDAAGzZs6EhpHqPwch2azCL8lHJEaNVSl+Nww6O7o0+IPxoazdh0iA9EJCKizrE7sGRlZSEjIwMLFy5EXl4eUlNTMXnyZBQWtt13w9/fH88++yy2b9+Oo0eP4qWXXsJLL72E1atX287ZtWsX0tPTMX36dBw8eBDTp0/HtGnTsGfPno5/Mjdnfd5On5BuEARB4mocTxAE/Lq5J8s/OS1ERESdJIiiaNc2jtGjR2PEiBFYtWqV7VhCQgKmTp2KzMzMdl3jgQcegL+/Pz799FMAQHp6OvR6PTZv3mw756677kJgYCDWrVvXrmvq9XpotVrodDpoNO6/62blj6fw5n+OY+qwSCx5eLjU5TjFRX0DkjO/g1kEfvj9bYgL9o5eM0RE5DjtvX/bNcJiNBqRm5uLtLS0FsfT0tKQk5PTrmvk5eUhJycH48ePtx3btWtXq2tOmjTphtc0GAzQ6/UtXp7EOsLijetXrMI0atzaPwQAsJ6jLERE1Al2BZby8nKYTCaEhYW1OB4WFobS0tIbvjcqKgoqlQpJSUmYM2cOZs2aZfteaWmp3dfMzMyEVqu1vaKjo+35KJI7fcmy4LZPiPcGFuDK4tv1B87DxJ4sRETUQR1adHvtmgtRFG+6DmPHjh3Yv38/3nvvPSxZsqTVVI+911ywYAF0Op3tVVTkOV1VRVHE6S4wwgIAExLCoFErUKJrwK7T7MlCREQdo7Dn5ODgYMjl8lYjH2VlZa1GSK4VFxcHABg8eDAuXryIRYsW4ZFHHgEAhIeH231NlUoFlUplT/luo6zagBpDE+QyAbFe8gyh61H7yPGrYZH4bHch/pFbhHH9gqUuiYiIPJBdIyxKpRKJiYnIzs5ucTw7OxspKSntvo4oijAYDLavk5OTW11zy5Ytdl3Tk1jXr8T28INS4f2tcKxPcP7PL6XQsycLERF1gF0jLAAwf/58TJ8+HUlJSUhOTsbq1atRWFiI2bNnA7BM1RQXF+OTTz4BAKxYsQIxMTGIj48HYOnL8tZbb+G5556zXXPu3Lm49dZb8cYbb+C+++7DV199ha1bt2Lnzp2O+Ixu5/QlS2Dp7eXrV6yGRGnRL7QbTpbV4JufS/DIqBipSyIiIg9jd2BJT09HRUUFFi9ejJKSEgwaNAibNm1CbGwsAKCkpKRFTxaz2YwFCxagoKAACoUCffr0weuvv45nnnnGdk5KSgo+//xzvPTSS3j55ZfRp08fZGVlYfTo0Q74iO7Hun6lT6h3TwdZWXqyRCFz8zH8Y38RAwsREdnN7j4s7sqT+rA8/tFebDtxCW88OBjpI7vGzbtM34Dk17+HySziu/8e7/W7o4iIqH2c0oeFHONchWVLs7cvuL1aqEaN8c09WTYcKJa4GiIi8jQMLC7WaDLjfGU9AKBXFwosAPDAiJ4AgA15xTCzJwsREdmBgcXFLlTVo8ksQu0jQ2iAZ27L7qgJCWEIUCtQXFWPPQWXpS6HiIg8CAOLi52tqAMAxPbwh0zmfQ89vBG1jxz3DI4AAHx5gK36iYio/RhYXOzK+hU/iSuRxgMjLK36N/9SinqjSeJqiIjIUzCwuNjZcssIS68u+uTipNhARPfwRY2hCVuO3Pj5U0RERFYMLC7W1UdYZDIB9w+zLL79kruFiIionRhYXOxsc2DpajuErnZ/87TQjpOXUFbdIHE1RETkCRhYXMhkFlF0uXlLcxedEgKAuGB/jIjpDrMIbMy/IHU5RETkARhYXOhCVT2MJjOUChkiNGqpy5GUdfHtek4LERFROzCwuNC55i3NMT38utyW5mvdOyQCSrkMR0v0OFqil7ocIiJycwwsLnTucvOC2x5dc8Ht1br7KXFHfCgAS+dbIiKiG2FgcSFrS/5oBhYALVv1N5nMEldDRETujIHFhayBJSrQV+JK3MNtt4Qi0M8Hl6oN+Ol0hdTlEBGRG2NgcaGiy5Y1LAwsFkqFDFOGRgIANrBVPxER3QADiwtdGWHhlJCVdbfQfw6XosbQJHE1RETkrhhYXKSh0YTyGgMAIJqBxWZolBa9Q/zR0GjG5kMlUpdDRERuioHFRc5XWqaDAlQKaHwVElfjPgRBwAPD2aqfiIhujIHFRYqap4N6BvpCELp2D5ZrTW0OLLsLKlBcVS9xNURE5I4YWFyE61euLyrQD2N694AoAv9iTxYiImoDA4uLnG/eIRTdgzuE2mJdfPvlgfMQRVHiaoiIyN0wsLgIR1hubPKgcKgUMpy+VItDxTqpyyEiIjfDwOIi1kW37MHStgC1DyYNDAfAxbdERNQaA4uLFLHL7U1ZW/VvPHgBxia26icioisYWFyg1tCEy7VGAJwSupFxfYMR3E2Fy7VGbDtxSepyiIjIjTCwuIB1q26AWgGtr4/E1bgvhVyGqcOaW/XnsVU/ERFdwcDiAtbA0rM7p4NuxrpbaOuRMujqGiWuhoiI3AUDiwuUVDUAACK0aokrcX8DIjWIDw+A0WTGvw9dkLocIiJyEwwsLlCis4ywRHKEpV2si283cLcQERE1Y2BxgQvNIywMLO1z37CekAnA/nOVOFdRK3U5RETkBhhYXMA6wsIpofYJ06gxrl8IAPZkISIiCwYWFyjRWdewcISlvR60TgvlFbNVPxERMbA4myiKuFBlXcPCEZb2ShsQDn+lHIWX65B7rlLqcoiISGIMLE5WWdcIQ3PX1nBOCbWbr1KOyYMjAADrD7AnCxFRV8fA4mTW0ZXgbkqoFHKJq/Es1t1C/z5YgoZGk8TVEBGRlDoUWFauXIm4uDio1WokJiZix44d1z33yy+/xMSJExESEgKNRoPk5GR8++23Lc5Zs2YNBEFo9WpoaOhIeW6F61c6bkxcEHp290W1oQlbjlyUuhwiIpKQ3YElKysLGRkZWLhwIfLy8pCamorJkyejsLCwzfO3b9+OiRMnYtOmTcjNzcXtt9+OKVOmIC8vr8V5Go0GJSUlLV5qtedPoXCHUMfJZIJt8e0/czktRETUldkdWN555x3MnDkTs2bNQkJCApYsWYLo6GisWrWqzfOXLFmCP/zhDxg5ciT69euH1157Df369cPXX3/d4jxBEBAeHt7i5Q3Yg6VzrK36d568hIt6zx9xIyKijrErsBiNRuTm5iItLa3F8bS0NOTk5LTrGmazGdXV1ejRo0eL4zU1NYiNjUVUVBTuvffeViMw1zIYDNDr9S1e7ogjLJ3TK9gfSbGBMIuWLc5ERNQ12RVYysvLYTKZEBYW1uJ4WFgYSktL23WNt99+G7W1tZg2bZrtWHx8PNasWYONGzdi3bp1UKvVGDt2LE6ePHnd62RmZkKr1dpe0dHR9nwUl7E9R4gjLB3260TLKMv63PPsyUJE1EV1aNGtIAgtvhZFsdWxtqxbtw6LFi1CVlYWQkNDbcfHjBmDxx57DEOHDkVqaiq++OIL9O/fH8uWLbvutRYsWACdTmd7FRUVdeSjON0F63OEOMLSYXcPiYBKIcPJshr8fF4ndTlERCQBuwJLcHAw5HJ5q9GUsrKyVqMu18rKysLMmTPxxRdfYMKECTcuSibDyJEjbzjColKpoNFoWrzcjdks2tZdcISl4zRqH0waaFnTxJ4sRERdk12BRalUIjExEdnZ2S2OZ2dnIyUl5brvW7duHZ544gmsXbsW99xzz01/jiiKyM/PR0REhD3luZ3KOiMaTZYpjNAAlcTVeLYHm6eFNh68AEMTe7IQEXU1CnvfMH/+fEyfPh1JSUlITk7G6tWrUVhYiNmzZwOwTNUUFxfjk08+AWAJKzNmzMBf//pXjBkzxjY64+vrC61WCwB45ZVXMGbMGPTr1w96vR5Lly5Ffn4+VqxY4ajPKYmLegMAS9M4Hzl79HXGuL7BCNOocFFvwA/HynDXIM8Os0REZB+776Lp6elYsmQJFi9ejGHDhmH79u3YtGkTYmNjAQAlJSUterK8//77aGpqwpw5cxAREWF7zZ0713ZOVVUVnn76aSQkJCAtLQ3FxcXYvn07Ro0a5YCPKJ2L1ZbpoNAArl/pLLlMwP3DLaMs7MlCRNT1CKKXbLvQ6/XQarXQ6XRus54la18hnl9/CLffEoKP/8uzw5c7OFVWjQnvbIdCJmD3i3ciuBun2YiIPF1779+cp3Ai65RQmIYjLI7QNzQAQ6O0aDKL+Cr/gtTlEBGRCzGwOJF1h1AoA4vDWHuycFqIiKhrYWBxoisjLJy6cJQpQyOhlMtwtESPIxfcs7sxERE5HgOLE5U1L7oN46Jbh+nup8SdCZamg+zJQkTUdTCwOFEZ17A4xYPND0T8Kr8YjSazxNUQEZErMLA4icks4lINp4ScYfwtIQjupkR5jRHbjl+SuhwiInIBBhYnqag1wGQWIROAIG6/dSgfuQz3DesJgNNCRERdBQOLk1ing0ICVJDLbv5gSLKPdVrou6NlqKozSlwNERE5GwOLk1i3NHP9inMMiNQgIUIDo8mMrw+yJwsRkbdjYHES65ZmtuV3HvZkISLqOhhYnOTKCAvXrzjLfcMioZAJOHhehxMXq6Uuh4iInIiBxUlsPVg4JeQ0wd1UuD3e0pPli31FEldDRETOxMDiJFemhDjC4kzpSdEAgC/zimFsYk8WIiJvxcDiJFx06xq33RKC0AAVLtca8f2xi1KXQ0RETsLA4iS2ERauYXEqhVyGB5sX32ZxWoiIyGsxsDhBo8mMilq25XeVh5oDy7YTl1Cqa5C4GiIicgYGFicorzFAFAGFTEAPP6XU5Xi93iHdMKpXD5hF4J+5HGUhIvJGDCxOcHWXWxm73LrEtJGWxbdf7D8Ps1mUuBoiInI0BhYnuFTNHUKudvfgcHRTKVB4uQ57Ci5LXQ4RETkYA4sTlDc/pTmYDz10GT+lAlOGRgIAvtjPaSEiIm/DwOIEDCzSmJZkWXy76VAJdPWNEldDRESOxMDiBOU1lqcHBwdwwa0rDYvujv5h3WBo4gMRiYi8DQOLE1ziCIskBEHAtCTr4ltOCxEReRMGFicor2ZgkcoDI6LgIxfw83kdjpbopS6HiIgchIHFCbiGRTo9/JWYOCAMADvfEhF5EwYWJ7CuYQnhGhZJPNQ8LfSv/GIYmkwSV0NERI7AwOJgxiazbYdKkD9HWKRwa78QRGjVqKprxJbDfCAiEZE3YGBxMOszhBQyAVpfH4mr6ZrkMsH2fKF1ewslroaIiByBgcXByqst00FB3ZRsyy+haSOjIQhAzukKFJTXSl0OERF1EgOLg3HBrXuICvTDbf1DAHCUhYjIGzCwOBh7sLiPR0fHAgD+mXuei2+JiDwcA4uDcYTFfdx+SwjCNWpcrjXiP7+USl0OERF1AgOLg1nXsLAtv/QUchnSR1q2OK/dw2khIiJPxsDiYNYRlhCOsLiFh0dFQyYAewou41RZjdTlEBFRBzGwOBinhNxLhNYXd8SHAuDiWyIiT9ahwLJy5UrExcVBrVYjMTERO3bsuO65X375JSZOnIiQkBBoNBokJyfj22+/bXXe+vXrMWDAAKhUKgwYMAAbNmzoSGmSY2BxP4+OjgEArD9wHg2NXHxLROSJ7A4sWVlZyMjIwMKFC5GXl4fU1FRMnjwZhYVt/+t1+/btmDhxIjZt2oTc3FzcfvvtmDJlCvLy8mzn7Nq1C+np6Zg+fToOHjyI6dOnY9q0adizZ0/HP5lErG35uYbFfYzvH4qe3X1RVdeIzb+USF0OERF1gCCKomjPG0aPHo0RI0Zg1apVtmMJCQmYOnUqMjMz23WNgQMHIj09HX/84x8BAOnp6dDr9di8ebPtnLvuuguBgYFYt25dm9cwGAwwGAy2r/V6PaKjo6HT6aDRaOz5SA7TZDKj30ubIYrA/pcmcJTFjSz97iTeyT6Bkb0C8Y/ZKVKXQ0REzfR6PbRa7U3v33aNsBiNRuTm5iItLa3F8bS0NOTk5LTrGmazGdXV1ejRo4ft2K5du1pdc9KkSTe8ZmZmJrRare0VHR1txydxjsu1RogiIBOAQD+OsLiT9JHRkMsE7DtbiZMXq6Uuh4iI7GRXYCkvL4fJZEJYWFiL42FhYSgtbV+fi7fffhu1tbWYNm2a7Vhpaand11ywYAF0Op3tVVRUZMcncQ5r07ge/irI2ZbfrYRp1LizefHtWi6+JSLyOB1adCsILW/Goii2OtaWdevWYdGiRcjKykJoaGinrqlSqaDRaFq8pGZbv9KNoyvuyLb4NpeLb4mIPI1dgSU4OBhyubzVyEdZWVmrEZJrZWVlYebMmfjiiy8wYcKEFt8LDw/v0DXdTXl1cw+WAK5dcUe39gtBVKAv9A1N+PrgBanLISIiO9gVWJRKJRITE5Gdnd3ieHZ2NlJSrr+Qcd26dXjiiSewdu1a3HPPPa2+n5yc3OqaW7ZsueE13VFFrSWwBPlzhMUdyWQCftP8fKFPdp2DnevNiYhIQnZPCc2fPx8ffPABPvroIxw9ehTz5s1DYWEhZs+eDcCytmTGjBm289etW4cZM2bg7bffxpgxY1BaWorS0lLodDrbOXPnzsWWLVvwxhtv4NixY3jjjTewdetWZGRkdP4TulBF85RQEHcHua30kdFQKmQ4VKxDflGV1OUQEVE72R1Y0tPTsWTJEixevBjDhg3D9u3bsWnTJsTGWv7lWlJS0qIny/vvv4+mpibMmTMHERERttfcuXNt56SkpODzzz/Hxx9/jCFDhmDNmjXIysrC6NGjHfARXedyrSWw9OAIi9vq4a/ElCGRACyjLERE5Bns7sPirtq7j9uZZv3fPmw9WobMBwbjkVExktRAN/fz+Sr8avlPUMplyFlwB/vlEBFJyCl9WOjGKjjC4hGGRHXH0OjuMJrMyNon/XZ4IiK6OQYWB6pkYPEYjydbpjA/230OTSazxNUQEdHNMLA4EEdYPMfdgyMQ5K9Eia4BW49elLocIiK6CQYWB2k0mVHd0AQA6MG2/G5P7SNH+kjL4xy4+JaIyP0xsDiIdTpIJgBaXx+Jq6H2+M2YWMgEIOd0BZ8vRETk5hhYHORynSWwBPopIeNzhDxCz+6+mDjA0k2ZoyxERO6NgcVB2IPFM81I7gUA+PLAeVQ3NEpbDBERXRcDi4NYA0sgA4tHSekThD4h/qg1mvDlgWKpyyEioutgYHEQ25ZmLrj1KIIg4PGUXgCANTlnYTZ7RR9FIiKvw8DiILYtzd0YWDzNgyOiEKBWoKC8Fj+eKJO6HCIiagMDi4NwhMVz+asUeLh5i/OHOwskroaIiNrCwOIgbBrn2R5P6QWZAPx0qgJHS/RSl0NERNdgYHGQyjoGFk8WFeiHyYMiAAAfcZSFiMjtMLA4yOVay5ZYBhbP9eS4OADAV/kXcKnaIHE1RER0NQYWB7lca7nBMbB4rsTYQAxrforzZ7vZSI6IyJ0wsDiAKIqobB5hYR8WzzazeZTl73vOoaHRJHE1RERkxcDiADWGJhhNZgDcJeTpJg8KR6RWjfIaIzYevCB1OURE1IyBxQGsoyu+PnL4KuUSV0OdoZDLbI3kPtpZAFFkIzkiInfAwOIAFVy/4lUeHhkDP6Ucx0qrkXO6QupyiIgIDCwOwS3N3kXr54NfJ0YBAP6244zE1RAREcDA4hDc0ux9Zo6Lg0wAfjx+CcdK2UiOiEhqDCwOwC3N3ic2yN/WSG71No6yEBFJjYHFATjC4p2eGd8bALDx4AUUV9VLXA0RUdfGwOIAHGHxTkOiuiOlTxCazCI+3MF2/UREUmJgcQDrCEsge7B4ndnj+wAAPt9XiKrmxdVEROR6DCwOcGWXkI/ElZCjpfYLxoAIDeqMJny6i+36iYikwsDiANZ/eXfnCIvXEQTBtpZlTc5ZtusnIpIIA4sD6OotU0Ld/TjC4o3uGRyBqEBfVNQa8Y/9RVKXQ0TUJTGwdJIoiqiqaw4svhxh8UYKuQxPpVpGWf62owBNzc+NIiIi12Fg6aQaQxOazJbnzXCExXs9lBSFQD8fFF6uw+ZfSqUuh4ioy2Fg6STr6IraRwa1Dx986K38lArbQxFX/niaD0UkInIxBpZOsq1f4XSQ13sipRf8lXIcLdFj69EyqcshIupSGFg6ybZ+hdNBXq+7nxLTk3sBAJZ9f5KjLERELsTA0knWHixaXwaWrmBWahzUPjL8fF6HbScuSV0OEVGX0aHAsnLlSsTFxUGtViMxMRE7duy47rklJSV49NFHccstt0AmkyEjI6PVOWvWrIEgCK1eDQ0NHSnPparq2eW2KwnupsJvRscCAJZ9f4qjLERELmJ3YMnKykJGRgYWLlyIvLw8pKamYvLkySgsLGzzfIPBgJCQECxcuBBDhw697nU1Gg1KSkpavNRqtb3luZzO1jSOIyxdxTO39oZSIUPuuUrsOl0hdTlERF2C3YHlnXfewcyZMzFr1iwkJCRgyZIliI6OxqpVq9o8v1evXvjrX/+KGTNmQKvVXve6giAgPDy8xcsTWNewaBlYuoxQjRoPj4wGACz9/qTE1RARdQ12BRaj0Yjc3FykpaW1OJ6WloacnJxOFVJTU4PY2FhERUXh3nvvRV5e3g3PNxgM0Ov1LV5SqGTTuC5p9vg+8JEL2H3mMvadvSx1OUREXs+uwFJeXg6TyYSwsLAWx8PCwlBa2vFmWvHx8VizZg02btyIdevWQa1WY+zYsTh58vr/es3MzIRWq7W9oqOjO/zzO0NXb5kSCuQIS5cS2d0Xv06MAmBZy0JERM7VoUW3giC0+FoUxVbH7DFmzBg89thjGDp0KFJTU/HFF1+gf//+WLZs2XXfs2DBAuh0OturqEiaZ7xwW3PX9f/G94VcJmD7iUvIL6qSuhwiIq9mV2AJDg6GXC5vNZpSVlbWatSlU0XJZBg5cuQNR1hUKhU0Gk2LlxSsu4S0nBLqcmKC/DB1WE8AwF+3npC4GiIi72ZXYFEqlUhMTER2dnaL49nZ2UhJSXFYUaIoIj8/HxEREQ67prNUcZdQl/bcHZZRlh+OX0LuuUqpyyEi8lp2TwnNnz8fH3zwAT766CMcPXoU8+bNQ2FhIWbPng3AMlUzY8aMFu/Jz89Hfn4+ampqcOnSJeTn5+PIkSO277/yyiv49ttvcebMGeTn52PmzJnIz8+3XdNdXf2kZvZh6Zp6Bfvj1yMsa1neyT4ucTVERN5LYe8b0tPTUVFRgcWLF6OkpASDBg3Cpk2bEBtraaZVUlLSqifL8OHDbX/Pzc3F2rVrERsbi7NnzwIAqqqq8PTTT6O0tBRarRbDhw/H9u3bMWrUqE58NOerNZr4pGbCc3f2xZd55/HTqQrsOl2B5D5BUpdEROR1BNFLWnXq9XpotVrodDqXrWcpulyH1Dd/gEohw/E/T3bJzyT39PK/fsGnu89hZK9AfPFMcqcWoRMRdSXtvX/zWUKdYHtSM0dXurxn7+gLlUKGfWcrsf1kudTlEBF5HQaWTqhi0zhqFqZRY/oYy7To21uO8xlDREQOxsDSCVX13CFEV8y+rQ/8lHL8fF6HrUfLpC6HiMirMLB0QiWbxtFVgrup8ERKLwCWURazmaMsRESOwsDSCbYnNXNKiJo9fWtvBKgUOFZaja9/viB1OUREXoOBpRPYlp+u1d1Pidm39QEA/OXb4zA0mSSuiIjIOzCwdEKVbZcQR1joiifHxiFMo8L5ynp8trvw5m8gIqKbYmDpBLblp7b4KuWYN6E/AGD59yehb2iUuCIiIs/HwNIJV7Y1M7BQS79OjELf0G6orGvEez+elrocIiKPx8DSCbYnNXOEha6hkMvw/F3xAICPfipAqa5B4oqIiDwbA0sn8MGHdCMTEkKRFBuIhkYz3s0+IXU5REQejYGlg0RRhK65cZyWU0LUBkEQsOBuyyjLP3KLcPJitcQVERF5LgaWDqozmtBo4pOa6cYSY3tg0sAwmEXgtU1HpS6HiMhjMbB0kHXnh0ImwNdHLnE15M6evyseCpmAH45fwo/H2bKfiKgjGFg6SF/fBMAyHSQIgsTVkDvrHdINjze37P/zN0fRaDJLWxARkQdiYOkgXfMOIQ3Xr1A7/O7Ofujhr8Spshr8ffc5qcshIvI4DCwdpLcGFrVC4krIE2h9fTB/oqWZ3LtbT9qaDhIRUfswsHSQdQ0LR1iovR4eGY348ADo6huxZOtJqcshIvIoDCwdxCkhspdCLsMf7x0AAPh09zlucyYisgMDSwddveiWqL1S+gZj4oAwmMwi/veboxBFUeqSiIg8AgNLB9lGWNQMLGSfhXcnwEcuYPuJS8g+clHqcoiIPAIDSwddWcPCRbdkn17B/ngqtTcA4JWvj6DeaJK4IiIi98fA0kHWXUKcEqKOePaOvujZ3RfFVfVY/gMX4BIR3QwDSwdxSog6w0+pwB+nWBbgrt5+Bqcv1UhcERGRe2Ng6SB9g2XRLXcJUUelDQjDHfGhaDSJ+ONXv3ABLhHRDTCwdBCnhKizBEHAoikDoVLI8NOpCvz75xKpSyIiclsMLB3ETrfkCDFBfvjtbX0BAP/77yOobl7MTURELTGwdIDJLKLawD4s5BjPjO+NXkF+KKs24N1sLsAlImoLA0sHXP2v4AAuuqVOUvvIsfi+QQCANTkFyC+qkrYgIiI3xMDSAdYut74+cigV/BVS593aPwT3D+8Jswg8/8+fYWwyS10SEZFb4d22A6xN4zgdRI708r0D0MNfieMXq/HettNSl0NE5FYYWDrgyoMPueCWHKeHvxJ/au7Nsvz7UzhVxocjEhFZMbB0gJ5N48hJfjU0ErffEgKjyYzn1x+C2czeLEREAANLh3BKiJxFEAT8+f7B8FfKkXuuEp/tOSd1SUREboGBpQOuTAkxsJDj9ezui+cnxwMA3th8DEWX6ySuiIhIeh0KLCtXrkRcXBzUajUSExOxY8eO655bUlKCRx99FLfccgtkMhkyMjLaPG/9+vUYMGAAVCoVBgwYgA0bNnSkNJew7hLiCAs5y2OjY5EUG4haown/88+DnBoioi7P7sCSlZWFjIwMLFy4EHl5eUhNTcXkyZNRWFjY5vkGgwEhISFYuHAhhg4d2uY5u3btQnp6OqZPn46DBw9i+vTpmDZtGvbs2WNveS5hnRJil1tyFplMwFsPDYWvjxy7z1zGmpyzUpdERCQpQbTziWujR4/GiBEjsGrVKtuxhIQETJ06FZmZmTd872233YZhw4ZhyZIlLY6np6dDr9dj8+bNtmN33XUXAgMDsW7dunbVpdfrodVqodPpoNFo2v+BOmDu53n4Kv8CXronAbNSezv1Z1HX9unuc3j5X79ApZDhm9+lom9oN6lLIiJyqPbev+0aYTEajcjNzUVaWlqL42lpacjJyelYpbCMsFx7zUmTJt3wmgaDAXq9vsXLVfRcw0Iu8tjoGKT2C4ahyYz//sdBNJnYUI6Iuia7Akt5eTlMJhPCwsJaHA8LC0NpaWmHiygtLbX7mpmZmdBqtbZXdHR0h3++vXTc1kwuIggC3vz1EASoFThYVIVVP7KhHBF1TR1adCsIQouvRVFsdczZ11ywYAF0Op3tVVRU1Kmfbw99g2XRLRvHkStEaH2x+L6BAIC/fncSvxTrJK6IiMj17AoswcHBkMvlrUY+ysrKWo2Q2CM8PNzua6pUKmg0mhYvV7FOCXGXELnK1GE9cdfAcDSZRWRk5aPeaJK6JCIil7IrsCiVSiQmJiI7O7vF8ezsbKSkpHS4iOTk5FbX3LJlS6eu6UycEiJXEwQBr94/CKEBKpwqq8Hifx+RuiQiIpeye05j/vz5mD59OpKSkpCcnIzVq1ejsLAQs2fPBmCZqikuLsYnn3xie09+fj4AoKamBpcuXUJ+fj6USiUGDLA8N2Xu3Lm49dZb8cYbb+C+++7DV199ha1bt2Lnzp0O+IiO1dBogqH5SbpaPwYWcp2gbiq8mz4Mj324B+v2FmJc32DcMyRC6rKIiFzC7sCSnp6OiooKLF68GCUlJRg0aBA2bdqE2NhYAJZGcdf2ZBk+fLjt77m5uVi7di1iY2Nx9uxZAEBKSgo+//xzvPTSS3j55ZfRp08fZGVlYfTo0Z34aM5R3bx+RRCAbkquYSHXGts3GP9vfB+s/PE0XvjyZwyN1iIq0E/qsoiInM7uPizuylV9WE6V1WDCO9ugUSvw86JJTvs5RNfTaDLjofd2Ib+oComxgch6egwUcj5lg4g8k1P6sNBVDz7kdBBJxEcuw7JHhiNApUDuuUos/e6k1CURETkdA4udrDuEAlQMLCSd6B5+eO2BwQCAZT+cws6T5RJXRETkXAwsdrKuYQngc4RIYlOGRuLhkdEQReB3n+fhQlW91CURETkNA4udrgQWjrCQ9Bb9aiAGRmpwudaI3/79AIxNbN1PRN6JgcVONQY+qZnch9pHjlW/SYRGrUB+URX+/A37sxCRd2JgsZN1hKUbAwu5iZggPyx5eBgA4JNd5/CvvGJpCyIicgIGFjtxDQu5ozviw/DcHX0BAAu+PITjpdUSV0RE5FgMLHaybmvmGhZyNxkT+iO1XzDqG014+tP9qKw1Sl0SEZHDMLDYqYYjLOSm5DIBf314OKICfXGuog5z1h5Ao4mLcInIOzCw2Mm2hkXFwELup4e/Eh88ngR/pRw5pyuw+GsuwiUi78DAYqdqA5/UTO4tPlyDJQ8PhyAAn+4+h093n5O6JCKiTmNgsROnhMgTTBwQhv+ZdAsAYNHGw8g5xU64ROTZGFjsxG3N5Cn+3/g+mDosEiaziN+uPYAzl2qkLomIqMMYWOzETrfkKQRBwOsPDsGw6O6oqmvE4x/vxaVqg9RlERF1CAOLHRoaTTA277rglBB5ArWPHB88noSYHn4oulyPmf+3D3XGJqnLIiKyGwOLHWoMV/6P3l/JwEKeIbibCv/35CgE+vng5/M6PLs2D03c7kxEHoaBxQ5Xb2mWywSJqyFqv7hgf3z4xEioFDJ8f6wML3/1C0RRlLosIqJ2Y2CxQ7Wtyy1HV8jzjIgJxLJHhkMmAOv2FmHpd6ekLomIqN0YWOzA5wiRp0sbGI5XfjUQAPDu1hP4+KcCiSsiImofBhY7sMsteYPpyb2QMaEfAOCVr4/gi/1FEldERHRzDCx2qOaDD8lLzL2zH2aOiwMAvLD+Z2w6VCJxRUREN8bAYgdOCZG3EAQBL92TgIdHRsMsAnM/z8OPx8ukLouI6LoYWOxg3dbMwELeQBAEvHr/YNw7JAKNJhGzP8vFT2zhT0RuioHFDpwSIm8jlwl4N30Y7owPRUOjGU+u2YedJxlaiMj9MLDYwTYlxEW35EV85DKsfGwE7owPhaHJjJn/tw/bT1ySuiwiohYYWOzANSzkrVQKOVY+NgITEsJgaDJj1if7uaaFiNwKA4sdqg3WJzVzSoi8j0ohx8rfjMCkgWEwNpnx9Ce5+P7YRanLIiICwMBiF3a6JW+nVMiw/NERmDwoHEaTJbR8lV8sdVlERAws9uCUEHUFPnIZlj4yHFOHRaLJLCIjKx+f7DordVlE1MUxsNjBNsKi4pQQeTcfuQzvTBuGJ1J6QRSBP351GEu2nuADE4lIMgwsdqjhCAt1ITKZgD9NGYB5E/oDAJZsPYlFGw/DbGZoISLXY2BpJ5NZRK3RBICBhboOQRAwd0I/2wMT/2/XOfz27wdQ3/zfAhGRqzCwtJN1dAUAujGwUBfzeEovLH1kOJRyGf5zuBQP/203LlUbpC6LiLoQBpZ2qjZY1q8oFTKoFHKJqyFyvV8NjcRns0aju58PDhZVYeqKn3DyYrXUZRFRF8HA0k7WHUIajq5QFzYqrgc2/HYsegX5obiqHg+symErfyJyiQ4FlpUrVyIuLg5qtRqJiYnYsWPHDc/ftm0bEhMToVar0bt3b7z33nstvr9mzRoIgtDq1dDQ0JHynOLKlmbuEKKuLS7YH1/+dixG9gpEdUMTZny0Bx/sOMMdRETkVHYHlqysLGRkZGDhwoXIy8tDamoqJk+ejMLCwjbPLygowN13343U1FTk5eXhxRdfxO9+9zusX7++xXkajQYlJSUtXmq1umOfygmsW5q78TlCROjhr8Rns0bjwRFRMIvAn785ioysfC7GJSKnsTuwvPPOO5g5cyZmzZqFhIQELFmyBNHR0Vi1alWb57/33nuIiYnBkiVLkJCQgFmzZuHJJ5/EW2+91eI8QRAQHh7e4nUjBoMBer2+xcuZagzc0kx0NZVCjrceGoJFUwZALhPwVf4FPLgqB0WX66QujYi8kF2BxWg0Ijc3F2lpaS2Op6WlIScnp8337Nq1q9X5kyZNwv79+9HY2Gg7VlNTg9jYWERFReHee+9FXl7eDWvJzMyEVqu1vaKjo+35KHbTswcLUSuCIOCJsXH4+6zRCPJX4kiJHr9avhM7TvJpz0TkWHYFlvLycphMJoSFhbU4HhYWhtLS0jbfU1pa2ub5TU1NKC+3LNaLj4/HmjVrsHHjRqxbtw5qtRpjx47FyZMnr1vLggULoNPpbK+ioiJ7PordrkwJcQ0L0bXG9A7C18+Nw5AoLSrrGjHjo71469vjaDKZpS6NiLxEhxbdCoLQ4mtRFFsdu9n5Vx8fM2YMHnvsMQwdOhSpqan44osv0L9/fyxbtuy611SpVNBoNC1ezsQut0Q3FtndF188k4xHRsVAFIHlP5zCI3/bjQtV9VKXRkRewK7AEhwcDLlc3mo0paysrNUoilV4eHib5ysUCgQFBbVdlEyGkSNH3nCExdWsa1i46Jbo+tQ+cmQ+MBjLHhmOAJUC+85W4u6lO5B95KLUpRGRh7MrsCiVSiQmJiI7O7vF8ezsbKSkpLT5nuTk5Fbnb9myBUlJSfDxaXt6RRRF5OfnIyIiwp7ynMoWWDjCQnRTU4ZG4pvfpWJIlBZVdY146pP9+NNXv3AXERF1mN1TQvPnz8cHH3yAjz76CEePHsW8efNQWFiI2bNnA7CsLZkxY4bt/NmzZ+PcuXOYP38+jh49io8++ggffvghfv/739vOeeWVV/Dtt9/izJkzyM/Px8yZM5Gfn2+7pjuobQ4s/hxhIWqXmCA//HN2CmaNiwNgeQ7R3Ut3IPdcpcSVEZEnsvvum56ejoqKCixevBglJSUYNGgQNm3ahNjYWABASUlJi54scXFx2LRpE+bNm4cVK1YgMjISS5cuxYMPPmg7p6qqCk8//TRKS0uh1WoxfPhwbN++HaNGjXLAR3SMK1NCbMtP1F5KhQwv3TsAt/YPwR/++TMKymvx0Hs5eGZ8H2RM6MfHXBBRuwmil7Sn1Ov10Gq10Ol0TlmAe9+Kn3CwqAp/m5GEiQPaXq9DRNenq2/EKxsP48u8YgBAfHgA3npoKAb11EpcGRFJqb33bz5LqJ2uTAnxX4REHaH19cE76cPw3mOJCPJX4lhpNX61fCf+/O8jtv++iIiuh4GlnWq5S4jIIe4aFI4t827FvUMiYBaBD3YWIO3d7fj+GHcSEdH1MbC0k7UPCwMLUecFdVNh+aMj8PF/jUTP7r4orqrHk2v2Y87fD+Ci3n0eekpE7oOBpR1EUUStkYGFyNFuvyUU2fNvxdO39oZcJuCbQyW4460fsfLHUzA0cQs0EV3BwNIO9Y0mmJuXJnNbM5Fj+SkVePHuBGx8diyGx3RHrdGEN/9zHGnvbseWw6Xwkn0BRNRJDCztYJ0OEgTAT8lFt0TOMDBSi/WzU/DOtKEIDVDhXEUdnv40F9M/3IujJc59GjsRuT8Glnaw9WBRKm74zCQi6hyZTMADI6Lww+9vw5zb+0Apl2HnqXLcvXQH5mXlo+hyndQlEpFEGFjaodZgmUvndBCRa/irFPifSfHYOn887hkcAVEENuQV4463f8SijYdxqdogdYlE5GIMLO1QbWgEwB4sRK4WE+SHFb8Zga+fHYfUfsFoNIlYk3MW4//yA9769jgqa41Sl0hELsLA0g7WEZZu6rYf1khEzjU4SotPZ47G2lmjMTS6O+qMJiz/4RTGvvE9Mjcd5YgLURfAwNIOtXyOEJFbSOkbjH/9NgXvPZaIgZEa1BlNeH/7GYx743ss2ngYJbp6qUskIidhYGkH66JbfyXXsBBJTRAE3DUoHP9+bhw+eiIJw6K7w9Bkxpqcs7j1zR/w318cxJEL3FVE5G14B24H2y4hNX9dRO5CEATcER+G228JxU+nKrD0+5PYW3AZ6w+cx/oD55HcOwgzx8XhjvhQyGTc3Ufk6XgHbgc+R4jIfQmCgHH9gjGuXzDyCivx4c4CbP6lFLvOVGDXmQrEBfvjiZReuH9ET2i4Do3IY/EO3A62KSEGFiK3NjwmEMsfDURxVT0+yTmLtXsLUVBeiz9tPIzXNx/Dr4ZG4pHRMRgapWVPJSIPwztwO/DBh0SepWd3Xyy4OwG/u7Mf/pl7Hp/uPodTZTXI2l+ErP1FGBChwSOjY3DfsEiOuhB5CN6B24EPPiTyTP4qBR5P6YUZybHYf64S6/YU4t+HSnCkRI+X//ULXv3mCNIGhOP+4T0xrl8wfOTch0DkrngHbocadrol8miCIGBkrx4Y2asH/jhlAL48UIx1ewtxsqwGGw9ewMaDFxDkr8SUoZGYOrwnp4yI3BDvwO3APixE3qO7nxJPjovDf43thUPFOmzIK8bXBy+gvMaINTlnsSbnLOKC/XHP4AjcNSgcAyM1DC9EboCBpR2urGHhXDeRtxAEAUOiumNIVHcsvDsBO0+V4195xfj28EUUlNdi+Q+nsPyHU4gK9MVdA8Nx16BwjIgJ5BZpIokwsLTDlV1CHGEh8kYKuQy33RKK224JRa2hCVuPXsR/finFj8cv4XxlPT7YWYAPdhYgJECFCQmW88b2Dea6NiIX4n9t7cBFt0Rdh79KgfuG9cR9w3qi3mjCthOX8O3hUmw9ehGXqg1Yt7cI6/YWwUduWRdz+y2huO2WEPQN7capIyIn4h34JkRRvDIlxE63RF2Kr1KOuwZZpoOMTWbknC7Hj8cv4YfjZThXUYec0xXIOV2BVzcdRc/uvhjXNxjJfYKQ3CcIYRq11OUTeRXegW/C0GRGk1kEwF1CRF2ZUnFl2mgRBqKgvBY/HCvDjycuYfeZChRX1dv6vABA72B/jOkThOTeQRjTOwghASqJPwGRZ+Md+CasO4QAPvyQiK6IC/ZH3Lg4PDkuDnXGJuw5c9nyOIDTFfjlgg5nymtxprwWa/cUArAEmOExgRgR2x0jYgLRPywAci7gJWo33oFvwrrg1tdHzv9zIaI2+SkVuD0+FLfHhwIAdHWN2FNQYQswx0qrbQFm/YHzACxr4oZGazEiJhAjYgIxqKeWozBEN8DAchN8UjMR2Uvr54O0geFIGxgOAKisNSKvqBIHzlXhQGElDhZVocbQhJ9OVeCnUxW294UGqDCopxYDIzUYGGn5MyrQl4t5icDAclO1zV1uuUOIiDoq0F+JO+LDcEd8GADAZBZx4mI1DhRaQkx+USXOlNeirNqA74+V4ftjZbb3an19MCBCg1vCA9A/LAD9wrqhf2gAtH7sC0VdC+/CN1HLHixE5GBymYCECA0SIjT4zehYAJb/rzlWqsfhC3r8UqzD4Qt6nLhYDV19o2Vq6UxFi2uEBKjQP6wb+oVaQkzfkG6IC/ZHSICKIzLklRhYbqLawB4sROR8/ioFEmN7IDG2h+2YscmMExerceSCHifLqnHiYg1OXqzGBV0DLlUbcKna0GJKCQD8lHLE9PBDXLA/YoP80SvID7FB/ogL9kdogIqdeslj8S58E7UMLEQkEaVChkE9tRjUU9vieHVDI06V1eBkmSXAnCyrwelLNSiurEed0YRjpdU4Vlrd5vV6dvdFZHd185++6Gl9BfoiXKuGSsHRZHJPvAvfxJUpIf6qiMg9BKh9MDwmEMNjAlscNzaZcb6yDucq6nC2ohZny2txtqIO5ypqUVRZD2OTGQXltSgor23zuoIAhHRTIaK7L0IDVM0vNUI1Lf8e5K+EQi5zxUclsuFd+CaqGzjCQkSeQamQoXdIN/QO6dbqe40mM0qqGlBcVY8LVfUt/rT+vaHRjLJqA8qqDTf8OTIB6OFvCTEhASr08Fci0E+JHv4+6OGvQg9/HwT6KRHUzXK8u5+SbSGo03gXvglOCRGRN/CRyxAT5IeYIL82vy+KIi7XGnGhqgElunpLcNE32AJMWXUDyvQGlNcYYBaB8hrL31Fy858tCEB3Xx8ENgcbjVoBja8PNGofaHwVzX+29bUCAWofKBUczaEOBpaVK1fiL3/5C0pKSjBw4EAsWbIEqamp1z1/27ZtmD9/Pg4fPozIyEj84Q9/wOzZs1ucs379erz88ss4ffo0+vTpg1dffRX3339/R8pzKOuDDzklRETeTBAEBHVTIaibCoOjtNc9z2QWUVFrQJneEmLKa4yorDXicl3zn7WNuFxrQGVdIy7XGqGrb4QoApV1jaisawTQ9nTUjah9ZOim8oG/Sg4/pQL+Sjn8VM1/KhXopmr5te08lRz+SgV8lXKofeRQK+RQ+chsf6oUMu6o8iB234WzsrKQkZGBlStXYuzYsXj//fcxefJkHDlyBDExMa3OLygowN13342nnnoKn332GX766Sf89re/RUhICB588EEAwK5du5Ceno7//d//xf33348NGzZg2rRp2LlzJ0aPHt35T9kJ1ikhBhYiIsuW7NAANUID1ACuH2ysmkzm5rBixOVaI6rqjNA3NEFf33jVn43Q1zc1/9mI6ubj1l2aDY1mNDQaUF7j2M8iCIBKIYNKIYfaR2YLNWofyzGV9ZiPHGqFDCofGXzkMijllj995DL4KIQWXysVMvjIrzp27ddyGZQK4cr75TIoZALkcgEKmQCZYPlTLhMYpq4hiKIo2vOG0aNHY8SIEVi1apXtWEJCAqZOnYrMzMxW5z///PPYuHEjjh49ajs2e/ZsHDx4ELt27QIApKenQ6/XY/PmzbZz7rrrLgQGBmLdunXtqkuv10Or1UKn00Gj0djzkW7ovz7eix+OX8KbDw7BtJHRDrsuERHdmMksoqbBEmRqjU2oNZhQa2hCXfPf64xNqDWaUGdoQs01X9cam1BnNKHG0IQGowkNTWY0NJrQ0GiC2a67nnTkzcFFIRMgF66EGssxme37tnOu+lN+zXkKmQCZTIBMgC0MyQXL17LmoCQXBMhkgEwQml9XfU8mQBCA6WNiERXY9rRiR7X3/m3XsIHRaERubi5eeOGFFsfT0tKQk5PT5nt27dqFtLS0FscmTZqEDz/8EI2NjfDx8cGuXbswb968VucsWbLkurUYDAYYDFcWhun1ens+SrtZO91yhIWIyLXkMgFaPx+HdvUVRRGNJhGGJlPzyI3J9verj135XvPXTSYYGs1oMpvRaBJhbDLDaDKjscmMRlPzMZP172Y0Nl3z9dXvsb3Pcs71mMwiTGYRRod9+s6bNDDc4YGlvey6C5eXl8NkMiEsLKzF8bCwMJSWlrb5ntLS0jbPb2pqQnl5OSIiIq57zvWuCQCZmZl45ZVX7Cm/QwQB8JEL7HRLROQFBEGAUiFAqZAhQC11NRZms4im5nDSZDbbgoqpxXERJrMZJjNs59i+ZxJhFq+c02S68h6zaPl+k9kMs2gJQaJo+b5ZBMyi5RyTufnvzcdNYsvzrH8P00j3S+vQsMG182qiKN5wrq2t8689bu81FyxYgPnz59u+1uv1iI52/JRN1jPJtnqIiIgcTSYToLRt++Y/jq/HrsASHBwMuVzeauSjrKys1QiJVXh4eJvnKxQKBAUF3fCc610TAFQqFVQq1z2KnYufiIiIpGPX5nalUonExERkZ2e3OJ6dnY2UlJQ235OcnNzq/C1btiApKQk+Pj43POd61yQiIqKuxe4pofnz52P69OlISkpCcnIyVq9ejcLCQltflQULFqC4uBiffPIJAMuOoOXLl2P+/Pl46qmnsGvXLnz44Yctdv/MnTsXt956K9544w3cd999+Oqrr7B161bs3LnTQR+TiIiIPJndgSU9PR0VFRVYvHgxSkpKMGjQIGzatAmxsZZHpJeUlKCwsNB2flxcHDZt2oR58+ZhxYoViIyMxNKlS209WAAgJSUFn3/+OV566SW8/PLL6NOnD7KysiTvwUJERETuwe4+LO7KWX1YiIiIyHnae//mAxqIiIjI7TGwEBERkdtjYCEiIiK3x8BCREREbo+BhYiIiNweAwsRERG5PQYWIiIicnsMLEREROT2GFiIiIjI7dndmt9dWRv26vV6iSshIiKi9rLet2/WeN9rAkt1dTUAIDo6WuJKiIiIyF7V1dXQarXX/b7XPEvIbDbjwoULCAgIgCAIDruuXq9HdHQ0ioqK+IwiJ+Lv2XX4u3YN/p5dg79n13Dm71kURVRXVyMyMhIy2fVXqnjNCItMJkNUVJTTrq/RaPgfgwvw9+w6/F27Bn/PrsHfs2s46/d8o5EVKy66JSIiIrfHwEJERERuj4HlJlQqFf70pz9BpVJJXYpX4+/Zdfi7dg3+nl2Dv2fXcIffs9csuiUiIiLvxREWIiIicnsMLEREROT2GFiIiIjI7TGwEBERkdtjYLmJlStXIi4uDmq1GomJidixY4fUJXmVzMxMjBw5EgEBAQgNDcXUqVNx/PhxqcvyepmZmRAEARkZGVKX4nWKi4vx2GOPISgoCH5+fhg2bBhyc3OlLsvrNDU14aWXXkJcXBx8fX3Ru3dvLF68GGazWerSPNr27dsxZcoUREZGQhAE/Otf/2rxfVEUsWjRIkRGRsLX1xe33XYbDh8+7JLaGFhuICsrCxkZGVi4cCHy8vKQmpqKyZMno7CwUOrSvMa2bdswZ84c7N69G9nZ2WhqakJaWhpqa2ulLs1r7du3D6tXr8aQIUOkLsXrVFZWYuzYsfDx8cHmzZtx5MgRvP322+jevbvUpXmdN954A++99x6WL1+Oo0eP4s0338Rf/vIXLFu2TOrSPFptbS2GDh2K5cuXt/n9N998E++88w6WL1+Offv2ITw8HBMnTrQ9z8+pRLquUaNGibNnz25xLD4+XnzhhRckqsj7lZWViQDEbdu2SV2KV6qurhb79esnZmdni+PHjxfnzp0rdUle5fnnnxfHjRsndRldwj333CM++eSTLY498MAD4mOPPSZRRd4HgLhhwwbb12azWQwPDxdff/1127GGhgZRq9WK7733ntPr4QjLdRiNRuTm5iItLa3F8bS0NOTk5EhUlffT6XQAgB49ekhciXeaM2cO7rnnHkyYMEHqUrzSxo0bkZSUhIceegihoaEYPnw4/va3v0ldllcaN24cvvvuO5w4cQIAcPDgQezcuRN33323xJV5r4KCApSWlra4L6pUKowfP94l90Wvefiho5WXl8NkMiEsLKzF8bCwMJSWlkpUlXcTRRHz58/HuHHjMGjQIKnL8Tqff/45Dhw4gH379klditc6c+YMVq1ahfnz5+PFF1/E3r178bvf/Q4qlQozZsyQujyv8vzzz0On0yE+Ph5yuRwmkwmvvvoqHnnkEalL81rWe19b98Vz5845/eczsNyEIAgtvhZFsdUxcoxnn30WP//8M3bu3Cl1KV6nqKgIc+fOxZYtW6BWq6Uux2uZzWYkJSXhtddeAwAMHz4chw8fxqpVqxhYHCwrKwufffYZ1q5di4EDByI/Px8ZGRmIjIzE448/LnV5Xk2q+yIDy3UEBwdDLpe3Gk0pKytrlS6p85577jls3LgR27dvR1RUlNTleJ3c3FyUlZUhMTHRdsxkMmH79u1Yvnw5DAYD5HK5hBV6h4iICAwYMKDFsYSEBKxfv16iirzX//zP/+CFF17Aww8/DAAYPHgwzp07h8zMTAYWJwkPDwdgGWmJiIiwHXfVfZFrWK5DqVQiMTER2dnZLY5nZ2cjJSVFoqq8jyiKePbZZ/Hll1/i+++/R1xcnNQleaU777wThw4dQn5+vu2VlJSE3/zmN8jPz2dYcZCxY8e22pZ/4sQJxMbGSlSR96qrq4NM1vIWJpfLua3ZieLi4hAeHt7ivmg0GrFt2zaX3Bc5wnID8+fPx/Tp05GUlITk5GSsXr0ahYWFmD17ttSleY05c+Zg7dq1+OqrrxAQEGAb0dJqtfD19ZW4Ou8REBDQal2Qv78/goKCuF7IgebNm4eUlBS89tprmDZtGvbu3YvVq1dj9erVUpfmdaZMmYJXX30VMTExGDhwIPLy8vDOO+/gySeflLo0j1ZTU4NTp07Zvi4oKEB+fj569OiBmJgYZGRk4LXXXkO/fv3Qr18/vPbaa/Dz88Ojjz7q/OKcvg/Jw61YsUKMjY0VlUqlOGLECG63dTAAbb4+/vhjqUvzetzW7Bxff/21OGjQIFGlUonx8fHi6tWrpS7JK+n1enHu3LliTEyMqFarxd69e4sLFy4UDQaD1KV5tB9++KHN/09+/PHHRVG0bG3+05/+JIaHh4sqlUq89dZbxUOHDrmkNkEURdH5sYiIiIio47iGhYiIiNweAwsRERG5PQYWIiIicnsMLEREROT2GFiIiIjI7TGwEBERkdtjYCEiIiK3x8BCREREbo+BhYiIiNweAwsRERG5PQYWInJbO3fuhI+PDwwGg+1YQUEBBEHAuXPnJKyMiFyNgYWI3FZ+fj4SEhKgUqlaHOvevTtiY2MlrIyIXI2BhYjc1sGDBzF8+PAWx/Lz8zF06FCJKiIiqTCwEJHbys/Px7Bhw1ocy8vLY2Ah6oIYWIjILZlMJhw+fLjVCMuBAwdahRgi8n4MLETklo4fP476+npERkbaju3atQvFxcUcYSHqghhYiMgt5efnAwCWLVuGkydPYvPmzZgxYwYAtNg1RERdAwMLEbml/Px8TJw4EQUFBRg0aBBefPFFvP7669BoNFixYoXU5RGRiwmiKIpSF0FEdK1JkyZhxIgRyMzMlLoUInIDHGEhIrd08OBBDBkyROoyiMhNMLAQkdspLS3FxYsXGViIyIZTQkREROT2OMJCREREbo+BhYiIiNweAwsRERG5PQYWIiIicnsMLEREROT2GFiIiIjI7TGwEBERkdtjYCEiIiK3x8BCREREbo+BhYiIiNze/wdSNDeQKr8aGQAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "mus = np.linspace(0,10,1000)\n", + "plt.plot(mus, scipy.stats.poisson.pmf(1,mus))\n", + "plt.xlabel(r\"$\\mu$\")\n", + "scipy.integrate.quad(lambda x: scipy.stats.poisson.pmf(1,x), 0, 2)" + ] }, { "cell_type": "markdown", @@ -831,17 +952,67 @@ "\n", "\n", "find $\\mu_+$, so that the integral from $[0,\\mu_+]$ is $0.6827$:\n", - " - define a function that returns the integral for a given $mu_+$\n", + " - define a function that returns the integral for a given $\\mu_+$\n", " - plot the function \n", " - use root finding with [scipy.optimize.brentq](https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.brentq.html) to find the value of $\\mu_+$ where the integral minus 0.6827 is 0." ] }, { "cell_type": "code", - "execution_count": null, - "id": "d2f27178", + "execution_count": 44, + "id": "9a142f1d", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "2.359784379558492" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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xbq6Oq1cuTIg34udcs+IJOXl5emuu+5STk6ORo4cqYULF6qoqEiTJ082u7Swcf/99+vVV1/VP/7xD8XFxTXuiUpISFB0dLTJ1YWPuLi4ZufhxMbGKikpifNzOtgjjzyiUaNGadasWbrtttu0bt06LVy4UAsXLjS7tLBy44036re//a0yMjJ0wQUXqKCgQHPmzNGPfvQjs0sLaVVVVdq9e3fj871796qwsFCJiYnKyMjQ1KlTNWvWLA0YMEADBgzQrFmzFBMTowkTJvi/OL9frxPEnnnmGaNPnz5GZGSkMXz4cC457WCSWvx56aWXzC4t7HFpr/+88847RlZWluFwOIyBAwcaCxcuNLuksFNRUWE8/PDDRkZGhhEVFWX069fPmDFjhuF0Os0uLaR99NFHLf6bfPfddxuG4bu899e//rWRmppqOBwO47LLLjO2bNkSkNoshmEY/o88AAAALeuU54wAAIDgQRgBAACmIowAAABTEUYAAICpCCMAAMBUhBEAAGAqwggAADAVYQQAAJiKMAIAAExFGAEAAKYijAAwxccffyy73S6n09k4tnfvXlksFu3fv9/EygAEGmEEgCkKCws1aNAgORyOJmNdu3ZVnz59TKwMQKARRgCYYvPmzbrwwgubjBUWFmro0KEmVQTALIQRAKYoLCzUsGHDmowVFBQQRoBOiDACIOA8Ho+2bt3abM/Ipk2bmgUUAOGPMAIg4L788kvV1NQoLS2tcWzt2rU6dOgQe0aATogwAiDgCgsLJUlPP/20du3apXfffVcTJ06UpCZX1wDoHAgjAAKusLBQY8eO1d69e5WVlaXHHntMv/vd7xQfH69nnnnG7PIABJjFMAzD7CIAdC7XXnuthg8frtmzZ5tdCoAgwJ4RAAG3efNmDRkyxOwyAAQJwgiAgCopKdGRI0cIIwAacZgGAACYij0jAADAVIQRAABgKsIIAAAwFWEEAACYijACAABMRRgBAACmIowAAABTEUYAAICpCCMAAMBUhBEAAGCq/x+CLf5btV/qfQAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def intervall(mu_plus):\n", + " return scipy.integrate.quad(lambda x: scipy.stats.poisson.pmf(1,x), 0, mu_plus)[0]\n", + "\n", + "mus = np.linspace(0,10,100)\n", + "plt.plot(mus, np.vectorize(intervall)(mus))\n", + "plt.grid()\n", + "plt.xlabel(r\"$\\mu$\")\n", + "\n", + "scipy.optimize.brentq(lambda x: intervall(x)-0.6827, 0,10)" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "8b9b9ed6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(0.593994150290162, 6.594659821447934e-15)" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [] }, { @@ -878,7 +1049,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 45, "id": "5fffd76e-14da-4854-8af0-5262e0c3c9a3", "metadata": { "slideshow": { @@ -886,7 +1057,16 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "naive: 13.757359312880716 22.242640687119284\n", + "symmetric in P: 13.599062608025005 22.185865296670393\n" + ] + } + ], "source": [ "def intervall_minus(mu):\n", " return scipy.integrate.quad(lambda x: scipy.stats.poisson.pmf(18,x), mu, 18)[0]\n", @@ -902,10 +1082,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 46, "id": "52f8f412-cb94-4c32-95b6-03f178cbcdb6", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "(0.6827000000000286, 7.579492589116262e-15)" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "scipy.integrate.quad(lambda x: scipy.stats.poisson.pmf(18,x), mu_minus, mu_plus)" ] @@ -925,7 +1116,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 47, "id": "e0a6084d-dd5d-4ffc-8849-a61a8327fb4e", "metadata": { "cell_style": "split", @@ -941,7 +1132,7 @@ "(0.8565084673723236, 4.724262071904028)" ] }, - "execution_count": 4, + "execution_count": 47, "metadata": {}, "output_type": "execute_result" } @@ -971,7 +1162,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 48, "id": "382e5a13-5f5f-44e5-90dd-7272fbdb171a", "metadata": { "cell_style": "split" @@ -1028,7 +1219,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 49, "id": "cb5826ae-29df-41c3-ad8f-dde61b5d90ba", "metadata": { "cell_style": "split" @@ -1040,7 +1231,7 @@ "(1.9999782866774654, 4.000021713322534)" ] }, - "execution_count": 6, + "execution_count": 49, "metadata": {}, "output_type": "execute_result" } @@ -1105,7 +1296,7 @@ "plt.plot(xs, xs-sigma, 'b.')\n", "plt.plot(xs, xs+sigma, 'r.')\n", "plt.xlabel(\"$x$\")\n", - "plt.ylabel(r\"$\\mu$\")\n", + "plt.yl abel(r\"$\\mu$\")\n", "plt.grid()\n", "\n", "print(limits[2])" @@ -1141,15 +1332,27 @@ "source": [ "## Confidence regions\n", "\n", - "Confidence values for Gaussian distribution and intervals: $[\\mu - z\\sigma, \\mu - z\\sigma]$:" + "Confidence values for Gaussian distribution and intervals: $[\\mu - z\\sigma, \\mu + z\\sigma]$:" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 50, "id": "580b83dc-3cb0-40df-bc77-8ad48d90fce5", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1 0.6826894921370859\n", + "2 0.9544997361036416\n", + "3 0.9973002039367398\n", + "4 0.9999366575163338\n", + "5 0.9999994266968562\n" + ] + } + ], "source": [ "def conv_gaus(z):\n", " return scipy.stats.norm.cdf(z) - scipy.stats.norm.cdf(-z)\n", @@ -1168,10 +1371,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 51, "id": "5a71ee06-db32-4349-a3da-ae0e394fbd74", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.68 0.9944578832101837\n", + "0.9 1.6448536269514868\n", + "0.95 1.9599639845401604\n", + "0.99 2.5758293035489013\n" + ] + } + ], "source": [ "for c in [0.68, 0.90, 0.95, 0.99]:\n", " print(c, scipy.optimize.brentq(lambda z: conv_gaus(z)-c,0, 10))" @@ -1196,10 +1410,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 52, "id": "73c11f8d-c8e4-4dc7-ad37-4ca4a33c55ea", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1 0.6826894921370859 0.4660649426743922 0.31817763901728086\n", + "2 0.9544997361036416 0.9110697462219214 0.8696158323408357\n", + "3 0.9973002039367398 0.9946076967722628 0.9919224588280288\n", + "4 0.9999366575163338 0.9998733190449377 0.9998099845855578\n", + "5 0.9999994266968562 0.9999988533940409 0.9999982800915544\n" + ] + } + ], "source": [ "def conv_gaus_nd(z, n):\n", " return np.power(scipy.stats.norm.cdf(z) - scipy.stats.norm.cdf(-z),n)\n", @@ -1224,10 +1450,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 53, "id": "7f14d38e-1e41-460e-9876-2afb62bed08b", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.68 0.9944578832101837 1.355121421071763 1.5521176915949972\n", + "0.9 1.6448536269514868 1.948821862507059 2.11405446879861\n", + "0.95 1.9599639845401604 2.236476644557793 2.387737887070821\n", + "0.99 2.5758293035489013 2.806225314687492 2.934161015263926\n" + ] + } + ], "source": [ "for c in [0.68, 0.90, 0.95, 0.99]:\n", " print(c, scipy.optimize.brentq(lambda z: conv_gaus_nd(z, 1)-c,0, 10), scipy.optimize.brentq(lambda z: conv_gaus_nd(z, 2)-c,0, 10), scipy.optimize.brentq(lambda z: conv_gaus_nd(z,3)-c,0, 10))" @@ -1243,10 +1480,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 54, "id": "702daac8-81e8-406c-b70f-c3146c58a493", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.6826894921370859 1.3602534296492095 1.5569757057024747\n", + "0.9544997361036416 2.273185951560801 2.422767471908681\n", + "0.9973002039367398 3.204960455845192 3.3198237010363014\n" + ] + } + ], "source": [ "for k in [1, 2, 3]:\n", " c = conv_gaus_nd(k, 1)\n", @@ -1475,10 +1722,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 56, "id": "75234801-341f-4474-a2bf-93aafe9add77", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "mu: 2.8300653594771243\n", + "P(H): 5.9616248936886925e-254\n", + "P(A): 4.088714274859846e-178\n", + "-ln P(H): 583.0712705433988\n", + "-ln P(A): 408.4519159905313\n" + ] + } + ], "source": [ "mu = np.mean(summe)\n", "print(\"mu:\", mu)\n", @@ -1506,10 +1765,10 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "ea6399fe", + "execution_count": 59, + "id": "0cca952a", "metadata": { - "cell_style": "split", + "cell_style": "center", "jupyter": { "source_hidden": true }, @@ -1519,7 +1778,18 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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rD4/KWA6vRk7dqw+/vhjPffcczLG6JNPPtHjjz+uSZMm2VWmY9LpTzgcVm5ubrtleXl5evPNNxWNRnu0PifFYjGtWLFCX3zxhU499dRO13nttddUUVHRbtnEiRO1Zs2aPt0bKb3+ZLPu9Ccej2v37t1d2pcndTnWICPi8bg555xzzGmnnZZyvYkTJ5pgMGgmTZpk3njjDfPss8+aoUOHmiuuuMKmSp2Rbn++bNu2bcbn85lHH320BytzXld689hjj5l/+7d/M36/30gy3/3ud00kErGhSuek2585c+aY4uJis2bNGhOPx83q1avNoYceaiSZbdu22VStfdavX28OOugg4/P5TL9+/cyzzz5ruW5ZWZm57bbb2i3761//2md7Y0zX+vNl2XIkpbv9McaYBQsWmAEDBphPPvmky89LSHHI9OnTzdChQ82WLVtSrldeXm5yc3PNv/71r+SyJ554wng8HtPS0tLTZTom3f58WVVVlRk4cKAJh8M9WJnz0u1NQ0ODGTx4sFmwYIF55513zAsvvGCOO+44c+WVV9pUqTPS7U9LS4u54oorjN/vNz6fz5SUlJhZs2YZSd3ambpdOBw277//vlm9erWZPXu2GTRokGloaOh03bKyMlNVVdVu2apVq4wks337djvKtV1X+vNl2RJSutufmpoak5+fb2pra7v1vIQUB1x33XVmyJAh5sMPP9zvupdeeqk58sgj2y3bsGGDkWQ2bdrUUyU6qiv92Ssej5uvf/3rprKysgcrc15XenPxxReb888/v92yV199tU+/G+7OaycSiZgtW7aYtrY2c++995qCggITi8V6sEp3OPPMM821117b6c9OP/10c/3117db9uSTTxq/39/nj8Ttlao/X5YtIeWr0unPihUrTF5envnzn//c7efhmhQbGWN03XXX6cknn9RLL72kYcOG7fd3xo0bp23btunzzz9PLtu0aZO8Xq+GDBnSk+Xarjv92auurk4ffPCBrrrqqh6s0Dnd6U1LS4u83vZ/4j6fL/l4fcmBvHYCgYCGDBkin8+nFStWaPLkyR361hcZYxQOhzv92amnnqra2tp2y1auXKnRo0crEAjYUZ7jUvUH++/PI488ossvv1w1NTUHdh1ct+MNuuyHP/yh6devn3n55ZfN9u3bk7cvn7aZPXu2ueSSS5L3d+/ebYYMGWLOP/9809DQYOrq6kxZWZm5+uqrndiEHtWd/ux18cUXmzFjxthZrq2605tly5YZv99v7r33XvOPf/zDrFq1yowePdqcfPLJTmxCj+pOfzZu3Ggeeughs2nTJvPGG2+Y733ve2bAgAGmsbHRgS3oWXPmzDGvvPKKaWxsNOvXrzc333yz8Xq9ZuXKlcaYjr358MMPTX5+vrnxxhvNhg0bzAMPPGACgYB5/PHHndqEHtXV/hhjzNq1a83atWvNqFGjzNSpU83atWvTOv3RG3W1PzU1Ncbv95t77rmn3d/jly9bSBchxUaSOr0tW7Ysuc5ll11mxo8f3+73/v73v5uzzjrL5OXlmSFDhpiZM2f2yetRutuff/3rXyYvL88sXbrU3oJt1N3e3H333eaYY44xeXl5ZvDgweaiiy4yH3/8sb3F26A7/dmwYYM54YQTTF5eniksLDRTpkwx7733nv3F2+DKK680Q4cONTk5OeaQQw4xZ555ZvIfGGM6f+28/PLL5sQTTzQ5OTnm8MMPN0uWLLG5avt0pz+dvd6GDh1qb+E26Wp/xo8f32l/Lrvssi4/t8eYPnbcFwAA9Al9/8QrAADolQgpAADAlQgpAADAlQgpAADAlQgpAADAlQgpAADAlQgpAADAlQgpAADAlQgpAFxl586dmjdvnrZv3+50KQAcxoyzAFzlkksu0c6dO+X3+/X00087XQ4AB3EkBYBrPPPMM/r888/15z//Wf3799cf/vAHp0sC4CCOpAAAAFfiSAoAAHAlQgoAAHAlQgoAV1i1apUCgYDC4XByWWNjozwejzZv3uxgZQCcQkgB4Arr1q3T8OHDFQwG2y3r37+/hg4d6mBlAJxCSAHgCu+8845OPPHEdsvWrVun448/3qGKADiNkALAFdatW6cTTjih3bK1a9cSUoAsRkgB4LhYLKaGhoYOR1LefvvtDsEFQPYgpABw3MaNG9Xa2qqSkpLkstdee01bt27lSAqQxQgpABy3bt06SdKiRYv0/vvv6/nnn9ell14qSe0+7QMguxBSADhu3bp1Ki8vV2Njo0aMGKGbb75Zt99+uwoLC3XPPfc4XR4AhzAtPgDHTZw4Ud/85jc1f/58p0sB4CIcSQHguHfeeUcjR450ugwALkNIAeCopqYmffLJJ4QUAB1wugcAALgSR1IAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIArEVIAAIAr/f8+hm1fY9Rg8gAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "#simuliere 1000 Spielzeiten\n", "muobs = np.mean(summe)\n", @@ -1539,10 +1809,10 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 60, "id": "90e27f87-36fd-4b11-add1-c82a4eeb79dd", "metadata": { - "cell_style": "split", + "cell_style": "center", "jupyter": { "source_hidden": true }, @@ -1551,7 +1821,18 @@ }, "tags": [] }, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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saPV5yQZr7/+enQfjY2NxtSpU41evXoZGRkZxpgxY4zPPvvMvP+UBRyp761pLbTQ98TF0/cnn3zSOPnkk4309HTjjDPOMJ577rmYfdD3xLXX9927dxs33HCDkZ+fb6Snpxunnnqq8fDDDxvhcDi6D/qeuLZ+fi9btiy6TjgcNu6//34jNzfX8Hq9xgUXXGB88MEHMfuh94lpr+/d+bvV8Z+CAAAAUprtrmkBAADWRGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBAACWQGgBoFGjRqmsrCzh7fbs2aPjjjtOn376abds9/3vf18LFy5MaJvuqiPZtQFoidACoMPmzp2rsWPHql+/ftFlF1xwgRwOhxwOhzwej0499VStWLEiru1uvPHGFp9jyZIlyszMVCgU0n333acHH3xQ9fX1rdZzww03aMaMGXHX0lodh2zcuFEej0fnn39+i+daq6O92gB0HqEFQIc0NjbqySef1E033RRdZhiGNm3apLlz52r37t3atm2bRowYoeuvv147duxod7shQ4a0+Dzr16/XGWecIZfLpUGDBqlfv3763e9+12K9cDisF154QePHj4+rltbq+LrbbrtNd911l95//30dfl/Z1uo4Um0AkoPQAqCFUaNG6bbbbtP06dPVq1cv5ebmqry8PGadl156SW63W9/61reiyz7++GPt379fI0aMUG5urgoLCzVr1iwFg0Ft3ry53e3aCi1fXz5u3Dj9/ve/b7HeW2+9JafTqWHDhsVVS2t1HLJixQode+yxmjJlivbv36/t27e3WKe1OtqqDUByEFoAtGr58uXq0aOH3nnnHS1YsEAPPPCAqquro8+vWbNGQ4cOjdlm/fr1cjgcGjRoUHTZF198IUnKyck54naHjqR8nc/n09atW2NCyznnnKN3331XPp8vZt1Vq1Zp7NixcjqdcdXSWh2SdPDgQc2aNUvz589X37591bNnT23atKnFeq3V0VZtAJKD0AKgVYMGDdL999+voqIiXXfddRo6dKj++te/Rp//9NNPlZ+fH7PNhg0bVFhYqOzsbEnSRx99pLvuukuDBw/WOeecc8TtQqGQMjMzo9egOBwOpaenKxgMxoSW448/Xj6fT7W1tTH7WLVqVfTUUDy1tFaHJD344IO65JJL1L9/f0nSgAEDWg0trdXRVm0AkoPQAhylysvLYwJAa4/33nuvze0PP+qRl5enurq66MeNjY1KT0+PWWf9+vX69NNP9Y1vfEPp6ekaPHiwBg4cqJdffjl6BKSt7b73ve9p48aNMY9Zs2YpPT1dAwYMiK6bkZEhSWpoaIgu+/DDD/XFF1/o4osvjruW1urYvn27li5dGnMqrLi4uNXQ0lodrS0DkDxuswsA0DWmTp2qq6666ojrtPaumUM8Hk/Mxw6HQ+FwOPpxnz59tHfv3ph1Nm7cqLvvvls33XSTMjMzlZeXJ4fDEbNOW9vNmTNHgwcPjln++OOPa9CgQXK7m39UffXVV5Kk//qv/4ouW7VqlUpKSqKhIZ5aWqvjjjvu0J49e9S3b9/osnA4rOOPP75Ff1qro7VlAJKH0AIcpfr06aM+ffp02f7PPPNMPf3009GPt2/frn//+98qKSnRySefnPB2Z511Vot1N2zY0OLi3C1btqhv374x/7fnn38+5l1A8dRyeB3V1dV66623tHHjxpiQtG7dOv3oRz/Snj171Lt37yPW0doyAMnD6SEAHTJ69Ght3bo1erTi0IWvrb0DqL3tnE5ni6Msh97lc/j+3nzzTZWWlkY/rqur07p16zRmzJjosnhq+XodwWBQt99+u+6++24NHjxYxcXF0cdFF10kSS1OER1eR1vLACQPoQVAh5x++ukaOnSo/vjHP0qKHBU5+eSTdcwxxyS8XVFRkb7xjW/ErLd161Y1NTXFHIFpamrSs88+q5tvvjm67C9/+YuGDRum4447Lrosnlq+XseiRYu0Z88eTZ06tcV6BQUFyszMjAktrdXR2jIAyeUwDp81CQDi9OKLL+quu+7Sli1bohfaduV2jz76qJ5//nlVVVVFl40bN04jRozQ9OnTE6o92XW0tgxAcnFNC4AO+853vqOPP/5Yu3btUkFBQZdv5/F4tGjRophlI0aM0NVXXx33PrqqjtaWAUgujrQAAABL4JoWAABgCYQWAABgCYQWAABgCYQWAABgCYQWAABgCYQWAABgCYQWAABgCYQWAABgCYQWAABgCf8PgXUxUEVS5K8AAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "dobs = -np.sum(scipy.stats.poisson.logpmf(summe,muobs)) + np.sum(scipy.stats.poisson.logpmf(summe,summe))\n", "plt.hist(d, bins=50)\n", @@ -1579,7 +1860,7 @@ { "cell_type": "code", "execution_count": null, - "id": "7c95a0bd", + "id": "147415f4", "metadata": { "cell_style": "split" }, @@ -1595,7 +1876,7 @@ { "cell_type": "code", "execution_count": null, - "id": "ba3ed8ad", + "id": "bcc2f650", "metadata": { "cell_style": "split" }, @@ -1645,7 +1926,7 @@ }, { "cell_type": "markdown", - "id": "35a1e7fb", + "id": "b4f420a2", "metadata": { "slideshow": { "slide_type": "slide" @@ -1667,14 +1948,14 @@ { "cell_type": "code", "execution_count": null, - "id": "98d0bf22", + "id": "178a5a0f", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", - "id": "c98a5d76", + "id": "c1fad78e", "metadata": { "slideshow": { "slide_type": "slide" @@ -1703,7 +1984,7 @@ }, { "cell_type": "markdown", - "id": "a3308e0c", + "id": "c6e21298", "metadata": { "slideshow": { "slide_type": "slide" @@ -1715,7 +1996,7 @@ }, { "cell_type": "markdown", - "id": "77ac4317", + "id": "7025eed5", "metadata": { "cell_style": "split" }, @@ -1725,18 +2006,18 @@ }, { "cell_type": "markdown", - "id": "7ccbe6c4", + "id": "f57f892c", "metadata": { "cell_style": "split" }, "source": [ - "For the $chi^2$ distribution:" + "For the $\\chi^2$ distribution:" ] }, { "cell_type": "code", "execution_count": null, - "id": "dd5422cc", + "id": "615690a9", "metadata": { "cell_style": "split" }, @@ -1752,7 +2033,7 @@ { "cell_type": "code", "execution_count": null, - "id": "46ed9110", + "id": "11c062dc", "metadata": { "cell_style": "split" }, @@ -1784,52 +2065,11 @@ { "cell_type": "code", "execution_count": null, - "id": "4e44dfe4", + "id": "13066eac", "metadata": {}, "outputs": [], "source": [] }, - { - "cell_type": "code", - "execution_count": null, - "id": "472aac93-e2dd-424a-ba0e-51c10d409f8e", - "metadata": { - "slideshow": { - "slide_type": "skip" - }, - "tags": [] - }, - "outputs": [], - "source": [ - "#simuliere 5000 Spielzeiten\n", - "muobs = 35\n", - "\n", - "tore = scipy.stats.poisson.rvs(muobs,size=(5000,306))\n", - "\n", - "d = np.zeros(len(tore))\n", - "mu = np.zeros(len(tore))\n", - "for i in range(len(tore)):\n", - " mu[i] = np.mean(tore[i,:])\n", - " d[i] = np.sum(-scipy.stats.poisson.logpmf(tore[i],mu[i]) + scipy.stats.poisson.logpmf(tore[i],tore[i]))\n", - " \n", - "plt.hist(mu, bins=50)\n", - "plt.grid()\n", - "plt.xlabel(\"$\\hat \\mu$\")\n", - "plt.show()\n", - "\n", - "plt.hist(2 * d, bins=50, density=True)\n", - "ds = np.linspace(200, 425, 100)\n", - "plt.plot(ds,scipy.stats.chi2.pdf(ds, 305))\n", - "plt.grid()\n", - "plt.xlabel(\"$-2\\ln(P(H)/P(A))$\")\n", - "plt.show()\n", - "\n", - "plt.hist( scipy.stats.chi2.sf(2*d, 305), bins=50)\n", - "plt.grid()\n", - "plt.xlabel(\"p\")\n", - "plt.show()" - ] - }, { "cell_type": "markdown", "id": "450edccb-2c13-4400-9613-4a1f3e069ce6", @@ -1854,7 +2094,7 @@ { "cell_type": "code", "execution_count": null, - "id": "dc09d56c", + "id": "be5a52e7", "metadata": { "slideshow": { "slide_type": "" diff --git a/lecture_3.ipynb b/lecture_3.ipynb index af5da11..18c09ec 100644 --- a/lecture_3.ipynb +++ b/lecture_3.ipynb @@ -132,53 +132,6 @@ "ys = scipy.stats.uniform.rvs(0,2,size=(1000,10))" ] }, - { - "cell_type": "code", - "execution_count": 49, - "id": "5981183c", - "metadata": { - "cell_style": "center", - "slideshow": { - "slide_type": "skip" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "(array([ 5., 13., 36., 114., 301., 327., 128., 55., 15., 6.]),\n", - " array([-0.46779215, -0.37579571, -0.28379928, -0.19180284, -0.09980641,\n", - " -0.00780997, 0.08418646, 0.1761829 , 0.26817933, 0.36017577,\n", - " 0.4521722 ]),\n", - " <BarContainer object of 10 artists>)" - ] - }, - "execution_count": 49, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", - "text/plain": [ - "<Figure size 640x480 with 1 Axes>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "import scipy\n", - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "#xs = ys\n", - "mu1 = np.mean(xs, axis=1)\n", - "mu2 = (np.max(xs, axis=1) + np.min(xs, axis=1))/2\n", - "plt.hist(mu1-1)\n", - "plt.hist(mu2-1)" - ] - }, { "cell_type": "markdown", "id": "05a58969", @@ -200,11 +153,13 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 118, "id": "4489a6f3", "metadata": {}, "outputs": [], - "source": [] + "source": [ + "#try again with `np.var`" + ] }, { "cell_type": "markdown", @@ -248,6 +203,14 @@ "This is `np.var(xs, ddof=1)` in *numpy*" ] }, + { + "cell_type": "code", + "execution_count": null, + "id": "bdca5aab", + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "markdown", "id": "4c42a0b2", @@ -283,7 +246,7 @@ }, { "cell_type": "code", - "execution_count": 52, + "execution_count": 94, "id": "55bf0cad-8a50-4831-8a37-daf9bcb39b71", "metadata": { "slideshow": { @@ -312,7 +275,7 @@ "def f(x):\n", " return 2*x + 1\n", "\n", - "n = 10\n", + "n = 10 \n", "xs = np.linspace(0,4,n)\n", "sigma_y=0.4\n", "ys = stats.multivariate_normal.rvs(f(xs), np.eye(n)*sigma_y**2, 1, random_state=42)\n", @@ -328,7 +291,7 @@ }, { "cell_type": "markdown", - "id": "d283b869", + "id": "7bcf9382", "metadata": { "slideshow": { "slide_type": "slide" @@ -360,8 +323,8 @@ }, { "cell_type": "code", - "execution_count": 58, - "id": "ea8ed323", + "execution_count": 92, + "id": "a5bf2c61", "metadata": { "cell_style": "split" }, @@ -372,7 +335,7 @@ "np.float64(6.712257050298824)" ] }, - "execution_count": 58, + "execution_count": 92, "metadata": {}, "output_type": "execute_result" } @@ -388,16 +351,20 @@ }, { "cell_type": "markdown", - "id": "e34c8317", - "metadata": {}, + "id": "719d7eb2", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, "source": [ "### Scan $\\chi^2$" ] }, { "cell_type": "code", - "execution_count": 67, - "id": "7aa7d079", + "execution_count": 93, + "id": "24f5aa80", "metadata": {}, "outputs": [ { @@ -426,7 +393,7 @@ }, { "cell_type": "markdown", - "id": "00e9d884", + "id": "c60129df", "metadata": { "slideshow": { "slide_type": "slide" @@ -439,7 +406,7 @@ { "cell_type": "code", "execution_count": 69, - "id": "272e9c69", + "id": "c99a5bfe", "metadata": { "cell_style": "split" }, @@ -464,7 +431,7 @@ { "cell_type": "code", "execution_count": 68, - "id": "85f66129", + "id": "3ac8c350", "metadata": { "cell_style": "split" }, @@ -557,7 +524,7 @@ }, { "cell_type": "markdown", - "id": "ff298bff", + "id": "4a662c3a", "metadata": { "slideshow": { "slide_type": "slide" @@ -570,7 +537,7 @@ { "cell_type": "code", "execution_count": 71, - "id": "2f96977f", + "id": "b261a378", "metadata": {}, "outputs": [ { @@ -598,7 +565,7 @@ }, { "cell_type": "markdown", - "id": "ccfc98b3", + "id": "8326e6aa", "metadata": {}, "source": [ "### Result plot" @@ -607,7 +574,7 @@ { "cell_type": "code", "execution_count": 82, - "id": "bc2406b4", + "id": "69f7f23f", "metadata": {}, "outputs": [ { @@ -634,7 +601,7 @@ }, { "cell_type": "markdown", - "id": "510615a5", + "id": "060476bf", "metadata": { "slideshow": { "slide_type": "fragment" @@ -671,7 +638,7 @@ }, { "cell_type": "markdown", - "id": "e0843cd2", + "id": "27fb63ff", "metadata": { "slideshow": { "slide_type": "" @@ -706,7 +673,7 @@ { "cell_type": "code", "execution_count": 72, - "id": "81650a70", + "id": "3fb345e7", "metadata": {}, "outputs": [ { @@ -729,7 +696,7 @@ }, { "cell_type": "markdown", - "id": "b914474b", + "id": "1f411636", "metadata": { "slideshow": { "slide_type": "slide" @@ -745,7 +712,7 @@ { "cell_type": "code", "execution_count": 78, - "id": "320c4340", + "id": "c3428ec5", "metadata": { "cell_style": "split" }, @@ -782,7 +749,7 @@ { "cell_type": "code", "execution_count": 79, - "id": "14ef3529", + "id": "c60a8d76", "metadata": { "cell_style": "split" }, @@ -803,8 +770,12 @@ }, { "cell_type": "markdown", - "id": "2dbb774c", - "metadata": {}, + "id": "645c90a0", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, "source": [ "### Error band for fitted line\n", "\n", @@ -816,7 +787,7 @@ { "cell_type": "code", "execution_count": 88, - "id": "f507dabf", + "id": "71d74760", "metadata": { "cell_style": "split" }, @@ -852,9 +823,13 @@ { "cell_type": "code", "execution_count": 89, - "id": "85d872e5", + "id": "4d49f5f2", "metadata": { - "cell_style": "split" + "cell_style": "split", + "scrolled": true, + "slideshow": { + "slide_type": "slide" + } }, "outputs": [ { @@ -882,12 +857,110 @@ "plt.show()" ] }, + { + "cell_type": "markdown", + "id": "dbeeaf78", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Can we avoid the large correlation between $\\hat m$ and $\\hat a$" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0936b292", + "metadata": {}, + "outputs": [], + "source": [ + "def fit2(ys):\n", + " p, V = opti.curve_fit(lambda x, m, a: m * (x - np.mean(xs)) + a, xs, ys, sigma=[sigma_y]*len(ys), absolute_sigma=True)\n", + " return p, V" + ] + }, + { + "cell_type": "code", + "execution_count": 210, + "id": "ccf42805", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(array([1.99378966, 5.17922444]),\n", + " array([[ 9.81818187e-03, -5.48506188e-11],\n", + " [-5.48506188e-11, 1.60000000e-02]]))" + ] + }, + "execution_count": 210, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fit2(ys[0])" + ] + }, + { + "cell_type": "markdown", + "id": "b4f07663", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Is this true?" + ] + }, + { + "cell_type": "code", + "execution_count": 215, + "id": "62222c23", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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heYGAAA4heYGAAA4heYGAAA4heYGAAA4pdeG+IVSUxXyuh7+ZA0/CqXaw66sogcOmupDxUX2QRqbTOW+bPWSpHxbGGF4z35bfa093OyQca1SqtvMY+Rut7382mxZdsp5334MHiqxbVNVan8LSd1h25HwYdvjpwQI8Tt0ri3MLn2rLXBNkg4Ot25hC1TM3XrAOoCahtoCFdP3HjKPEerf11Qf3bHTPEasBXk/t37PaG8IEICK4+LMDQAAcArNDQAAcArNDQAAcArNDQAAcArNDQAAcArNDQAAcArNDQAAcArNDQAAcEqvDfGLtrQo6vkxffxYC2fbgsTadu2O+RheSteDETs0NdvqW1uN9fY55XxiCys7VJJmH2OnbT8ajYF5oXZTuSQprcZYv92YLCipqcRWX/An24605Nh/Zsv7D9t+NBXZ3zusz3dqjS0Q02u1P+GZO2ptY3xqDwqU8T3By7aFF/oNAVIb48Aa/BeP7xm9CWduAACAU2huAACAU2huAACAU2huAACAU2huAACAU2huAACAU2huAACAU2huAACAU2huAACAU3ptQrEL/DgkWlrH8IpPso9Rvc+2QaoxcTjTnh4crrMlFGeYR5CaC20JpocKPVN93idRU70ktWXYxkg/YE/FTT9g+5kqbb8t2Td8KGyql6TmAttbYdaeNvMYKXW2JO7DJbak3oxd9uciSKqxlX/QloIcD6QBx06yJDNz5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADglaZqbsrIyeZ6nefPmnbBuxYoVOuOMM5SZmal+/fpp1qxZqqmpic8kAQBA0kuKEL+3335bixcv1umnn37CunXr1mnmzJn62c9+punTp2v37t265ZZb9L3vfU+rVq2K02yThzX8KJydHaOZfC5QYJcxlM9vaDTVhz49YKqXpPbBJab6SE2DeQzJ9nz0X2sLFmzNtYcXhtpsAXgtOfbAvMghW7hga67tbSoasQURSlLWblvAXjTF/nOhH7GtVfpe23HuNdn2QZKUYltbv9UWqCjJ/Ppu329/vcaaNZguCFeCBZNlPxJ+5qahoUHXXHONlixZoj59+pywdsOGDRoyZIjmzJmjoUOH6txzz9XNN9+sjRs3xmm2AAAg2SW8uZk9e7amTZumKVOmfGHtxIkTtWvXLq1evVq+72vv3r165plnNG3atONu09zcrLq6uk43AADgroQ2NytXrtS7776rsrKyLtVPnDhRK1as0JVXXqnU1FT17dtX+fn5euihh467TVlZmfLy8jpuAwcO7K7pAwCAJJSw5qaiokJz587Vr371K6Wnp3dpmy1btmjOnDn68Y9/rHfeeUcvvfSSduzYoVtuueW42yxYsEC1tbUdt4qKiu7aBQAAkIQ83/f9RAz83HPP6dJLL1U4/PlFdu3t7fI8T6FQSM3NzZ3+T5K++93v6vDhw3r66ac77lu3bp0mTZqkPXv2qF+/fl84bl1dnfLy8nSevqmIZ/x06R4uHhcUmz+xOwDzBcV98s1jWC8oDtfaLvaVpLZC2/Phtdk+wTnIBcWtxguE2zLsPx9ZLygOtdneooJcUGz95PEgFxRHmmyfJB46ZLswM1TbZKqXZL+g+NPY/2UqFxTjeNr8Vr2m51VbW6vc3NwT1ibsr6UuuOACbd68udN9s2bN0siRI/XDH/7wqMZGkpqamhSJdJ7ykboE9WgAACDJJKy5ycnJ0ejRozvdl5WVpcLCwo77FyxYoN27d2v58uWSpOnTp+umm27SY489pqlTp6qyslLz5s3TV7/6VZWWlsZ9HwAAQPJJipyb46msrNTOnTs7vr7++utVX1+vhx9+WHfeeafy8/N1/vnn61/+5V8SOEsAAJBMEnbNTaIEvebG+jvXZPz9aZDfG3vGbfw47HdogO0sXXTXnpiPESi8sLTYVN6em2Efw6gl13bNVOaHn5rHaBpRZKpPrbNdD2O9NkmSmgu69kcNR1gD9qQA18S0BAjMM4pW256/INevWYP/rNfUxeO9Nsh7ZzJ+D+jpLNfcJDznBgAAoDvR3AAAAKfQ3AAAAKfQ3AAAAKfQ3AAAAKfQ3AAAAKfQ3AAAAKfQ3AAAAKckdUJxMknGQKZ4fJhbe0NDzMcIF/Qx1VtD+bzsLFO9JPMHCnop9g8MjabYPqQystMWuHZ45Bd/kOzfChJOF+sxQk2xf+2lt9qC/wLNKcahfH5TgA/OtI7RaB/DGuxpfa91JZwU3YszNwAAwCk0NwAAwCk0NwAAwCk0NwAAwCk0NwAAwCk0NwAAwCk0NwAAwCk0NwAAwCk0NwAAwCkkFPdgvTU12ZouGiQZNrpjp6nePCdJ3p8rTfW+8fFT6pqNW9jnpADJzCHr85FqG8Ov3md7fEmecQwVFZrHUKttv31jfZDjvLcm9cYjeR2JxZkbAADgFJobAADgFJobAADgFJobAADgFJobAADgFJobAADgFJobAADgFJobAADgFEL8cELxCOVr33/AVG+dU5CAvVCffFO939hkHsOzBuAZ68N79tseX/agwCD8Jttaea3GdbIG8knyGxrN28R6DGtIZ5DXajIGgVq5sA+S/flzZb9jhTM3AADAKTQ3AADAKTQ3AADAKTQ3AADAKTQ3AADAKTQ3AADAKTQ3AADAKTQ3AADAKYT4oVslY7CUH2BO7Q0NpvpwdrZ5DL+11baBNSgwQJidVaDwwvw8U320+lNbfYDnO1JSbKo3P3cBxCOsUgQFJg3WqXtx5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiF5gYAADiFED+cUDyCpazBYMkYdhUkKDAa66DAFnvQnDm8sKCPeYxYh/IFCpo7cNC8jXmMGO+H9bkLIshrz4XXN3oeztwAAACn0NwAAACn0NwAAACn0NwAAACn0NwAAACn0NwAAACn0NwAAACn0NwAAACn0NwAAACnkFCMhIt1cqsrqarxSKC17rff0BijmXwuGZ+LeGA/gOA4cwMAAJxCcwMAAJxCcwMAAJxCcwMAAJxCcwMAAJxCcwMAAJxCcwMAAJxCcwMAAJxCiB96nFiH/gURZIxkDDeLx5zi8XzEWjg727xNrEMY43EMunKcw32cuQEAAE6huQEAAE6huQEAAE6huQEAAE6huQEAAE6huQEAAE5JmuamrKxMnudp3rx5J6xrbm7Wj370Iw0ePFhpaWk6+eST9ctf/jI+kwQAAEkvKXJu3n77bS1evFinn376F9ZeccUV2rt3r5YuXarhw4erurpabW1tcZglAADoCRLe3DQ0NOiaa67RkiVLdN99952w9qWXXtLatWu1fft2FRQUSJKGDBlywm2am5vV3Nzc8XVdXd2XnjO6lzUYzBoKRohYcol1cFw8gub8JDym4nGc81pCT5HwX0vNnj1b06ZN05QpU76w9te//rXGjh2r+++/X/3799eIESM0f/58HTp06LjblJWVKS8vr+M2cODA7pw+AABIMgk9c7Ny5Uq9++67evvtt7tUv337dq1bt07p6elatWqV9u3bp1tvvVX79+8/7nU3CxYs0B133NHxdV1dHQ0O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JBLs87173aeCJ4snn3xS+fn5+ta3vpXoqcTdli1bNGfOHP34xz/W1KlTVVlZqe9///u65ZZbtHTp0kRPLy7+6Z/+SVVVVRo/frx831dJSYmuv/563X///QqHw4me3pd222236f3339e6deu+sNbzvE5f+38JTf/b+3sayxq4LMg6lJeXa+HChXr++edVXFwcw9nFh3UN3njjDTU0NGjDhg266667NHz4cF199dUxnmXsdWUd2tvbNWPGDN17770aMWJE8MFsvy3D8chwzU00GvWHDx/uz5s3L7aTSoCurMO1117rX3755Z3ue+ONN3xJ/p49e2I4u/iwHAstLS1+RUWF39bW5j/66KN+Tk6O397eHtsJxthtt93mDxgwwN++ffsX1k6aNMmfM2dOp/ueffZZPxKJ+C0tLbGaYsxZ1uCvuXbNTZB1WLlypZ+RkeH/93//dwxnFj9Bj4Uj/vmf/9kfMWJEN88q/rq6DgcOHPAl+eFwuOPmeV7Hfb/73e+6NB5nbhJg7dq1+uijj3TjjTcmeioJ0dTUdNSpxiNnK/xe9lFnKSkpGjBggCRp5cqV+vrXv65QqGf+ttj3fd1+++1atWqVXnvtNQ0dOvQLt5kwYcJRfyH28ssva+zYsUpJSYnVVGMmyBq4KOg6lJeX64YbblB5eXmPvwavu44F3/fV3NzczbOLH+s65ObmavPmzZ3ue/TRR/Xqq6/qmWee6fI60tx8CQ0NDfroo486vt6xY4fee+89FRQUaNCgQVqwYIF27959VH7J0qVLNW7cOGd+D29dh+nTp+umm27SY4891vFrqXnz5umrX/2qSktLE7UbX4p1DT788EO99dZbGjdunA4cOKCf/vSn+sMf/qBly5Ylahe+tNmzZ+s///M/9fzzzysnJ0dVVVWSpLy8PGVkZEjSUetwyy236OGHH9Ydd9yhm266SevXr9fSpUtVXl6esP34MoKsgSS99957kj47jj799FO99957Sk1N1WmnnRb3fegOQdahvLxcM2fO1C9+8QuNHz++Y5uMjAzl5eUlZke+hCBr8Mgjj2jQoEEaOXKkpM9iMx544AHdfvvtidmJbmBdh1AodNT3xuLiYqWnp9u+Z36p80y93P/8z//4ko66XXfddb7v+/51113nT548udM2Bw8e9DMyMvzFixfHf8IxEmQdFi1a5J922ml+RkaG369fP/+aa67xd+3aFf/JdxPrGmzZssU/88wz/YyMDD83N9f/5je/6f/pT39KzOS7ybH2X5L/xBNPdNQc61h47bXX/LPOOstPTU31hwwZ4j/22GPxnXg3CroGx9pm8ODBcZ17dwqyDpMnTz7ha6inCbIGixYt8keNGuVnZmb6ubm5/llnneU/+uijPfpX1UFfE38tyJ+Ce38ZHAAAwAk985f7AAAAx0FzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzAwAAnEJzA6DHOu+883T77bdr3rx56tOnj0pKSrR48WI1NjZq1qxZysnJ0cknn6zf/OY3iZ4qgDiiuQHQoy1btkwnnXSS3nrrLd1+++36+7//e33nO9/RxIkT9e6772rq1Kn67ne/q6ampkRPFUCc8KngAHqs8847T+3t7XrjjTckSe3t7crLy9O3v/1tLV++XJJUVVWlfv36af369Ro/fnwipwsgTjhzA6BHO/300zv+HQ6HVVhYqDFjxnTcV1JSIkmqrq6O+9wAJAbNDYAeLSUlpdPXnud1us/zPElSNBqN67wAJA7NDQAAcArNDQAAcArNDQAAcAp/LQUAAJzCmRsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOAUmhsAAOCU/w+ISCmRfzZRZQAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[ 0.00981114 -0.00027401]\n", + " [-0.00027401 0.01656427]]\n" + ] + } + ], + "source": [ + "p = np.zeros((len(ys),2))\n", + "chi2s = np.zeros(len(ys))\n", + "for i in range(len(ys)):\n", + " p[i] = fit2(ys[i])[0]\n", + " chi2s[i] = np.sum(((ys[i] - p[i,0] * xs - p[i,1])/sigma_y)**2)\n", + " \n", + "plt.hist2d(p[:,0], p[:,1],bins=(40,40))\n", + "plt.xlabel(\"m\")\n", + "plt.ylabel(\"a\")\n", + "plt.show()\n", + "print(np.cov(p, rowvar=False))" + ] + }, { "cell_type": "markdown", "id": "424bdd1f-53bf-422b-bc4a-0702231b976d", "metadata": { "slideshow": { - "slide_type": "" + "slide_type": "slide" }, "tags": [] }, @@ -904,207 +977,1309 @@ }, { "cell_type": "markdown", - "id": "e89f415e-8836-4b97-893c-a7335c3a21e5", + "id": "952ccb17-cf14-4561-ad21-acc50b72cf73", "metadata": { "slideshow": { - "slide_type": "" - }, - "tags": [] + "slide_type": "slide" + } }, "source": [ - "### Beispiel in Jupyter \n", + "### Minimal $chi^2$\n", "\n", - "## In Python" + "$\\chi^2 = (\\sum_i \\frac{1}{\\sigma_i^2}) V(y) ( 1- \\rho^2_{xy})$" ] }, { - "cell_type": "markdown", - "id": "7311c0ff-0ce0-4427-a50e-b6698100e454", - "metadata": { - "slideshow": { - "slide_type": "" - }, - "tags": [] - }, + "cell_type": "code", + "execution_count": 101, + "id": "348c5655-6356-4e5b-8f88-f4cbbd4739f7", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4.700741203958122\n" + ] + } + ], "source": [ - "### Mit Python I\n", - "\n", - "Mit scipy.optimize:\n", - "\n", - "```\n", - "import scipy.optimize as opti\n", - "def fitf(x, m , a):\n", - " return m*x + a\n", - "pfit, Vfit = opti.curve_fit(fitf , xs, ys, \n", - " sigma=[sigma_y]*len(ys),absolue_sigma=True)\n", - "print(pfit, Vfit)\n", - "```\n", - "\n", - "Vorsicht! Falsche Unsicherheit ohne `absolute_sigma=True`" + "print(len(ys)/(sigma_y*sigma_y)*np.var(ys)*(1-np.corrcoef(xs,ys)[0,1]**2))" ] }, { "cell_type": "markdown", - "id": "a5fec52e-bd3a-4437-bb43-620de44939b2", - "metadata": { - "slideshow": { - "slide_type": "" - }, - "tags": [] - }, + "id": "e6df3805-e62d-4cba-ba9f-1f0c2f187d55", + "metadata": {}, "source": [ - "### Mit Python II\n", - "\n", - "Mit scipy.optimize:\n", - "\n", - "```\n", - "def chi2(x, y, sy, a, m):\n", - " my = m * x + a\n", - " r = (y - my)/sy\n", - " return np.sum(r**2)\n", - " \n", - "res = opti.minimize( lambda p: chi2(xs, ys, sigma_y, p[1], p[0]),x0=np.zeros(2))\n", - "print(res.x, res.hess_inv*2)\n", - "```" + "$\\chi^2 =\\sum \\frac{(y_i -\\hat m x - \\hat a)^2}{\\sigma_i^2}$" + ] + }, + { + "cell_type": "code", + "execution_count": 96, + "id": "ec6c4161-50dd-475b-8f0f-d02eb9f18cfe", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "np.float64(4.700741203958064)" + ] + }, + "execution_count": 96, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.sum(((ys - (xs * mhat + ahat))/sigma_y)**2)" ] }, { "cell_type": "markdown", - "id": "84b00301-c0d3-4595-858e-4f784d69c876", + "id": "38237122", "metadata": { "slideshow": { "slide_type": "slide" - }, - "tags": [] + } }, "source": [ - "### Inverse Hesse-Matrix und $\\chi^2$ \n", + "### $m$ and $a$ values on error ellipse\n", "\n", - "$\\Delta \\chi2$ und Kovarianz Ellipse um Minimum gemäß Kovarianzmatrix\n", - "genau bei $\\Delta \\chi^2 = 1$. \n", - "$$1 = \\delta \\chi^2 = (\\vec a -\\hat \\vec a)^T V^{-1} (\\vec a-\\hat \\vec a)$$\n", - "Mit\n", - "$\\chi^2(\\vec a) = \\chi^2(\\hat \\vec a) + (\\vec a -\\hat \\vec a)^T V^{-1} (\\vec a-\\hat \\vec a)$\n", - "und\n", - "$H_{ij} = \\frac{\\partial^2 \\chi^2(\\vec a)}{\\partial a_i \\partial a_j}$ \n", - "$$H_{ij} = \\frac{\\partial^2 (a_k -\\hat a_k) V^{-1}_{kl} (a_l -\\hat a_l)}{\\partial a_i \\partial a_j} = \\frac{\\partial( \\delta_{ik}V^{-1}_{kl} (a_l -\\hat a_l) + (a_k -\\hat a_k) V^{-1}_{kl} \\delta_{il})}{\\partial a_j}$$\n", - "$$H_{ij} = \\delta_{ik}V^{-1}_{kl}\\delta_{lj} + \\delta_{jk}V^{-1}_{kl}\\delta_{il} = 2V^{-1}_{ij} \\text{ und } V_{ij} = 2 * H^{-1}_{ij}$$\n", - "\n", - "Vorsicht! Manche Algorithmen in `minimize` berechnen keine inverse\n", - "Hesse-Matrix." + "$v = (m, a)$; $(v-\\hat v)V_{am}^{-1}(v - \\hat v)^T=1$" ] }, { - "cell_type": "markdown", - "id": "632583d4-1e97-498b-b8f3-91e259baa24d", + "cell_type": "code", + "execution_count": 111, + "id": "4ce59d00", "metadata": { - "slideshow": { - "slide_type": "slide" - }, - "tags": [] + "cell_style": "center" }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "13.607587603481903 5.179224444679503 1.9999999999999996 5.629629629629629\n", + "1.9937896654845055 1.191645113710492\n" + ] + } + ], "source": [ - "# Maximum-Likelihood \n", - "\n", - "Maximum-Likelihood (ML) Daten: $x_1,...,x_N$ \n", - "Wahrscheinlichkeit der Daten für Modell mit Parametern $a$:\n", - "$$P(x_1,...,x_N; a) = \\prod_i P(x_i ; a)$$\n", - "\n", - "Likelihoodfunktion: $$L(a) = \\prod_i P(x_i ; a)$$\n", + "import scipy.optimize as opti\n", "\n", - "ML-Schätzer $\\hat a$: Maximum von $L(a)$:\n", - "$$\\left.\\frac{dL}{da}\\right|_{a = \\hat a} = 0$$ (praktischer:\n", - "Log-Likelihood: $-\\ln L = \\sum_i -\\ln P(x_i; a)$)" + "sum_xy = (np.linalg.inv(J.T@W@J)@(J.T@W@(xs*ys)))[0]\n", + "sum_y = (np.linalg.inv(J.T@W@J)@(J.T@W@(ys)))[0]\n", + "sum_x = (np.linalg.inv(J.T@W@J)@(J.T@W@(xs)))[0]\n", + "sum_x2 = (np.linalg.inv(J.T@W@J)@(J.T@W@(xs*xs)))[0]\n", + "print(sum_xy, sum_y, sum_x, sum_x2)\n", + "mhat = (sum_xy - sum_x*sum_y)/(sum_x2-sum_x*sum_x)\n", + "ahat = (sum_y*sum_x2 - sum_x*sum_xy)/(sum_x2-sum_x*sum_x)\n", + "print(mhat, ahat)\n" ] }, { - "cell_type": "markdown", - "id": "dd0afbf7-8504-46f8-b3da-4fb33487a635", + "cell_type": "code", + "execution_count": 112, + "id": "ad83e252", "metadata": { - "slideshow": { - "slide_type": "slide" - }, - "tags": [] + "cell_style": "center" }, + "outputs": [], "source": [ - "### Beispiel\n", - "\n", - "\n", - "$y(x) = mx + a$: Finde $\\hat m$ und $\\hat a$ Daten: $y_1,...,y_N$ und\n", - "Modell: $$P(y_i; m, a) = G(y_i; \\mu = m x_i + a, \\sigma=\\sigma_i)$$\n", - "$$L(m, a) = \\prod_i G(y_i; \\mu = m x_i + a, \\sigma=\\sigma_i)$$\n", - "\n", - "0.5 <img src=\"./figures/11/line.png\" alt=\"image\" />\n", + "sum_siginv = sigma_y*sigma_y/len(ys)\n", + "V_am = np.array([[sum_siginv/(sum_x2-sum_x*sum_x), -sum_siginv*sum_x/(sum_x2-sum_x*sum_x)],\n", + " [-sum_siginv*sum_x/(sum_x2-sum_x*sum_x), sum_siginv*sum_x2/(sum_x2-sum_x*sum_x)]])\n", "\n", - "<img src=\"./figures/11/like_a.png\" style=\"width:49.0%\"\n", - "alt=\"image\" />\n", - "<img src=\"./figures/11/loglike_a.png\" style=\"width:49.0%\"\n", - "alt=\"image\" />\n", + "def a_from_m(m, ahat, mhat, V):\n", + " Vinv = np.linalg.inv(V)\n", + " a = opti.newton(lambda a: (np.array([m - mhat, a - ahat])@Vinv@np.array([[m - mhat], [a - ahat]]))[0]-1,ahat+2)\n", + " return a\n", "\n", - "ML-Schätzer für Poisson $\\mu$ $$\\begin{aligned}\n", - " L(\\mu) & = & \\prod_i^N P(k_i; \\mu) = \\prod_i^N \\frac{\\mu^{k_i}e^{-\\mu}}{k_i!}\\\\\n", - " \\ln L(\\mu) & = & \\sum_{i=1}^N \\left( \\ln \\mu^{k_i} + \\ln e^{-\\mu} - \\ln k_i!\\right)\\\\\n", - " & = & \\sum_{i=1}^N \\left( k_i \\ln \\mu -\\mu - \\ln k_i!\\right)\\\\\n", - " 0 \\stackrel{!}{=} \\frac{d \\ln L(\\mu)}{d\\mu} \\Big|_{\\hat \\mu}& = & \\sum_{i=1}^N \\left( \\frac{k_i}{\\hat \\mu} - 1\\right) = \\sum_{i=1}^N \\frac{k_i}{\\hat\\mu} - N\\\\\n", - " N & = & \\frac{1}{\\hat\\mu} \\sum_{i=1}^N k_i \\rightarrow \\hat\\mu = \\frac{1} {N} \\sum_{i=1}^N k_i\n", - " \n", - "\\end{aligned}$$" + "def a_from_m2(m, ahat, mhat, V):\n", + " Vinv = np.linalg.inv(V)\n", + " a = opti.newton(lambda a: (np.array([m - mhat, a - ahat])@Vinv@np.array([[m - mhat], [a - ahat]]))[0]-1,ahat-2)\n", + " return a" ] }, { "cell_type": "markdown", - "id": "d9571970-772e-4e95-8474-82e0afb1dd68", + "id": "e1bdf074", "metadata": { "slideshow": { - "slide_type": "" - }, - "tags": [] + "slide_type": "slide" + } }, "source": [ - "Varianz des ML-Schätzers\n", - "\n", - "Rao-Cramér-Frechet-Ungleichung: Schätzer $\\hat a$ mit Bias (Verzerrung)\n", - "$b$\n", + "### The ellipse" + ] + }, + { + "cell_type": "code", + "execution_count": 202, + "id": "a5225373", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[<matplotlib.lines.Line2D at 0x14d774c40>]" + ] + }, + "execution_count": 202, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "a_from_m(mhat, ahat, mhat, V_am)\n", + "m_axis = np.linspace(mhat-np.sqrt(V_am[0,0]),mhat+np.sqrt(V_am[0,0]),100)\n", + "plt.plot(m_axis, np.vectorize(a_from_m, excluded=[3])(m_axis, ahat, mhat, V_am))\n", + "plt.plot(m_axis, np.vectorize(a_from_m2, excluded=[3])(m_axis, ahat, mhat, V_am))\n" + ] + }, + { + "cell_type": "markdown", + "id": "c9f4436b", + "metadata": {}, + "source": [ + "### 2-D multivariate normal distribution\n", + "\n", + "$$\\vec\\mu = (\\bar x, \\bar y) \\text{ und } C = \\left( \n", + " \\begin{array}{rr} \n", + " \\sigma_x ^2 & \\rho \\sigma_x \\sigma_y \\\\ \n", + " \\rho \\sigma_x \\sigma_y & \\sigma_y^2\\\\ \n", + " \\end{array} \\right)$$\n", + "\n", + "<img src=\"./figures/10/error_elipse.png\" width=\"70%\" alt=\"image\" />" + ] + }, + { + "cell_type": "markdown", + "id": "a31ff98e", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### $\\chi^2$ values on contour" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "id": "11909eb4", + "metadata": { + "slideshow": { + "slide_type": "-" + } + }, + "outputs": [ + { + "data": { + "image/png": "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771hnixyVVVVqba2NuB90W63a/DgwW32vhjWbzM2xddff63m5uYWX1SYnJzc4gsNETyWZamwsFCDBg1SRkZGuMeJOKtXr9a+fftUUVER7lEi1ldffaVFixapsLBQzz77rD766CP95je/kd1u1+OPPx7u8SLGjBkz5PF4dPPNNysqKkrNzc364x//qEceeSTco0Wsi+99l3pfPHbsWJvMQKD8F5vNFnDbsqwW+xA8U6ZM0aeffqqdO3eGe5SIU11draefflqbN29Wx44dwz1OxLpw4YL69u2r4uJiSVLv3r116NAhLVq0iEAJojVr1mjFihVatWqVevToof3796ugoEAul0t5eXnhHi+ihfN9kUCRlJiYqKioqBZnS+rq6lrUI4Jj6tSp2rBhg3bs2KFu3bqFe5yIs3fvXtXV1SkzM9O/r7m5WTt27FBpaal8Pp+ioqLCOGFkSElJ0S9+8YuAfbfccov++te/hmmiyPS73/1OM2fO1NixYyVJPXv21LFjx1RSUkKghIjT6ZT03ZmUlJQU//62fF/kGhRJMTExyszMVFlZWcD+srIyDRgwIExTRSbLsjRlyhStXbtWW7duVVpaWrhHikhDhw7VgQMHtH//fv/Wt29fjR8/Xvv37ydOgmTgwIEtPib/xRdfhP1LTyPNN998o5/9LPDtKioqio8Zh1BaWpqcTmfA+2JTU5PKy8vb7H2RMyj/p7CwUI899pj69u2rO+64Q4sXL9bx48f15JNPhnu0iJKfn69Vq1bpnXfeUVxcnP+slcPhUGxsbJinixxxcXEtruvp3LmzunTpwvU+QfTb3/5WAwYMUHFxscaMGaOPPvpIixcv1uLFi8M9WkTJzc3VH//4R3Xv3l09evTQxx9/rIULF2rixInhHq1da2ho0JEjR/y3q6qqtH//fiUkJKh79+4qKChQcXGx0tPTlZ6eruLiYnXq1Enjxo1rmwHb5LNC7cSf/vQnKzU11YqJibH69OnDR19DQNIltyVLloR7tIjHx4xD491337UyMjIsu91u3XzzzdbixYvDPVLE8Xq91tNPP211797d6tixo3XjjTdas2bNsnw+X7hHa9e2bdt2yf8e5+XlWZb13UeNZ8+ebTmdTstut1t33XWXdeDAgTabz2ZZltU2KQQAAPDDcA0KAAAwDoECAACMQ6AAAADjECgAAMA4BAoAADAOgQIAAIxDoAAAAOMQKAAAwDgECgAAMA6BAgAAjEOgAAAA4xAoAADAOP8LgEzpDm7q2nQAAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "chi2s_on_cont = np.zeros(2*len(m_axis))\n", + "for i in range(len(m_axis)):\n", + " m = m_axis[i]\n", + " a = a_from_m(m, ahat, mhat, V_am)\n", + " chi2s_on_cont[2*i] = np.sum(((ys - (xs * m + a))/sigma_y)**2)\n", + " a = a_from_m2(m, ahat, mhat, V_am)\n", + " chi2s_on_cont[2*i+1] = np.sum(((ys - (xs * m + a))/sigma_y)**2)\n", + " #print(a, m , chi2s_on_cont[2*i], chi2s_on_cont[2*i+1])\n", + "\n", + " \n", + "plt.hist(chi2s_on_cont,range=(0,10), bins=50)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "73e034e9", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### $\\Delta \\chi^2$ values on contour" + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "id": "46dc2732", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1.00000000000085\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "delta_chi2 = chi2s_on_cont - np.sum(((ys - (xs * mhat + ahat))/sigma_y)**2)\n", + "plt.hist(delta_chi2,range=(-2,2), bins=50)\n", + "print(np.mean(delta_chi2))" + ] + }, + { + "cell_type": "markdown", + "id": "8bc47787", + "metadata": {}, + "source": [ + "with $v = (m, a)$\n", + "$$(v-\\hat v)V_{am}^{-1}(v - \\hat v)^T=1 = \\Delta \\chi^2$$" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "id": "ca2b732f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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W1//+td1yy236L/+67+6HuPqex7m2CXz3/OtW7fqlltu0QsvvKDNmzfr2LFjmj17ttrb2wd8TnNzs6699lrNmjVLjY2N+tKXvqRly5bpySef7HqM6e97Vsctufmed3R06KyzztKXv/xlTZ48ud/HuPiehzluyfz3PLbAcZKCDRs2VHzMP/7jPwbnnntur8+tXr06GD9+fNc/z58/P/iDP/iDXo+ZM2dOcOONN6b2WtOW1rE/8sgjQV1dXQavMBthjnv69OnBnXfe2etzt99+ezBz5syuf3b1PQ9z7La950EQBIcOHQokBVu3bh3wMV/4wheCiy66qNfn/uqv/iqYNm1a1z/b9r6nddyuvuc9XXXVVcHtt9/e5/Muvuc9DXTcNr7nYTk5uYlqxowZevvtt7Vp0yYFQaCDBw/qiSee0HXXXdf1mB07dmj27Nm9njdnzhw9//zzeb/cVIU5dkk6cuSIJkyYoPHjx+tTn/qUGhsbC3rF6ejo6Ojz28mIESP04x//WB988IEkd9/zMMcu2feet7a2SpLOOOOMAR8z0Hu6c+dOa9/3tI5bcvM9D8PF9zws297zsIgbdf6AX7dunRYsWKBhw4bp7LPP1mmnnab77ruv6zEHDhzQmDFjej1vzJgxOnDgQN4vN1Vhjv2iiy7So48+qqeeekrr16/X8OHDNXPmTL322msFvvJk5syZo+9+97vatWuXgiDQzp07tXbtWn3wwQd69913Jbn7noc5dtve8yAItHz5cl155ZW65JJLBnzcQO/psWPHrHzf0zxuV9/zMFx8z8Ow7T2PgriRtGfPHi1btkwrV67Url279PTTT6u5uVlLly7t9bhSqdTrn4Mg6PM524Q59mnTpukzn/mMJk+erFmzZuk//uM/dMEFF/QKINv83d/9nf7wD/9Q06ZN09ChQ3X99dfr5ptvliQNGTKk63Euvudhjt229/zWW2/VT3/6U61fv37Qx/b3np78eVve9zSP2+X3PAwX3/PB2PaeR0HcqHMn+syZM3XXXXfp0ksv1Zw5c3T//fdr7dq1amlpkSSdffbZfSr+0KFDfWrfNmGO/WRVVVW64oorrK77ESNGaO3atTp69KjefPNN7du3T+ecc45GjRqlM888U5K773mYYz+Zye/5bbfdpqeeeko//OEPNX78+IqPHeg9ra6u1ujRoys+xrT3Pe3jPpkr73kYLr7ncZj8nkdF3Eg6evSoqqp6/6so/wZb/u1m+vTp2rx5c6/HPPPMM5oxY0Y+LzIjYY79ZEEQqKmpSWPHjs389WVt6NChGj9+vIYMGaJ///d/16c+9amufx+uvudllY79ZCa+50EQ6NZbb9UPfvADPfvss5o4ceKgzxnoPZ06daqGDh1a8TGmvO9ZHXd/38eF9zwMF9/zuN/HtPc8tvz2Lufn8OHDQWNjY9DY2BhICr71rW8FjY2NwVtvvRUEQRB88YtfDBYtWtT1+EceeSSorq4O7r///uD1118Ptm/fHkydOjX4vd/7va7HPPfcc8GQIUOCb3zjG8HevXuDb3zjG0F1dXXwwgsv5H58lWRx7F/72teCp59+Onj99deDxsbGYMmSJUF1dXXw4osv5n58A4l63K+++mrwb//2b8EvfvGL4MUXXwwWLFgQnHHGGUFzc3PXY1x9z8Mcuw3v+ec+97mgrq4u2LJlS9DS0tL1cfTo0a7HnHzsb7zxRjBy5Mjgb/7mb4I9e/YEDz/8cDB06NDgiSee6HqM6e97Vsft6nseBEHXn48pU6YECxcuDBobG4Pdu3d3/f8uvudBMPhx2/Cex+Vk3Pzwhz8MJPX5uOmmm4IgCIKbbropuOqqq3o9Z/Xq1cHFF18cjBgxIhg7dmzwZ3/2Z8Hbb7/d6zGPP/54cOGFFwZDhw4NLrroouDJJ5/M6YjCy+LY77jjjuAjH/lIMGzYsOCss84KZs+eHTz//PM5HtXgoh73nj17gssuuywYMWJEUFtbG1x//fXBK6+80ufruviehzl2G97z/o5ZUvDII490Paa//963bNkSNDQ0BMOGDQvOOeec4IEHHujztU1+37M6bpff8/6eM2HChF6PcfE9H+y4bXjP4yoFwQBrDwAAABZizw0AAHAKcQMAAJxC3AAAAKcQNwAAwCnEDQAAcApxAwAAnELcAAAApxA3AADAKcQNAABwCnEDAACcQtwAAACnEDcArHX11Vfrtttu0x133KHTTz9dY8aM0UMPPaT29nYtWbJEo0aN0nnnnaf//u//LvqlAsgRcQPAav/6r/+qM888Uz/+8Y9122236XOf+5z+9E//VDNmzNBPfvITzZkzR4sWLdLRo0eLfqkAcsJdwQFY6+qrr9bx48f1ox/9SJJ0/Phx1dXV6Y//+I/12GOPSZIOHDigsWPHaseOHZo2bVqRLxdATpjcALDapZde2vW/hwwZotGjR+t3f/d3uz43ZswYSdKhQ4dyf20AikHcALDa0KFDe/1zqVTq9blSqSRJOnHiRK6vC0BxiBsAAOAU4gYAADiFuAEAAE7hbCkAAOAUJjcAAMApxA0AAHAKcQMAAJxC3AAAAKcQNwAAwCnEDQAAcApxAwAAnELcAAAApxA3AADAKcQNAABwCnEDAACc8v8DJgSsUwa72zQAAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "a_mesh, m_mesh = np.meshgrid(np.linspace(ahat-2*np.sqrt(V_am[1,1]),ahat+2*np.sqrt(V_am[1,1]),100), \n", + " np.linspace(mhat-2*np.sqrt(V_am[0,0]),mhat+2*np.sqrt(V_am[0,0]),100))\n", + "plt.contourf(m_mesh, a_mesh, chi2_vect(xs, ys, sigma_y, a_mesh, m_mesh)-np.sum(((ys - (xs * mhat + ahat))/sigma_y)**2),[0,1,2,3,4,5,6,7,8], cmap=cm.coolwarm)\n", + "plt.xlabel(\"m\")\n", + "plt.ylabel(\"a\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "7311c0ff-0ce0-4427-a50e-b6698100e454", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### In python I\n", + "\n", + "Use [scipy.optimize.curve_fit](https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.html):\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 106, + "id": "e5ce8ad4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1.99378966 1.19164511] [[ 0.00576909 -0.01153818]\n", + " [-0.01153818 0.03247785]]\n" + ] + } + ], + "source": [ + "import scipy.optimize as opti\n", + "\n", + "def fitf(x, m , a):\n", + " return m*x + a\n", + "\n", + "pfit, Vfit = opti.curve_fit(fitf , xs, ys, \n", + " sigma=[sigma_y]*len(ys))\n", + "\n", + "print(pfit, Vfit)" + ] + }, + { + "cell_type": "markdown", + "id": "0a1a32c1", + "metadata": { + "slideshow": { + "slide_type": "fragment" + } + }, + "source": [ + "Achtung! Wrong uncertainties without `absolute_sigma=True`" + ] + }, + { + "cell_type": "markdown", + "id": "a5fec52e-bd3a-4437-bb43-620de44939b2", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### Mit Python II\n", + "\n", + "Mit [scipy.optimize.minimize](https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.minimize.html):\n" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "id": "e16145b5", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1.99378965 1.19164514] [[ 0.00981818 -0.01963636]\n", + " [-0.01963636 0.05527273]]\n" + ] + } + ], + "source": [ + "def chi2(x, y, sy, a, m):\n", + " my = m * x + a\n", + " r = (y - my)/sy\n", + " return np.sum(r**2)\n", + " \n", + "res = opti.minimize( lambda p: chi2(xs, ys, sigma_y, p[1], p[0]),x0=np.zeros(2))\n", + "print(res.x, res.hess_inv * 2)" + ] + }, + { + "cell_type": "markdown", + "id": "0b7f3f5d", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### Inverse Hessian matrix and $\\chi^2$ \n", + "\n", + "$\\Delta \\chi2$ and Covariance:\n", + "\n", + "$\\Delta \\chi2$ follows near the minimum a quadratic function.\n", + "\n", + "covariance matrix exactly at $\\Delta \\chi^2 = 1$.\n", + "\n", + "$$1 = \\Delta \\chi^2 = (\\vec a - \\vec{\\hat a})^T V^{-1}(\\vec a - \\vec{\\hat a})$$\n", + "\n", + "With\n", + "$\\chi^2(\\vec a) = \\chi^2(\\vec{\\hat a}) + (\\vec a -\\vec{\\hat a})^T V^{-1} (\\vec a-\\vec{\\hat a})$\n", + "and\n", + "$H_{ij} = \\frac{\\partial^2 \\chi^2(\\vec a)}{\\partial a_i \\partial a_j}$ \n", + "\n", + "$$H_{ij} = \\frac{\\partial^2 (a_k -\\hat a_k) V^{-1}_{kl} (a_l -\\hat a_l)}{\\partial a_i \\partial a_j} = \\frac{\\partial( \\delta_{ik}V^{-1}_{kl} (a_l -\\hat a_l) + (a_k -\\hat a_k) V^{-1}_{kl} \\delta_{il})}{\\partial a_j}$$\n", + "$$H_{ij} = \\delta_{ik}V^{-1}_{kl}\\delta_{lj} + \\delta_{jk}V^{-1}_{kl}\\delta_{il} = 2V^{-1}_{ij} \\text{ und } V_{ij} = 2 * H^{-1}_{ij}$$" + ] + }, + { + "cell_type": "markdown", + "id": "84b00301-c0d3-4595-858e-4f784d69c876", + "metadata": { + "slideshow": { + "slide_type": "fragment" + }, + "tags": [] + }, + "source": [ + "Watch out! Some algorithms in `minimize` do not compute the (full) inverse Hessian matrix." + ] + }, + { + "cell_type": "markdown", + "id": "322bf66d", + "metadata": {}, + "source": [ + "### Goodness of fit" + ] + }, + { + "cell_type": "markdown", + "id": "98381e4e", + "metadata": {}, + "source": [ + "$\\chi^2$ test:\n", + "H: model and estimated parameters fit the data\n", + "\n", + "\n", + "If the model works, the $\\chi^2$ values should follow the $\\chi^2$ distribution.\n", + "<br>\n", + "\n", + "Exercise: Test with pseudo-experiments" + ] + }, + { + "cell_type": "code", + "execution_count": 153, + "id": "fb5a00ab", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#hideme\n", + "import numpy as np\n", + "import scipy.stats as stats\n", + "import matplotlib.pyplot as plt \n", + "\n", + "def f(x):\n", + " return 2*x + 1\n", + "\n", + "n = 10 \n", + "xs = np.linspace(0,4,n)\n", + "sigma_y=0.4\n", + "ys = stats.multivariate_normal.rvs(f(xs), np.eye(n)*sigma_y**2, 10000, random_state=42)\n", + " \n", + "x_axis = np.linspace(0,4,100)\n", + "plt.errorbar(xs,ys[0],yerr=sigma_y,fmt=\".\")\n", + "plt.plot(x_axis, f(x_axis),'--')\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.savefig(\"line.png\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "76486014", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Add the fit and compute $\\chi^2$" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "id": "3ba80ec4", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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AACEsoADS15entra2rRkyRI5nU6lp6erqqpKKSkpkiSn06nm5mZPfWpqqqqqqlRQUKBVq1YpKSlJK1as8KzBIklZWVnatGmTFixYoIULF2rs2LGqrKzslzVYbDabFi1a5HN5Cd44Tv7jWPmH4+Q/jpV/OE7+C8VjFfA6LAAAAP2NLz8EAADGI7AAAADjEVgAAIDxCCwAAMB4gzqwlJWVKTU1VdHR0bLb7dq5c2ewWzLOE088obCwMK9XQkJCsNsKurfffltTp05VUlKSwsLC9Nprr3n93LIsPfHEE0pKStIFF1ygG264QR999FFwmg2ysx2r+++/3+cc+8lPfhKcZoOotLRU11xzjYYOHaqRI0dq2rRp+vTTT71qOK9O8edYcV5J5eXlGj9+vGdxuMzMTK8vGQ6182nQBpbKykrl5+erpKREDQ0Nys7OVm5urtcj2TjliiuukNPp9Lz2798f7JaC7tixY5owYYJWrlzZ48+XLVumF154QStXrtQHH3yghIQE3XzzzTp69Gg/dxp8ZztW0qlvZ//fc6yqqqofOzRDbW2t5syZo3fffVc1NTU6efKkcnJydOzYMU8N59Up/hwrifPqkksu0dKlS7Vnzx7t2bNHN954o26//XZPKAm588kapH784x9bDofDa+zyyy+3ioqKgtSRmRYtWmRNmDAh2G0YTZL16quvet53d3dbCQkJ1tKlSz1j3377rRUbG2utXr06CB2a47vHyrIsa9asWdbtt98elH5M1tLSYkmyamtrLcvivDqT7x4ry+K86s2wYcOsdevWheT5NChnWDo7O1VfX6+cnByv8ZycHO3evTtIXZnr888/V1JSklJTU3XPPffowIEDwW7JaE1NTXK5XF7nl81m009/+lPOr17s2LFDI0eO1I9+9CPNnj1bLS0twW4p6Nrb2yVJF198sSTOqzP57rE6jfPq/3R1dWnTpk06duyYMjMzQ/J8GpSBpbW1VV1dXT5frhgfH+/zJYyD3aRJk7Rhwwb94x//0Nq1a+VyuZSVlaW2trZgt2as0+cQ55d/cnNz9fLLL+utt97S888/rw8++EA33nijOjo6gt1a0FiWpcLCQl133XVKT0+XxHnVm56OlcR5ddr+/fv1gx/8QDabTQ6HQ6+++qrGjRsXkudTwEvzDyRhYWFe7y3L8hkb7HJzcz3/vvLKK5WZmamxY8fqT3/6kwoLC4PYmfk4v/yTl5fn+Xd6eroyMjKUkpKibdu26c477wxiZ8HzyCOP6MMPP+zx+9Q4r7z1dqw4r0657LLLtHfvXn399dfavHmzZs2apdraWs/PQ+l8GpQzLHFxcQoPD/dJkS0tLT5pE94uvPBCXXnllfr888+D3YqxTj9FxfnVN4mJiUpJSRm059hvf/tbbd26Vdu3b9cll1ziGee88tXbserJYD2voqKi9MMf/lAZGRkqLS3VhAkT9OKLL4bk+TQoA0tUVJTsdrtqamq8xmtqapSVlRWkrkJDR0eHGhsblZiYGOxWjJWamqqEhASv86uzs1O1tbWcX35oa2vT4cOHB905ZlmWHnnkEW3ZskVvvfWWUlNTvX7OefV/znasejJYz6vvsixLHR0doXk+Be123yDbtGmTFRkZaVVUVFgff/yxlZ+fb1144YXWwYMHg92aUR5//HFrx44d1oEDB6x3333X+sUvfmENHTp00B+no0ePWg0NDVZDQ4MlyXrhhReshoYG69ChQ5ZlWdbSpUut2NhYa8uWLdb+/fute++910pMTLTcbneQO+9/ZzpWR48etR5//HFr9+7dVlNTk7V9+3YrMzPTGjVq1KA7Vg8//LAVGxtr7dixw3I6nZ7X8ePHPTWcV6ec7VhxXp1SXFxsvf3221ZTU5P14YcfWvPnz7eGDBliVVdXW5YVeufToA0slmVZq1atslJSUqyoqChr4sSJXo/E4ZS8vDwrMTHRioyMtJKSkqw777zT+uijj4LdVtBt377dkuTzmjVrlmVZpx5BXbRokZWQkGDZbDbr+uuvt/bv3x/cpoPkTMfq+PHjVk5OjjVixAgrMjLSGj16tDVr1iyrubk52G33u56OkSTrj3/8o6eG8+qUsx0rzqtTHnjgAc/fuBEjRlg///nPPWHFskLvfAqzLMvqv/kcAACAwA3Ke1gAAEBoIbAAAADjEVgAAIDxCCwAAMB4BBYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAIGYcPH9YNN9ygcePGafz48frrX/8a7JYA9BOW5gcQMpxOp/773//qqquuUktLiyZOnKhPP/1UF154YbBbA3CeRQS7AQDwV2JiohITEyVJI0eO1MUXX6yvvvqKwAIMAlwSAhCS9uzZo+7ubiUnJwe7FQD9gBkWACGnra1NM2fO1Lp164LdCoB+wgwLAGPcddddiouLU3l5uWdsz549stlsqqqqkiR1dHTojjvuUHFxsbKysoLVKoB+xk23AIzhdDq1ePFivfbaa3K5XDp+/Liuvvpq3XzzzVq5cqUsy9J9992nyy67TE888USw2wXQjwgsAIzyySefKC0tTS6XSwsXLtSuXbtUX1+vCy64QLt27dL111+v8ePHe+r//Oc/68orrwxixwD6A4EFgFG6u7s1dOhQ3X///Vq3bp3effddXX311cFuC0CQcdMtAKMMGTJE6enpKisr07JlywgrACQxwwLAMJZlKTMzUydOnNAHH3ygIUN4NgAATwkBMMzy5cv13nvvqbu7m7ACwIMZFgDG2L9/v6655ho9+OCDWrdunY4dO6aICK5cAyCwADDEt99+q2uuuUYTJ07Uiy++qGHDhmn//v1KT08PdmsADMB8KwAjFBUV6dixY1q5cqUuuugipaSk6Pe//72OHDkS7NYAGIDAAiDoqqurtWrVKr300ksaOnSoJGnBggV6/fXX5XA4gtwdABNwSQgAABiPGRYAAGA8AgsAADAegQUAABiPwAIAAIxHYAEAAMYjsAAAAOMRWAAAgPEILAAAwHgEFgAAYDwCCwAAMB6BBQAAGI/AAgAAjEdgAQAAxvv/hiRXSDC8yc4AAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "7.983673395154516\n" + ] + } + ], + "source": [ + "def fit(ys):\n", + " p, V = opti.curve_fit(lambda x, m, a: m * x + a, xs, ys, sigma=[sigma_y]*len(ys), absolute_sigma=True)\n", + " return p, V\n", + "\n", + "p = np.zeros((len(ys),2))\n", + "chi2s = np.zeros(len(ys))\n", + "for i in range(len(ys)):\n", + " p[i] = fit(ys[i])[0]\n", + " chi2s[i] = np.sum(((ys[i] - p[i,0] * xs - p[i,1])/sigma_y)**2)\n", + "\n", + "chi_axis = np.linspace(0,30,100) \n", + "plt.hist(chi2s,bins=50, density=True)\n", + "# draw Chi2 distribution\n", + "plt.xlabel(\"$\\chi^2$\")\n", + "plt.show()\n", + "print(np.mean(chi2s))" + ] + }, + { + "cell_type": "markdown", + "id": "1ea7723c", + "metadata": {}, + "source": [ + "### Compute p-value for goodness of fit" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "78ced062", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiMAAAGwCAYAAAB7MGXBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAg4UlEQVR4nO3df3BVZX4/8E9IIFG7iQNoBImIW91lZZbVMCJQxh/VOOiw48zuSMeOqMXWdN1FSLUlS8dfdSa720oVFXRX0DpFmvHn2NlUzR+toLjbwobOjjDVFdygBpngbBJ/NAic7x8O+TabALkxuQ83vF4z54/78JxzP/chcN55nnPOLcqyLAsAgERGpS4AADi+CSMAQFLCCACQlDACACQljAAASQkjAEBSwggAkFRJ6gIG4uDBg/HBBx/EV77ylSgqKkpdDgAwAFmWRVdXV0ycODFGjTr8/EdBhJEPPvggqqqqUpcBAAzCrl27YtKkSYf984III1/5ylci4osPU15enrgaAGAgOjs7o6qqquc8fjgFEUYOLc2Ul5cLIwBQYI52iYULWAGApIQRACCpnMPIhg0bYv78+TFx4sQoKiqKF1544Yj9n3vuubj88svjlFNOifLy8pg1a1a8/PLLg60XABhhcg4jn3zySUyfPj0eeuihAfXfsGFDXH755dHU1BRbtmyJSy65JObPnx8tLS05FwsAjDxFWZZlg965qCief/75uPrqq3Pa79xzz40FCxbEHXfcMaD+nZ2dUVFRER0dHS5gBYACMdDzd97vpjl48GB0dXXF2LFjD9unu7s7uru7e153dnbmozQAIIG8X8B63333xSeffBLXXHPNYfs0NDRERUVFz+aBZwAwcuU1jKxfvz7uuuuuaGxsjFNPPfWw/err66Ojo6Nn27VrVx6rBADyKW/LNI2NjbFo0aJ4+umn47LLLjti39LS0igtLc1TZQBASnmZGVm/fn3ccMMN8dRTT8VVV12Vj7cEAApEzjMjH3/8cfzmN7/peb1z587YunVrjB07Ns4444yor6+P999/P5588smI+CKILFy4MB544IG48MILY/fu3RERccIJJ0RFRcUQfQwAoFDlPDOyefPmOO+88+K8886LiIi6uro477zzem7TbWtri9bW1p7+jz76aOzfvz9uueWWmDBhQs926623DtFHAAAK2Zd6zki+eM4I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v7a2Nn77299GXV1dbN++PdauXRtr1qyJ2267beg+BQBQsHK+ZmTBggWxd+/euOeee6KtrS2mTZsWTU1NMXny5IiIaGtr6/XMkSlTpkRTU1MsXbo0Hn744Zg4cWKsXLkyvvOd7wzdpxik0tLSuPPOO/ssCTH0jHV+GOf8MM75YZzz41gY55yfMwIAMJR8Nw0AkJQwAgAkJYwAAEkJIwBAUiM+jKxatSqmTJkSZWVlUV1dHRs3bjxi/1dffTWqq6ujrKwszjrrrHjkkUfyVGlhy2Wcn3vuubj88svjlFNOifLy8pg1a1a8/PLLeay2sOX6M33I66+/HiUlJfGtb31reAscIXId5+7u7li+fHlMnjw5SktL46tf/WqsXbs2T9UWrlzHed26dTF9+vQ48cQTY8KECXHjjTfG3r1781RtYdqwYUPMnz8/Jk6cGEVFRfHCCy8cdZ+8nwuzEexf/uVfstGjR2c/+9nPsm3btmW33nprdtJJJ2W//e1v++2/Y8eO7MQTT8xuvfXWbNu2bdnPfvazbPTo0dkzzzyT58oLS67jfOutt2Y//vGPs//8z//M3nrrray+vj4bPXp09qtf/SrPlReeXMf6kN/97nfZWWedldXU1GTTp0/PT7EFbDDj/O1vfzubOXNm1tzcnO3cuTP75S9/mb3++ut5rLrw5DrOGzduzEaNGpU98MAD2Y4dO7KNGzdm5557bnb11VfnufLC0tTUlC1fvjx79tlns4jInn/++SP2T3EuHNFh5IILLshqa2t7tX3961/Pli1b1m//v/7rv86+/vWv92q7+eabswsvvHDYahwJch3n/nzjG9/I7r777qEubcQZ7FgvWLAg+9u//dvszjvvFEYGINdx/rd/+7esoqIi27t3bz7KGzFyHee///u/z84666xebStXrswmTZo0bDWONAMJIynOhSN2mWbfvn2xZcuWqKmp6dVeU1MTmzZt6nefN954o0//K664IjZv3hyff/75sNVayAYzzr/v4MGD0dXVFWPHjh2OEkeMwY71448/Hu+8807ceeedw13iiDCYcX7xxRdjxowZ8ZOf/CROP/30OOecc+K2226Lzz77LB8lF6TBjPPs2bPjvffei6ampsiyLD788MN45pln4qqrrspHyceNFOfCQX1rbyFob2+PAwcO9PkCv8rKyj5f3HfI7t27++2/f//+aG9vjwkTJgxbvYVqMOP8++6777745JNP4pprrhmOEkeMwYz122+/HcuWLYuNGzdGScmI/ec+pAYzzjt27IjXXnstysrK4vnnn4/29vb43ve+Fx999JHrRg5jMOM8e/bsWLduXSxYsCD+93//N/bv3x/f/va348EHH8xHyceNFOfCETszckhRUVGv11mW9Wk7Wv/+2ukt13E+ZP369XHXXXdFY2NjnHrqqcNV3ogy0LE+cOBAXHvttXH33XfHOeeck6/yRoxcfqYPHjwYRUVFsW7durjgggviyiuvjBUrVsQTTzxhduQochnnbdu2xeLFi+OOO+6ILVu2xEsvvRQ7d+7s+W40hk6+z4Uj9lel8ePHR3FxcZ+EvWfPnj6J75DTTjut3/4lJSUxbty4Yau1kA1mnA9pbGyMRYsWxdNPPx2XXXbZcJY5IuQ61l1dXbF58+ZoaWmJ73//+xHxxUkzy7IoKSmJV155JS699NK81F5IBvMzPWHChDj99NN7fVX61KlTI8uyeO+99+Lss88e1poL0WDGuaGhIebMmRO33357RER885vfjJNOOinmzp0b9957r9nrIZLiXDhiZ0bGjBkT1dXV0dzc3Ku9ubk5Zs+e3e8+s2bN6tP/lVdeiRkzZsTo0aOHrdZCNphxjvhiRuSGG26Ip556ynrvAOU61uXl5fHrX/86tm7d2rPV1tbG1772tdi6dWvMnDkzX6UXlMH8TM+ZMyc++OCD+Pjjj3va3nrrrRg1alRMmjRpWOstVIMZ508//TRGjep92iouLo6I//+bO19eknPhsF0aeww4dNvYmjVrsm3btmVLlizJTjrppOzdd9/NsizLli1bll133XU9/Q/dzrR06dJs27Zt2Zo1a9zaOwC5jvNTTz2VlZSUZA8//HDW1tbWs/3ud79L9REKRq5j/fvcTTMwuY5zV1dXNmnSpOy73/1u9uabb2avvvpqdvbZZ2c33XRTqo9QEHId58cffzwrKSnJVq1alb3zzjvZa6+9ls2YMSO74IILUn2EgtDV1ZW1tLRkLS0tWURkK1asyFpaWnpuoT4WzoUjOoxkWZY9/PDD2eTJk7MxY8Zk559/fvbqq6/2/Nn111+fXXTRRb36/8d//Ed23nnnZWPGjMnOPPPMbPXq1XmuuDDlMs4XXXRRFhF9tuuvvz7/hRegXH+m/y9hZOByHeft27dnl112WXbCCSdkkyZNyurq6rJPP/00z1UXnlzHeeXKldk3vvGN7IQTTsgmTJiQ/emf/mn23nvv5bnqwvLv//7vR/w/91g4FxZlmbktACCdEXvNCABQGIQRACApYQQASEoYAQCSEkYAgKSEEQAgKWEEAEhKGAEAkhJGAICkhBEAIClhBABIqiR1AcDx6eKLL45p06ZFRMQ///M/R3FxcfzlX/5l/N3f/V0UFRUlrg7IJzMjQDL/9E//FCUlJfHLX/4yVq5cGf/4j/8Yjz32WOqygDzzrb1AEhdffHHs2bMn3nzzzZ6ZkGXLlsWLL74Y27ZtS1wdkE9mRoBkLrzwwl5LMrNmzYq33347Dhw4kLAqIN+EEQAgKWEESOYXv/hFn9dnn312FBcXJ6oISEEYAZLZtWtX1NXVxf/8z//E+vXr48EHH4xbb701dVlAnrm1F0hm4cKF8dlnn8UFF1wQxcXF8YMf/CD+4i/+InVZQJ4JI0Ayo0ePjvvvvz9Wr16duhQgIcs0AEBSwggAkJSHngEASZkZAQCSEkYAgKSEEQAgKWEEAEhKGAEAkhJGAICkhBEAIClhBABI6v8BomK8jGtyzWYAAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "plt.hist(stats.chi2.sf(chi2s,8), bins=50, density=True)\n", + "plt.xlabel(\"p\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "id": "cbe8c412", + "metadata": {}, + "source": [ + "### What if the model does not fit" + ] + }, + { + "cell_type": "code", + "execution_count": 172, + "id": "882205bd", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAGwCAYAAACHJU4LAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA0EElEQVR4nO3deXwV1f3/8dfNzpJEVgmyKgIC4gKouKFCoYgLimutW+1iiyvd1C5Wf78a229/aPu1pXW3LsUqoNQVaQW01gVEQXDBCgICIihJ2BKSzO+PkcRoWBKSzNyb1/PxuI/MTObefI6HJu/OnHMmEQRBgCRJUgylRV2AJEnSjhhUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbGVEXcCeqKysZNWqVeTm5pJIJKIuR5Ik7YYgCCgpKaFz586kpe38mklSB5VVq1bRtWvXqMuQJEn1sGLFCrp06bLTc5I6qOTm5gJhQ/Py8iKuRpIk7Y7i4mK6du1a9Xd8Z5I6qGy/3ZOXl2dQkSQpyezOsA0H00qSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpNgyqEiSpK/YXFZOj2uepMc1T7K5rDyyOgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiQptgwqkiRpp9YUbY3sZxtUJEnSV0yZt7Jqe8TE2Tz82vJI6jCoSJKkGlYXbeH66Yuq9isDuG7qW6wu2tLktRhUJElSDUvXbaIyqHmsIghYtm5zk9diUJEkSTX0bN+KtETNY+mJBD3at2zyWgwqkiSphoL8FtxwSv+q/bQE3HT6AAryWzR5LQYVSZL0FeMGdananjlhGGcP6RZJHQYVSZK0U53ycyL72QYVSZIUWwYVSZIUWwYVSZIUWwYVSZIUWwYVSZIUWwYVSZIUW5EGlV/96lckEokar06dOkVZkiRJipGMqAvo378/M2fOrNpPT0+PsBpJkhQnkQeVjIyM3b6KUlpaSmlpadV+cXFxY5UlSVLztukT8thEMa0iLSPyMSpLliyhc+fO9OzZk3POOYcPPvhgh+cWFhaSn59f9eratWsTVipJUjPSqgMD0pbSkc8iLSPSoHL44Yfz17/+lWeffZY77riDNWvWcOSRR7J+/fpaz7/22mspKiqqeq1YsaKJK5Ykqfl4qXIAa9kr0hoivfUzevToqu0DDzyQoUOHst9++3HfffcxYcKEr5yfnZ1NdnZ2U5YoSVLzUVkBs38LR1wK6bmfH0xEWlLkt36+qFWrVhx44IEsWbIk6lIkSWp+ZvwcZt8M950chpYYiFVQKS0t5e2336agoCDqUiRJal5euwte/lO4fcwPIS0es3AjDSo/+tGPmD17NkuXLuWVV17hjDPOoLi4mAsvvDDKsiRJal7enwlP/TjcPuHn0P+0aOv5gkjHqKxcuZJzzz2XdevW0aFDB4444ghefvllunfvHmVZkiQ1Hx8vhr9fBEEFDDwHjvlR1BXVEGlQmTx5cpQ/XpKk5q3kY3joLCgrge5HwSl/gES0g2e/LFZjVCRJUhPaWgQkoF0vOPsByIjfzNrIV6aVJEkR6dAbvj0Ttm2Glm2jrqZWXlGRJKm5+XRp9Xbu3tC2Z3S17IJBRZKk5mTu3XDbEHgzOcaJeutHkqTmYslz8OSPwhk+G5bv9NSWWRksu3lMExW2Y15RkSSpOVizEB65KAwpB58Hx/446op2i0FFkqRUV/QRPHgWlG2EnsfCSbfGbhryjhhUJElKZaUl8NDZULIK2veBs+6HjKyoq9ptBhVJklLZvPvg44XQqgOc9wi02CvqiurEwbSSJKWyoePDqyq9R0Kb5HtEjUFFkqRUFAThOJREAo6/Nupq6s1bP5IkpZo3H4ZHLoRtW6KuZI95RUWSpFSydA48Ph4qt0H3o+Hw70Zd0R7xiookSani48Uw+ZthSOk3FoZ8O+qK9phBRZKkVFC8Ch48A0qLoNtQOO0vkJb8f+aTvwWSJDV3W4vgwTOh+CNo3xvOeQgyc6KuqkEYVCRJSnZTvwcfvwWt94bzHoWWbaOuqMEYVCRJSnbHTIC9uoULuiXhWik746wfSZKSXdfD4PLXIT0z6koanFdUJElKRq//FVa/Wb2fgiEFDCqSJCWfxY/D9CvgnhPh06VRV9OoDCqSJCWTD1+CKd8BAhh4FrTpEXVFjcqgIklSslj7DvztHKgohb4nwYm/C5/lk8IMKpIkJYOij+CB08M1U7oeDuPuhLT0qKtqdAYVSZLibstn8MC46gXdzp0MmS2irqpJOD1ZkqS4S8uE/H1g6wb45tSUWtBtVwwqkiTFXXbr8CpK8UewV9eoq2lS3vqRJCmOggDeezb8CuE6KSk+w6c2BhVJkuLo+ZvgobPg6Z9GXUmkDCqSJMXNK3+BOb8Ntzv2jbaWiBlUJEmKk4WPVl9FOe46GPytaOuJmEFFkqS4+O+/YNqlQABDvgPDfhJ1RZEzqEiSFAcfzYPJ34TKbdD/NBj9m5RfdXZ3GFQkSYqDde9D+RbY9zg47S/NYtXZ3eE6KpIkNaDNZeX0++WzACy+cRQts3bzT+1BZ0PrDtBlCGRkN2KFycWgIklSVDath6AyDCgA+50QbT0x5K0fSZKiUFoCD54Bd4+CDcujria2DCqSJDW18lKYfB6sej184OC2rVFXFFsGFUmSmlJFOUy5BJbOhsxW8M1HoUPvqKuKLYOKJElNJQjgH1fC2/+A9Cw49yHYZ1DUVcWaQUWSpKYQBDDj5/DGA5BIgzPuDqcia6cMKpIkNYWtRfDuU+H2KbfBASdHW0+ScHqyJElNocVe8K1n4b/Ph2umaLd4RUWSpMZUvKp6u3VHQ0odGVQkSWok6e8+Ab8/CN54KOpSkpZBRZKkRnB02kKyHvsOVJTBsn9HXU7SMqhIktTADk28x+2ZE0lUlMEBp8DJv4+6pKRlUJEkqQEl1izg3qzf0jJRSsW+J8C4OyHduSv1ZVCRJKmhfPIuOX87g7zEZl6p7EvpuPt8EvIeMqhIktRQ3ppKYst6FlT25NtlP4LMllFXlPS8FiVJUkM57hrKsvK44B/tKMGQ0hC8oiJJitzmsnJ6XPMkPa55ks1l5VGXUzeb1kN5WbidSFA+5HtsIDfamlKIQUWSpPra/CncdzJM/gZs2xJ1NSnJoCJJUn1s2QD3nwZrF8GaBbBxbdQVpSSDiiRJdVVaAg+eCavfgJbt4ILp0KZ71FWlpNgElcLCQhKJBFdddVXUpUiStGNlm+Ghc2Dlq5CzF1zwOHTsG3VVKSsWQeW1117j9ttvZ+DAgVGXIknSjm3bCg+fBx++CNl5cP5U6HRg1FWltMiDysaNGznvvPO44447aNOmTdTlSJK0Y+vfhxWvQWYrOO8R2GdQ1BWlvMiDyvjx4xkzZgwjRozY5bmlpaUUFxfXeEmS1GQ6DYALHoNvTIZuR+zy9DVFWxu/phQXaVCZPHkyr7/+OoWFhbt1fmFhIfn5+VWvrl27NnKFkqRmr6IcPv2ger/LYOh57A5PnzJvZdX2iImzefi15Y1ZXcqLLKisWLGCK6+8kgceeICcnJzdes+1115LUVFR1WvFihWNXKUkqVmrrIDHx8Ptx8NHr+/y9NVFW7h++qLqtwdw3dS3WF3kGiv1FdkS+vPmzWPt2rUMGlR9f6+iooI5c+Zw2223UVpaSnp6eo33ZGdnk53tw50kSU2gshL+cQUsmAxpGVCyepdvWbpuE5VBzWMVQcCydZspyG/RSIWmtsiCyvDhw1m4cGGNYxdffDF9+/blpz/96VdCiiRJTaayEp64CuY/AIk0GHcn9B2zy7f1bN+KtAQ1wkp6IkGP9j73p74iCyq5ubkMGDCgxrFWrVrRrl27rxyXJKnJBAE89SN4/b4wpJz2F+h/2m69tSC/BTec0p9fPB7e/klLwE2nD/Bqyh6IfNaPJEmxEQTw1I9h7l1AAsZOgoFn1ekjxg3qUrU9c8Iwzh7SrYGLbF4iu6JSm1mzZkVdgiSpOSsvhU/eARJw6h/hoHP26OM65e/eZBHtWKyCiiRJkcrMgW/8HZa9AL1HRV2N8NaPJKm5CwJ4f2b4FSCrpSElRgwqkqTmKwhgxs/hgXHw/K+jrka1MKhIkpqn7SHlP7eF+7kF0dajWhlUJEnNz5dDypiJMOSSaGtSrRxMK0lqXoIAnv0ZvPzHcN+QEmteUZGkJLa5rJwe1zxJj2ueZHNZedTlJAdDSlLxiookqXnp0DtccXbMRBh8cdTVaBcMKpKkWFlTtJV9O7RuvB8w6CLofhS037/xfoYajLd+JEmRmzJvZdX2iImzefi15Q334ZWVMOd/YNO66mOGlKRhUJEkRWp10Raun76oar8ygOumvsXqoi17/uGVFTD9cvjX/4X7T4MKx/EkG4OKJClSS9dtojKoeawiCFi2bvOefXBFOTz2fXjjgXBMypFXQLojHpKNPSZJilTP9q1IS1AjrKQnEvRo37L+H1qxDaZ9D96aAol0OOMu6H/anherJucVFUlSpAryW3DDKf2r9tMScNPpAyjIb1G/Dywvg0e/FYaUtEw46z5DShIzqEiSIjduUJeq7ZkThnH2kG71/7Bnr4W3p0N6Fpz9ABxwcgNUqKgYVCRJsdIpP2fPPuDIK6BdLzj3b9Dn6w1TlCLjGBVJUvILAkgkwu023eEHrzhwNkV4RUWSlNy2bIB7x8A7T1YfM6SkDHtSkpS8Nq2HB06D1W/C+vdh3+Mhaw9mCyl2DCqSpORUsgb+OhY+eRtatodvTjGkpCCDiiQp+WxYDn89FT79AHIL4ILHoUOfqKtSIzCoSJKSy/r/wn2nQPFK2KsbXDAd2vaMuio1EoOKJCm5zH8gDCnteoUhJX+fqCuqoWVWBstuHhN1GSnDoCJJSi4n/ALSM2HIt6F1x6irUSNzerIkKf5Wvxk+vwcgLQ2Ov86Q0kwYVCRJ8fbes3DXyPAhg5UVUVejJmZQkSTF11tTYPI3oHwrlG2GyvKoK1ITM6hIkuJp7j3w6CVhODnwTDj7fsjIjroqNTGDiiQpfl6YCE9cBQQw6GI47fZwAK2aHWf9SJJiJXPOb+DF34Y7x/wwnOWz/YGDana8oiJJKWJN0daoS2gQFd2OhIwc+Nr/geG/NKQ0cwYVSUpiU+atrNoeMXE2D7+2PMJqGkZlj2Pg8nlw1BVRl6IYMKhIUpJaXbSF66cvqtqvDOC6qW+xumhLhFXVQ2kJWVMvZv9Edegiv0t09ShWDCqSlKSWrttEZVDzWEUQsGzd5mgKqo+Nn8C9J5HxznQmZd5KGpVRV6SYMahIUpLq2b4VaV8avpGeSNCjfctoCqqrDcvhnq/D6jcIWrTj6m0/oNI/S/oS/0VIUpIqyG/BDaf0r9pPS8BNpw+gIL9FhFXtpo8Xh6vNrn8f8rux9YKnWBjsG3VViiGDiiQlsXGDqsdyzJwwjLOHdIuwmt304UvhlZSS1dChL1zyLEG7XlFXpZgyqEhSiuiUnxN1CbvnhYmwtQi6HgEXPw15naOuSDHmgm+SpKZ1xl0w+7dw/M8gKxxP0zIrg2U3j4m4MMWRV1QkSY0rCOC//6rez8mHUb+uCinSzhhUJEmNp6Icnrga7j8NXrot6mqUhLz1I0lqHGWbYcol8O5TQMInH6teDCqSpIa3+VN46GxY+SqkZ8O4O6HfKVFXpSRkUJEkNazPPoQHz4B174XjUc6dDN2PjLoqJSmDiiSp4ZRuhLtHhWuk5O0D35wCHQ+IuiolMQfTSpIaTnZrOPpq2HsAXPKcIUV7zCsqkqQ9V7a5errx4d+DQy+EzCRZgE6x5hUVSVL9BQE8fxPccQJs2VB93JCiBmJQkSTVT3kZTLsUZv8GPnkb3nki6oqUgrz1I0mquy2fwcPnw7IXIJEOJ02EQ74ZdVVKQQYVSVLdfPYhPHgmrHsXslrDWfdBrxFRV6UUVedbPxdddBFz5sxpjFokSXG3ZiHcOSIMKbmd4VvPGFLUqOocVEpKShg5ciT7778/N910Ex999FFj1CVJiqNWHcOl8PceAN+eCZ0OjLoipbg6B5UpU6bw0Ucfcdlll/HII4/Qo0cPRo8ezaOPPsq2bdsao0ZJUlzk7g0XPA4XPw35+0RdjZqBes36adeuHVdeeSXz58/n1VdfpVevXpx//vl07tyZq6++miVLljR0nZKkKGx/+vGbD1cfa7cf5ORFV5OalT2anrx69WpmzJjBjBkzSE9P58QTT2TRokX069ePW265paFqlCRFYWsRPHQWzL0b/nEFlHwcdUVqhuocVLZt28aUKVM46aST6N69O4888ghXX301q1ev5r777mPGjBncf//93Hjjjbv8rEmTJjFw4EDy8vLIy8tj6NChPP300/VqiCSpAX22DO4aCf/9J2S0gDPuDm/7SE2sztOTCwoKqKys5Nxzz+XVV1/l4IMP/so5o0aNYq+99trlZ3Xp0oWbb76ZXr16AXDfffdx6qmnMn/+fPr371/X0iRJDWH5KzD5G7B5HeQWwLl/g86HRF2Vmqk6B5VbbrmFM888k5ycHS+P3KZNG5YuXbrLzzr55JNr7P/6179m0qRJvPzyywYVSYrCgr/D4+Ohogw6DYRvPAx5naOuSs1YnYPK+eef3xh1UFFRwSOPPMKmTZsYOnRoreeUlpZSWlpatV9cXNwotUhSsmiZlcGym8c03Ad+8m4YUvqeBKffDlmtGu6zpXqIfGXahQsXMnToULZu3Urr1q2ZNm0a/fr1q/XcwsJCbrjhhiauUJKakeN/Bh36wIAzIM3HwSl6iSAIgigLKCsrY/ny5WzYsIEpU6Zw5513Mnv27FrDSm1XVLp27UpRURF5eU6Vk6Q6K1oJswrhxN9BZouoq1EzUVxcTH5+/m79/Y48qHzZiBEj2G+//fjLX/6yy3Pr0lBJ0pesnAeTz4WNH8PgS8IHC0pNoC5/vyO/9fNlQRDUuGoiSWoEbz4M0y+HilLo2B+OujLqiqRaRRpUrrvuOkaPHk3Xrl0pKSlh8uTJzJo1i2eeeSbKsiQpdVVWwD9vgH//PtzvPRrG3QHZudHWJe1ApEHl448/5vzzz2f16tXk5+czcOBAnnnmGb72ta9FWZYkpaatRTDl27BkRrh/zA/h+J87aFaxFmlQueuuu6L88ZLUvGzZAB/Ng4wcOPWPcOAZUVck7VLsxqhIkhpJm+5w9gOQkQ37DIq6Gmm3GFQkKVUFAbz0B2jfG/qMDo91PzLamqQ6MqhIUiratiWc1bPwEcjKhcteg7yCqKuS6sygIkmpZsMKePg8WP0mpGXAiOsht1PUVUn1YlCRpFSydA48chFsXg8t28FZf4UeR0ddlVRvBhVJSgVBAC//CWb8AoIKKDgoHDi7V7eoK5P2iEFFklJBIgGfLg1DysBz4ORbfXaPUoJBRZJSxaiboNsRMGBcGFykFOByhJKUrJY8B5PPg4rycD8jK1zEzZCiFGJQkaRkU1kJs26GB8+Ed56A1+6IuiKp0XjrR5KSyZbPYOr3YMmz4f7gS2Dwt6KtSWpEBhVJShar34SHz4cNH0J6Npx0CxxyXtRVSY3KoCJJyWDx4zDlO1BRGk45Put+6Hxw1FVJjc6gIknJoH2fcJXZ/Y6H0/4MLdpEXZHUJAwqkhRXpRshu3W43bEvfHsmdOgLac6DUPPhv3ZJiqPF0+HWAbDs39XH9u5nSFGz4794SYqT8jJ45lr4+/nhDJ9Xb4+6IilS3vqRpLgoWgmPXAwrXw33j7wchl8fbU1SxAwqkhQH7z4Dj10aXkXJzoexf4IDToq6KilyBhVJitqKV+FvZ4fbBQfDmfdC255RViTFhkFFkqLWZQj0Gwu5neBrN0JGdtQVSbFhUJGkKLw3A7oeBi32Ch8ieMbdkJYedVVS7DjrR5KaUnkpPP1TeOhM+McVEAThcUOKVCuvqEhSU1n/X3j04vCZPQD5XaGyAtL9VSztiP/rkNQsbS4rp98vwycQL75xFC2zGvnX4YK/wxNXQ9lGaNE2XAa/96jG/ZlSCjCoSFJjKi2BJ38ECyaH+92PhnF3QF7naOuSkoRBRZIaU8U2WDoHEmlw3LVwzA8djyLVgUFFkhpaZWU4kyeRgJZtwxk9iQR0OyLqyqSk46wfSWpIxavg/lPhjQerj3UfakiR6skrKpLUUN7+B0y/PFwGf+3bMGAcZLaIuiopqRlUpCbS5LNM1HTKNoVPPH79vnC/4GAYd6chRWoA/qaUpD2xch5M/Q58+l8gAUddCcf/DDKyoq5MSgkGFUmqr+JVcM/XoaIMcjuHa6PsOyzqqqSUYlCRpPrK6wxDx8NnH8JJE6FFm6grklKOQUWSdlcQwLx7ocfR0H7/8NgJv6yeiiypwRlUJGl3lKwJZ/QsmQGdD4VLZkB6JqS5yoPUmAwqkrQrix4Ln9Oz5VNIzw6nHSdcXVZqCgYVSdqRLZ/BUz+BhX8P9zsNhNNvh44HRFuX1IwYVCSpNuveh3vHwMY14XN6jp4Aw37qtGOpiRlUJKk2bXpAXgFk54bTjrsMjroiqVkyqEjSdstehH0GQ2YOpGfA2Q+GDxV0hVkpMg5Xl6TSYvjHleGtntk3Vx/P38eQIkXMKyqSmrWj0xaSc8dPoHhleGDb1nC9FNdFkWLBoCKpedpaTGHGHZyb8TwUE45JOeU26HlM1JVJ+gKDiqTmZ/kr5Pz9As7NWAPAtkHfJnPUjZDVKuLCJH2ZY1QkNT+5nUiUlrC0cm/OKv0F20b9xpAixZRXVCSlviCAj+ZVTzFu053Scx5h9B0fs5XsaGuTtFNeUZGU2opWwt/OgTuHwwezqw5Xdj28KqSsKdoaVXWSdsGgIik1VVbCq3fAHw+H956BtExYv6Tq21PmrazaHjFxNg+/tjyKKiXtgrd+JKWejxfDE1fBilfC/a6Hw8l/gI59AVhdtIXrpy+qOr0ygOumvsWxvTtQkO+6KVKcGFQkpZaX/hdm/goqyyGrNYz4FQy+BNKqLyAvXbeJyqDm2yqCgGXrNhtUpJgxqEhKLXmdw5DS9yQY/dtwddkv6dm+FWkJaoSV9ESCHu1bNmGhknaHY1QkJbeNa+HDl6r3+58OFz8N5zxYa0gBKMhvwQ2n9K/aT0vATacP8GqKFEMGFSkCyTzLZHNZOT2ueZIe1zzJ5rLy6AqprIS5d8Ntg+Hh82Hzp+HxRAK6H7nLt48b1KVqe+aEYZw9pFtjVSppDxhUpCbiLJMGtGYh3D0SnrgathaFt3u2B5V66JSf04DFSWpIjlGRmoCzTBrI1iJ4vhBe/QsElZCVCyf8HIZ8G9L9dSalokivqBQWFjJkyBByc3Pp2LEjY8eO5d13342yJKlR7GyWiXbT1qJwTZRXJoUhpd9YuOxVOOJSQ4qUwiINKrNnz2b8+PG8/PLLPPfcc5SXlzNy5Eg2bdoUZVlSg9s+y+SLnGVSRzn50Gs4tN0PvjkVzrovvOUjKaVF+n9DnnnmmRr799xzDx07dmTevHkce+yxEVUlNbzts0x+8Xh4+8dZJrthazHM/g0MuQTa7hseG1UIGdnhS1KzEKvrpUVFRQC0bdu21u+XlpZSWlpatV9cXNwkdUkNYdygLlVBZeaEYezboXXEFcVUZSUseBie+yVsWgvr34dvPBx+Lycv2tokNbnYzPoJgoAJEyZw9NFHM2DAgFrPKSwsJD8/v+rVtWvXJq5SahjOMtmBVfPhnq/DY5eGIaVdLzjsO1FXJSlCsbmictlll7FgwQJefPHFHZ5z7bXXMmHChKr94uJiw4qUCjZ+Av+8AeY/AASQ2QqG/QSO+AFkZEVdnaQIxSKoXH755UyfPp05c+bQpUuXHZ6XnZ1Ndrb3pqWUM/+vMP/+cPvAs+BrNzhQVhIQcVAJgoDLL7+cadOmMWvWLHr27BllOZKaShDAls+g5efj0Y4YH972GXo5dDs82tokxUqkQWX8+PE89NBDPP744+Tm5rJmzRoA8vPzadHC2RBSSvp4MTx7XfiMnktfgLR0yMyBsx+IujJJMRRpUJk0aRIAxx13XI3j99xzDxdddFHTFySp8Wz8BGbdBPPuDRdsS88Kr6J0GRx1ZZJiLPJbP5JS3LYt8PKf4IVboKwkPHbAKfC1G6Gtt3sl7VwsBtNKSlFFH8FdI6H48wcyFhwMo34NPY6OtCxJycOgIqnx5HWGvT5fQmD4L+HAMyEtNss3SUoCBhXF3uaycvr98lkAFt84ipZZ/rONrY8XwZzfwUm3QIu9IJGA0++AVu0h0wHykurO3/iS9lzRSni+EN54EAhgr27hWihQfUVFkurBoCKp/jZ/Cs//Hl69Ayo+fw5Xv7Fw6AWRliUpdRhUJNXLpenTaTHpe1D6+Uye7kfDiF9B1yGR1iUptRhUJNVLz8QaEqUl0OlAGP4r6DU8HJMiSQ3I4feSdq2iHF7/K3zybtWhW8vHUXrq7fDdObD/CEOKpEbhFRVJO1ZZAYumwaxCWP8+HHAynHYvAKtpR0X/UU43ltSoDCqSvqqyEt5+HGbdDJ+8Ex5r2Q66DQ0fKChJTcSgIqmmJTNh5vXw8Vvhfk4+HHk5HH4pZOdCWXnVqWuKtrJvh9YRFbpnWmZlsOzmMVGXIWkXvGYrqaZP3g5DSnYeDLsGrlwAx/44DCnAlHkrq04dMXE2D7+2PKpKJTUDXlGRmrPKSnjniTCE7Hd8eGzwt6BsExz2XWjZtsbpq4u2cP30RdVvD+C6qW9xbO8OFOS78qykhmdQkZqj7YNkX/h/sHYxdOwPl74YDozNagXHXVPr25au20Tll4aoVAQBy9ZtNqhIahQGFak5qdgGCx8JA8r698NjWbnQ90SoKIO0nJ2+vWf7VqQlqBFW0hMJerRv2YhFS2rODCpSc/HOk/DMNbDh8zElLdrAET+Aw74Tbu+GgvwW3HBKf37xeHj7Jy0BN50+wKspkhqNQUVqIpHPMknLDENKqw4w9DIYcknVANm6GDeoS1VQmTlhWNLO+pGUHAwqUioq+Rhe+XO49smRl4XH9v8anPYXOOAUyGqYWzWd8nd+q0iS9pRBRUol696Hl/4Ab/4tHHPSog0MugiyW4dL3B90TtQVSlKdGFSkVLD8FfjP/8LbTwCfj3TtchgcdSVkOtBVUvIyqNRic1k5/X75LACLbxxFyyz/MynGXpgI/7yher/36DCgdB8aXU2S1ED8Cywlm9KS8JXXOdw/4GSY/Rs48MxwkGzHvtHWJ0kNyKAiJYvPlsErt8P8+8OBsWfcHR5vvz/86L3wmTySlGIMKlKcBQEsewFe+Qu8+xQEleHxtW9DeRlkZIX7hhRJKcqgIsXVomkw+7fhEvfb7Tc8XKRtvxPC5e4lKcUZVKS4KloZhpTMluG04sO+5/gTSc2OQUVJZU3R1tRbCbWiHN57Bl67Ew46Fw46Ozx+yDchkQYHnwct9oq0REmKikFFsTdl3sqq7RETZ1N4+oGcPaRbhBU1kOJV8Pr98PpfofjzNpZtqg4qLdrA0PHR1SdJMWBQUaytLtrC9dMXVe1XBnDd1Lc4tneH5H0Q3pKZMPfu8CpKUBEea9kODjkfBl8cbW2SFDMGFcXa0nWbqAxqHqsIApat25y8QeWl38PSOeF2tyPDcHLAKZDpc3Mk6csMKoq1nu1bkZagRlhJTyTo0T4JloUvLwunFM9/AE75X8grCI8f8QPYewAceqGDYyVpFwwqirWC/BbccEp/fvF4ePsnLQE3nT4gvldTggDWLID5D8LCR2DLp+HxNx+CY34YbvcZHb4kSbtkUFHsjRvUpSqozJwwLJ6zfko3hoNi33gQPn6r+nhuARz8Deh/enS1SVISM6iksFR8uGKn/BiN4wgCSCQ+366Ef94I5VsgPQv6joGDvwn7HQ9p6dHWKUlJLPn/cklNqbIClr0IC/8On30IFz0RHs/Jg6OvhpZtYcC48KskaY8ZVKRdCQJY/QYseATemgIb11R/b+3b0PGAcPu4n0ZSniSlMoOKtDOLHoN/3gCfflB9LGcv6D8WDjwT2veJqDBJah4MKtIXrX0nvI2T1zncT88MQ0pGC+jzdTjwLOg1HDKyo61TkpoJg4qatyAIH/y36DFY/DisexeO+REM/0X4/V4jYNxd0PvrkB3D2UaSlOIMKmp+Kivho7nw9j/C12dLq7+XngWlxdX7Gdlw4BlNX6MkCTCoqLn48lTih86uXowtPTu8ndNvbHh7Jyc/sjKTQcusDJbdPCbqMiQ1EwYVpa5N62DJc+Ey9p+8C+NfCcNKegYMPBs2fQIHnBTe3snOjbpaSVItDCpKHduXr39vBix5FlbOBb7wkKA1C6DgoHB79M2RlChJqhuDyi6sKdoazyXb9VWzCmH2b2oe63Qg9P782TqdBkZTlySp3gwqtZgyb2XV9oiJsyk8/UDOHtItwopUpWIbLJ8HHzwP//0XHHdtuEw9QPcjIbMl7Hs89B4J+4+snmYsSUpKBpUvWV20heunL6rarwzguqlvcWzvDvF9Ym8qCwISn7zDBenPckzaW7S45btQtrH6+0tmfCGoHA0/WQqZMXoekCRpjxhUvmTpuk1UBjWPVQQBy9ZtNqg0hSCAbZshq1W4v/59WtxxFDdmfv79MqBFG+g5LAwovUZUvzc9I3xJklKGv9W/pGf7VqQlqBFW0hMJerRvGV1RqSwIYN0S+PBFWPZv+PAl6HoYnHVf+P12vajcqwf/Xt+a/1T254rvfoecrof6RGJJaiYMKl9SkN+CG07pzy8eD2//pCXgptMHeDWlob08CZa+ACtehs3ra35v5dzqdU8SCbZ+/zXOv/45AC4rOMSQIknNiEGlFuMGdakKKjMnDHPWz54oXgUrXoUNy+GoK6qPL3w0XB0WICMH9hkMPY6C7kdBlyHVi7MBJNKatmZJUmwYVHahU74DM3fblg2waj58NK/6a8nq8HuJNBhySfXYkyGXQL9TodvQcG2TjKzIypYkxZdBRfWzaV24gFqPY6sHsD79U1gwueZ5iTTYuz90OQzKvjBI9uBvNG29kqSkZFDRzlVsCwe7rl0MHy+CNQvD18Y14fd/8DJ0PCDc7nxwOOZkn0HQ+dDwa8HA6nAiSVIdGVQUqtgGn34QPhOn21Bo3SE8/u/fw7/+T+3vabsvbP60ev/wS+GI7zd+rZKkZsOg0hxtWA7/fR7Wv1/9+vQDqCwPv3/2g+HD+gA69oOs3PCqyd79wiXpOw0Mj2d/aZDxFwfASpLUAAwqqaZ0YxhENiwnY/1SfpYxh26JtaR92Ar2Py4856PX4R9XfPW9Wa2hfe+as2x6j4JrVxhCJEmRiDSozJkzh//5n/9h3rx5rF69mmnTpjF27NgoS4qvIICtG6BkTTiTpuRj6HwIdOwbfv+DWfD3C8NzPpcFfOfzHi5bs6A6qHTsB/sNh/b7Q7te0G6/MKDk7fPVQBKDNUtaZmWw7OYxUZchSYpApEFl06ZNHHTQQVx88cWMGzcuylKaXnlpOJ1364bw65bPwoXPOh8S3mKBcHrvkz+EjZ/Apk+gorTmZ4y6qTqoZOdVh5ScvWCvbpTndeUPi3J4O+jGdR2Ppef293XoDedPbeQGSpK05yINKqNHj2b06NFRlrBD7ShiQNoy0t5Pg4w0CCrDV2V5OPC08yHhlQiAz5bBomlh+Ni25fPXpvBr2WYYdBH0+Xp47rJ/wwOnQ/nW2n/wyP9bHVQgXI/ki1q0gdwCyO0Uvrbr2A++/x/I3wdy8gH423+W8YcF4cJ1/7z3IwpPb+tToCVJSSWpxqiUlpZSWlp9VaG4uLjRftahaUu4I2si/H0HJ5x0S3VQ+XQpzPzVjj+sx1HA50ElI/sLISURhooWe4UBpGU7yOtc/b72veGcv0HrjtCqQ/g1cwdL+Wfm1Ag4PgVakpQKkiqoFBYWcsMNNzTJzyoOWvFWZQ8O6JxPelr658+dSYO0zHDcRusvXM3I2wcOPi8MIRk5kNkSslqGXzNbQpfB1efuPQCufDO8PZOdB2k7WR4+Oxf6nliv+n0KtCQpFSRVULn22muZMGFC1X5xcTFdu3ZtlJ/1SnAAJ5XdxOJvjaJl1i7+M3XoDWP/tHsfnJkDbXrscX274lOgJUmpIKme9padnU1eXl6Nl2q3/SnQ2/kUaElSMkqqoKK6GTeoS9X2zAnDHEgrSUo6kd762bhxI++//37V/tKlS3njjTdo27Yt3br5R7Uh+RRoSVIyijSozJ07l+OPP75qf/v4kwsvvJB77703oqokSVJcRBpUjjvuOIIg2PWJkiSpWXKMiiRJii2DiiRJii2DiiRJii2DiiRJii2DiiRJii2DiiRJiq2ketZPU2mZlcGym8dEXYYkSc2eV1QkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJsGVQkSVJs+fTkFOZToCVJyc4rKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYMKpIkKbYyoi5gTwRBAEBxcXHElUiSpN21/e/29r/jO5PUQaWkpASArl27RlyJJEmqq5KSEvLz83d6TiLYnTgTU5WVlaxatYrc3FwSiUSDfnZxcTFdu3ZlxYoV5OXlNehnx4HtS36p3sZUbx+kfhttX/JrrDYGQUBJSQmdO3cmLW3no1CS+opKWloaXbp0adSfkZeXl7L/AMH2pYJUb2Oqtw9Sv422L/k1Rht3dSVlOwfTSpKk2DKoSJKk2DKo7EB2djbXX3892dnZUZfSKGxf8kv1NqZ6+yD122j7kl8c2pjUg2klSVJq84qKJEmKLYOKJEmKLYOKJEmKLYOKJEmKrWYdVP70pz/Rs2dPcnJyGDRoEC+88MJOz589ezaDBg0iJyeHfffdlz//+c9NVGn91KV9s2bNIpFIfOX1zjvvNGHFu2/OnDmcfPLJdO7cmUQiwWOPPbbL9yRT/9W1fcnWf4WFhQwZMoTc3Fw6duzI2LFjeffdd3f5vmTpw/q0L9n6cNKkSQwcOLBqIbChQ4fy9NNP7/Q9ydJ/UPf2JVv/fVlhYSGJRIKrrrpqp+dF0YfNNqg8/PDDXHXVVfzsZz9j/vz5HHPMMYwePZrly5fXev7SpUs58cQTOeaYY5g/fz7XXXcdV1xxBVOmTGniyndPXdu33bvvvsvq1aurXvvvv38TVVw3mzZt4qCDDuK2227brfOTrf/q2r7tkqX/Zs+ezfjx43n55Zd57rnnKC8vZ+TIkWzatGmH70mmPqxP+7ZLlj7s0qULN998M3PnzmXu3LmccMIJnHrqqSxatKjW85Op/6Du7dsuWfrvi1577TVuv/12Bg4cuNPzIuvDoJk67LDDgksvvbTGsb59+wbXXHNNref/5Cc/Cfr27Vvj2Pe+973giCOOaLQa90Rd2/f8888HQPDZZ581QXUNCwimTZu203OSrf++aHfal8z9FwRBsHbt2gAIZs+evcNzkrkPd6d9yd6HQRAEbdq0Ce68885av5fM/bfdztqXrP1XUlIS7L///sFzzz0XDBs2LLjyyit3eG5Ufdgsr6iUlZUxb948Ro4cWeP4yJEjeemll2p9z3/+85+vnD9q1Cjmzp3Ltm3bGq3W+qhP+7Y75JBDKCgoYPjw4Tz//PONWWaTSqb+2xPJ2n9FRUUAtG3bdofnJHMf7k77tkvGPqyoqGDy5Mls2rSJoUOH1npOMvff7rRvu2Trv/HjxzNmzBhGjBixy3Oj6sNmGVTWrVtHRUUFe++9d43je++9N2vWrKn1PWvWrKn1/PLyctatW9dotdZHfdpXUFDA7bffzpQpU5g6dSp9+vRh+PDhzJkzpylKbnTJ1H/1kcz9FwQBEyZM4Oijj2bAgAE7PC9Z+3B325eMfbhw4UJat25NdnY2l156KdOmTaNfv361npuM/VeX9iVj/02ePJnXX3+dwsLC3To/qj5M6qcn76lEIlFjPwiCrxzb1fm1HY+LurSvT58+9OnTp2p/6NChrFixgt/97ncce+yxjVpnU0m2/quLZO6/yy67jAULFvDiiy/u8txk7MPdbV8y9mGfPn1444032LBhA1OmTOHCCy9k9uzZO/xjnmz9V5f2JVv/rVixgiuvvJIZM2aQk5Oz2++Log+b5RWV9u3bk56e/pWrC2vXrv1KWtyuU6dOtZ6fkZFBu3btGq3W+qhP+2pzxBFHsGTJkoYuLxLJ1H8NJRn67/LLL2f69Ok8//zzdOnSZafnJmMf1qV9tYl7H2ZlZdGrVy8GDx5MYWEhBx10EL///e9rPTcZ+68u7atNnPtv3rx5rF27lkGDBpGRkUFGRgazZ8/mD3/4AxkZGVRUVHzlPVH1YbMMKllZWQwaNIjnnnuuxvHnnnuOI488stb3DB069Cvnz5gxg8GDB5OZmdlotdZHfdpXm/nz51NQUNDQ5UUimfqvocS5/4Ig4LLLLmPq1Kn861//omfPnrt8TzL1YX3aV5s492FtgiCgtLS01u8lU//tyM7aV5s499/w4cNZuHAhb7zxRtVr8ODBnHfeebzxxhukp6d/5T2R9WGjDtWNscmTJweZmZnBXXfdFSxevDi46qqrglatWgXLli0LgiAIrrnmmuD888+vOv+DDz4IWrZsGVx99dXB4sWLg7vuuivIzMwMHn300aiasFN1bd8tt9wSTJs2LXjvvfeCt956K7jmmmsCIJgyZUpUTdipkpKSYP78+cH8+fMDIJg4cWIwf/784MMPPwyCIPn7r67tS7b++/73vx/k5+cHs2bNClavXl312rx5c9U5ydyH9WlfsvXhtddeG8yZMydYunRpsGDBguC6664L0tLSghkzZgRBkNz9FwR1b1+y9V9tvjzrJy592GyDShAEwR//+Mege/fuQVZWVnDooYfWmDp44YUXBsOGDatx/qxZs4JDDjkkyMrKCnr06BFMmjSpiSuum7q07ze/+U2w3377BTk5OUGbNm2Co48+OnjyyScjqHr3bJ8K+OXXhRdeGARB8vdfXduXbP1XW9uA4J577qk6J5n7sD7tS7Y+/Na3vlX1+6VDhw7B8OHDq/6IB0Fy918Q1L19ydZ/tflyUIlLHyaC4PORMJIkSTHTLMeoSJKk5GBQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkSRJsWVQkRQbn3zyCZ06deKmm26qOvbKK6+QlZXFjBkzIqxMUlR8KKGkWHnqqacYO3YsL730En379uWQQw5hzJgx3HrrrVGXJikCBhVJsTN+/HhmzpzJkCFDePPNN3nttdfIycmJuixJETCoSIqdLVu2MGDAAFasWMHcuXMZOHBg1CVJiohjVCTFzgcffMCqVauorKzkww8/jLocSRHyioqkWCkrK+Owww7j4IMPpm/fvkycOJGFCxey9957R12apAgYVCTFyo9//GMeffRR3nzzTVq3bs3xxx9Pbm4uTzzxRNSlSYqAt34kxcasWbO49dZbuf/++8nLyyMtLY3777+fF198kUmTJkVdnqQIeEVFkiTFlldUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbBlUJElSbP1/Pl5jkbeIPCcAAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#hideme\n", + "import numpy as np\n", + "import scipy.stats as stats\n", + "import matplotlib.pyplot as plt \n", + "\n", + "def f(x):\n", + " return 0.25*x**2 + 1\n", + "\n", + "n = 10 \n", + "xs = np.linspace(0,4,n)\n", + "sigma_y=0.4\n", + "y2s = stats.multivariate_normal.rvs(f(xs), np.eye(n)*sigma_y**2, 10000, random_state=42)\n", + " \n", + "x_axis = np.linspace(0,4,100)\n", + "plt.errorbar(xs,y2s[0],yerr=sigma_y,fmt=\".\")\n", + "plt.plot(x_axis, f(x_axis),'--')\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.savefig(\"line.png\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "4bf58838", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Perform line fit" + ] + }, + { + "cell_type": "code", + "execution_count": 173, + "id": "c599579b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "correct model: [1.99378966 1.19164511] [[ 0.00981818 -0.01963636]\n", + " [-0.01963636 0.05527273]]\n", + "wrong model: [0.99378966 0.59905253] [[ 0.00981818 -0.01963636]\n", + " [-0.01963636 0.05527273]]\n" + ] + } + ], + "source": [ + "p, V = fit(ys[0])\n", + "print(\"correct model:\", p, V)\n", + "p, V = fit(y2s[0])\n", + "print(\"wrong model:\", p, V)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 174, + "id": "17dca38c", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAGwCAYAAACHJU4LAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABQQUlEQVR4nO3de5iN9eL//+daa85jZhgMg8mhwWAcBjOTKJTYRSHZOhDS3io5bmLsQ7t+348hoq2DUioqURuldkrsUNnMGOdDIufDNMZhZsx5Zt2/P+6Qchpm5l5rzetxXXNZ9z33utfr7pb1uu7D+7YZhmEgIiIi4oLsVgcQERERuRwVFREREXFZKioiIiLislRURERExGWpqIiIiIjLUlERERERl6WiIiIiIi7Ly+oAN8LpdHLs2DGCgoKw2WxWxxEREZFrYBgGWVlZ1KpVC7v9ysdM3LqoHDt2jIiICKtjiIiIyHU4fPgwderUueIybl1UgoKCAHNDg4ODLU4jIiIi1yIzM5OIiIjz3+NX4tZF5dzpnuDgYBUVERERN3Mtl23oYloRERFxWSoqIiIi4rJUVERERMRlqaiIiIiIy1JREREREZeloiIiIiIuS0VFREREXJaKioiIiLgsFRURERFxWSoqIiIi4rJUVERERMRlqaiIiIiIy1JREREREZeloiIiIiIuS0VFREREfienoIh6E/5DvQn/IaegyLIcKioiIiLislRURERExGWpqIiIiIjLUlERERERl6WiIiIiIi5LRUVERERcloqKiIiIuCwVFREREXFZKioiIiLislRURERExGWpqIiIiIjLUlERERERl6WiIiIiIi5LRUVERERcloqKiIiIuCwVFREREXFZKioiIiLislRURERExGWpqIiIiIjLUlERERERl6WiIiIiIi5LRUVERERcloqKiIiIuCwVFREREbmi1Iw8yz5bRUVERER+Z1HKkfOvu0xfzcLkQ5bkUFERERGRixzPyOXZpTvOTzsNmLh4O8czcss9i4qKiIiIXGR/ejZO4+J5xYbBgfSccs+ioiIiIiIXqV8tELvt4nkOm4161QLKPYuKioiIiFwkPMSf5+5rdn7aboNJ90cTHuJf7llUVEREROR3+rSpc/71ijEd6Rd7kyU5VFRERETkimqG+Fn22SoqIiIi4rJUVERERMRlqaiIiIiIy1JRERER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551s27aNzZs3n/9p27YtjzzyCJs3b8bhcPzuPZbtwzK9VNeFLViwwPD29jbmzJlj7Ny50xg1apQRGBhoHDhwwDAMw5gwYYIxYMCA88vv27fPCAgIMEaPHm3s3LnTmDNnjuHt7W38+9//tmoTrqik2zdjxgxjyZIlxo8//mhs377dmDBhggEYixYtsmoTrigrK8vYtGmTsWnTJgMwpk+fbmzatMk4ePCgYRjuv/9Kun3utv+efPJJIyQkxFi1apVx/Pjx8z85OTnnl3HnfXg92+du+zAhIcFYs2aNsX//fmPr1q3GxIkTDbvdbixfvtwwDPfef4ZR8u1zt/13Kb+968dV9mGFLSqGYRivvvqqUbduXcPHx8do3br1RbcODhw40OjYseNFy69atcqIiYkxfHx8jHr16hmzZs0q58QlU5LtmzJlinHzzTcbfn5+RpUqVYwOHToY//nPfyxIfW3O3Qr425+BAwcahuH++6+k2+du++9S2wYY77zzzvll3HkfXs/2uds+fOyxx87/+1K9enXjzjvvPP8lbhjuvf8Mo+Tb527771J+W1RcZR/aDOOXK2FEREREXEyFvEZFRERE3IOKioiIiLgsFRURERFxWSoqIiIi4rJUVERERMRlqaiIiIiIy1JREREREZeloiIiIiIuS0VFREREXJaKioiIiLgsFRURERFxWSoqIuIyTpw4Qc2aNZk0adL5eevXr8fHx4fly5dbmExErKKHEoqIS/niiy/o1asXa9euJSoqipiYGLp3785LL71kdTQRsYCKioi4nGHDhrFixQpiY2PZsmULycnJ+Pn5WR1LRCygoiIiLic3N5fo6GgOHz7Mhg0baNGihdWRRMQiukZFRFzOvn37OHbsGE6nk4MHD1odR0QspCMqIuJSCgoKiIuLo1WrVkRFRTF9+nS2bdtGjRo1rI4mIhZQURERlzJu3Dj+/e9/s2XLFipVqkTnzp0JCgri888/tzqaiFhAp35ExGWsWrWKl156iffee4/g4GDsdjvvvfce3333HbNmzbI6nohYQEdURERExGXpiIqIiIi4LBUVERERcVkqKiIiIuKyVFRERETEZamoiIiIiMtSURERERGXpaIiIiIiLktFRURERFyWioqIiIi4LBUVERERcVkqKiIiIuKy/n/KMOGWvW/s9QAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.errorbar(xs,y2s[0],yerr=sigma_y,fmt=\".\")\n", + "plt.plot(x_axis, f(x_axis),'--')\n", + "plt.plot(x_axis, p[0] * x_axis + p[1],'-')\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.savefig(\"line.png\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "4ee549ea", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Add the fit and compute $\\chi^2$" + ] + }, + { + "cell_type": "code", + "execution_count": 175, + "id": "a6afc5c7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "15.987344394376926\n" + ] + } + ], + "source": [ + "p = np.zeros((len(ys),2))\n", + "chi2s = np.zeros(len(y2s))\n", + "for i in range(len(y2s)):\n", + " p[i] = fit(y2s[i])[0]\n", + " chi2s[i] = np.sum(((y2s[i] - p[i,0] * xs - p[i,1])/sigma_y)**2)\n", + "\n", + "chi_axis = np.linspace(0,30,100) \n", + "plt.hist(chi2s,bins=50, density=True)\n", + "# draw Chi2 distribution\n", + "plt.xlabel(\"$\\chi^2$\")\n", + "plt.show()\n", + "print(np.mean(chi2s))" + ] + }, + { + "cell_type": "markdown", + "id": "b6900f2c", + "metadata": {}, + "source": [ + "### Compute p-value for goodness of fit" + ] + }, + { + "cell_type": "code", + "execution_count": 176, + "id": "b05f7c60", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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11xzTXzsYx+L3r17R11dXXzlK1+J1157Lc+ZAYAKVnJ87N69O8aMGRMLFizY77633norNmzYENddd11s2LAhfvzjH8eWLVvi3HPPzWVYAKDyVZf6gGnTpsW0adM6vK+2tjZWrlzZbt8dd9wR48ePj1deeSWGDBmy32OKxWIUi8W2262traWOBABUkLJ/5qOlpSWqqqrimGOO6fD+pqamqK2tbdvq6+vLPRIA0InKGh+//e1vo7GxMS644IKoqanp8Jh58+ZFS0tL29bc3FzOkQCATlby2y4H6913340vf/nLsXfv3li4cOH7HlcoFKJQKJRrDADgMFOW+Hj33XfjS1/6Umzbti3+8z//832vegAAR57c42NfeDz//PPx2GOPRb9+/fI+BQBQwUqOj127dsXWrVvbbm/bti02bdoUffv2jbq6uvjiF78YGzZsiH//93+PPXv2xPbt2yMiom/fvtGjR4/8JgcAKlLJ8bFu3bqYMmVK2+2GhoaIiJg1a1bccMMNsWLFioiIOPnkk9s97rHHHovJkycf+qQAQJdQcnxMnjw5six73/sPdB8AgO92AQCSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEBwCQlPgAAJISHwBAUuIDAEhKfAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApEqOjzVr1sSMGTOirq4uqqqqYvny5e3uz7Isbrjhhqirq4tevXrF5MmT49lnn81rXgCgwpUcH7t3744xY8bEggULOrz/1ltvjdtuuy0WLFgQzzzzTAwcODA+85nPxM6dOz/0sABA5asu9QHTpk2LadOmdXhflmUxf/78uPbaa+MLX/hCRETce++9MWDAgFiyZElccskl+z2mWCxGsVhsu93a2lrqSABABcn1Mx/btm2L7du3x9SpU9v2FQqFOOOMM+KJJ57o8DFNTU1RW1vbttXX1+c5EgBwmMk1PrZv3x4REQMGDGi3f8CAAW33/b558+ZFS0tL29bc3JznSADAYabkt10ORlVVVbvbWZbtt2+fQqEQhUKhHGMAAIehXK98DBw4MCJiv6scO3bs2O9qCABwZMo1Po477rgYOHBgrFy5sm3fO++8E6tXr46JEyfmeSoAoEKV/LbLrl27YuvWrW23t23bFps2bYq+ffvGkCFDYu7cuXHTTTfFiBEjYsSIEXHTTTfF0UcfHRdccEGugwMAlank+Fi3bl1MmTKl7XZDQ0NERMyaNSsWL14cX/3qV+Ptt9+Oyy67LH7961/HhAkT4tFHH40+ffrkNzUAULGqsizLOnuI/6u1tTVqa2ujpaUlampqcn/+YY0PfuAxL908PffzAkBXVsrrt+92AQCSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEBwCQlPgAAJISHwBAUuIDAEhKfAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApHKPj/feey++9rWvxXHHHRe9evWK4cOHxze+8Y3Yu3dv3qcCACpQdd5PeMstt8Sdd94Z9957b4waNSrWrVsXF110UdTW1sacOXPyPh0AUGFyj48nn3wyPve5z8X06dMjImLYsGGxdOnSWLduXYfHF4vFKBaLbbdbW1vzHgkAOIzk/rbL6aefHv/xH/8RW7ZsiYiIn/3sZ/H444/H2Wef3eHxTU1NUVtb27bV19fnPRIAcBjJ/crHNddcEy0tLTFy5Mjo1q1b7NmzJ7797W/Hn/7pn3Z4/Lx586KhoaHtdmtrqwABgC4s9/hYtmxZ3HfffbFkyZIYNWpUbNq0KebOnRt1dXUxa9as/Y4vFApRKBTyHgMAOEzlHh9XX311NDY2xpe//OWIiPjYxz4WL7/8cjQ1NXUYHwDAkSX3z3y89dZbcdRR7Z+2W7duftUWAIiIMlz5mDFjRnz729+OIUOGxKhRo2Ljxo1x2223xcUXX5z3qQCACpR7fNxxxx1x3XXXxWWXXRY7duyIurq6uOSSS+LrX/963qcCACpQ7vHRp0+fmD9/fsyfPz/vpwYAugDf7QIAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEBwCQlPgAAJISHwBAUuIDAEhKfAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBIqizx8ctf/jL+7M/+LPr16xdHH310nHzyybF+/fpynAoAqDDVeT/hr3/965g0aVJMmTIlfvKTn0T//v3jhRdeiGOOOSbvUwEAFSj3+Ljllluivr4+7rnnnrZ9w4YNy/s0AECFyv1tlxUrVsS4cePiT/7kT6J///7xiU98Iu6+++73Pb5YLEZra2u7DQDounKPjxdffDEWLVoUI0aMiEceeSQuvfTSmD17dvzzP/9zh8c3NTVFbW1t21ZfX5/3SADAYaQqy7Iszyfs0aNHjBs3Lp544om2fbNnz45nnnkmnnzyyf2OLxaLUSwW2263trZGfX19tLS0RE1NTZ6jRUTEsMYHP/CYl26envt5AaAra21tjdra2oN6/c79ysegQYPipJNOarfvxBNPjFdeeaXD4wuFQtTU1LTbAICuK/f4mDRpUjz33HPt9m3ZsiWGDh2a96kAgAqUe3xcddVV8dRTT8VNN90UW7dujSVLlsRdd90Vl19+ed6nAgAqUO7xccopp8QDDzwQS5cujdGjR8c3v/nNmD9/flx44YV5nwoAqEC5/52PiIhzzjknzjnnnHI8NQBQ4Xy3CwCQlPgAAJISHwBAUuIDAEhKfAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBIqixfLFfphjU++IHHvHTz9ASTAEDX48oHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEBwCQlPgAAJISHwBAUuIDAEhKfAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSKnt8NDU1RVVVVcydO7fcpwIAKkBZ4+OZZ56Ju+66Kz7+8Y+X8zQAQAUpW3zs2rUrLrzwwrj77rvjD/7gD8p1GgCgwpQtPi6//PKYPn16nHnmmQc8rlgsRmtra7sNAOi6qsvxpD/4wQ9iw4YN8cwzz3zgsU1NTXHjjTeWYwwA4DCU+5WP5ubmmDNnTtx3333Rs2fPDzx+3rx50dLS0rY1NzfnPRIAcBjJ/crH+vXrY8eOHTF27Ni2fXv27Ik1a9bEggULolgsRrdu3druKxQKUSgU8h4DADhM5R4ff/zHfxw///nP2+276KKLYuTIkXHNNde0Cw8A4MiTe3z06dMnRo8e3W5f7969o1+/fvvtBwCOPP7CKQCQVFl+2+X3rVq1KsVpAIAK4MoHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkleTvfHRFwxof/MBjXrp5eoJJAKCyuPIBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AICnxAQAkJT4AgKTEBwCQlO92KSPf/wIA+3PlAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS/shYJ/OHyAA40rjyAQAkJT4AgKRyj4+mpqY45ZRTok+fPtG/f/8477zz4rnnnsv7NABAhco9PlavXh2XX355PPXUU7Fy5cp47733YurUqbF79+68TwUAVKDcP3D68MMPt7t9zz33RP/+/WP9+vXx6U9/Ou/TAQAVpuy/7dLS0hIREX379u3w/mKxGMVise12a2truUcCADpRWT9wmmVZNDQ0xOmnnx6jR4/u8Jimpqaora1t2+rr68s5EgDQycoaH1dccUX893//dyxduvR9j5k3b160tLS0bc3NzeUcCQDoZGV72+XKK6+MFStWxJo1a2Lw4MHve1yhUIhCoVCuMQCAw0zu8ZFlWVx55ZXxwAMPxKpVq+K4447L+xQAQAXLPT4uv/zyWLJkSfzrv/5r9OnTJ7Zv3x4REbW1tdGrV6+8TwcAVJjcP/OxaNGiaGlpicmTJ8egQYPatmXLluV9KgCgApXlbRfy5cvnAOhKfLcLAJBU2f/IGGm4OgJApXDlAwBISnwAAEmJDwAgKfEBACTlA6dHEB9KBeBwID5oR6AAUG7edgEAkhIfAEBS4gMASEp8AABJ+cApJfOhVAA+DFc+AICkxAcAkJS3XSgLb80A8H5c+QAAkhIfAEBS3nah03hrBuDIJD6oeCIGoLKIDw5rBxMWeT2PQAFIQ3zA/5dX6IgYgAMTH5AzV1kADkx8QCcQKMCRzK/aAgBJufIBHBRXa4C8uPIBACTlygccpvL67ZuUXB0BDoYrHwBAUq58AEkdjld0XI2BtMQHcMRL+QfmvDUFZYyPhQsXxne+8514/fXXY9SoUTF//vz41Kc+Va7TAXS6lF8HcLjJK5jE2ZGhLPGxbNmymDt3bixcuDAmTZoU//AP/xDTpk2LzZs3x5AhQ8pxSgA6UcpgcqWq8lVlWZbl/aQTJkyIT37yk7Fo0aK2fSeeeGKcd9550dTUdMDHtra2Rm1tbbS0tERNTU3eo1Xkf1EAQJ7KEUylvH7nfuXjnXfeifXr10djY2O7/VOnTo0nnnhiv+OLxWIUi8W22y0tLRHxu39EOewtvlWW5wWASlGO19h9z3kw1zRyj4833ngj9uzZEwMGDGi3f8CAAbF9+/b9jm9qaoobb7xxv/319fV5jwYARETt/PI9986dO6O2tvaAx5TtA6dVVVXtbmdZtt++iIh58+ZFQ0ND2+29e/fGr371q+jXr1+Hx38Yra2tUV9fH83NzWV5S4f/Za3TsM7pWOs0rHM6ea91lmWxc+fOqKur+8Bjc4+PY489Nrp167bfVY4dO3bsdzUkIqJQKEShUGi375hjjsl7rHZqamr8UCdirdOwzulY6zSsczp5rvUHXfHYJ/e/cNqjR48YO3ZsrFy5st3+lStXxsSJE/M+HQBQYcrytktDQ0PMnDkzxo0bF6eddlrcdddd8corr8Sll15ajtMBABWkLPFx/vnnx5tvvhnf+MY34vXXX4/Ro0fHQw89FEOHDi3H6Q5aoVCI66+/fr+3eciftU7DOqdjrdOwzul05lqX5e98AAC8H99qCwAkJT4AgKTEBwCQlPgAAJLqcvGxcOHCOO6446Jnz54xduzYWLt27QGPX716dYwdOzZ69uwZw4cPjzvvvDPRpJWtlHX+8Y9/HJ/5zGfiD//wD6OmpiZOO+20eOSRRxJOW9lK/Zne56c//WlUV1fHySefXN4Bu4hS17lYLMa1114bQ4cOjUKhEB/96Efjn/7pnxJNW9lKXev7778/xowZE0cffXQMGjQoLrroonjzzTcTTVuZ1qxZEzNmzIi6urqoqqqK5cuXf+Bjkr4eZl3ID37wg6x79+7Z3XffnW3evDmbM2dO1rt37+zll1/u8PgXX3wxO/roo7M5c+Zkmzdvzu6+++6se/fu2Q9/+MPEk1eWUtd5zpw52S233JL913/9V7Zly5Zs3rx5Wffu3bMNGzYknrzylLrW+/zmN7/Jhg8fnk2dOjUbM2ZMmmEr2KGs87nnnptNmDAhW7lyZbZt27bs6aefzn76058mnLoylbrWa9euzY466qjsu9/9bvbiiy9ma9euzUaNGpWdd955iSevLA899FB27bXXZj/60Y+yiMgeeOCBAx6f+vWwS8XH+PHjs0svvbTdvpEjR2aNjY0dHv/Vr341GzlyZLt9l1xySXbqqaeWbcauoNR17shJJ52U3XjjjXmP1uUc6lqff/752de+9rXs+uuvFx8HodR1/slPfpLV1tZmb775ZorxupRS1/o73/lONnz48Hb7br/99mzw4MFlm7GrOZj4SP162GXednnnnXdi/fr1MXXq1Hb7p06dGk888USHj3nyySf3O/6ss86KdevWxbvvvlu2WSvZoazz79u7d2/s3Lkz+vbtW44Ru4xDXet77rknXnjhhbj++uvLPWKXcCjrvGLFihg3blzceuut8ZGPfCSOP/74+Nu//dt4++23U4xcsQ5lrSdOnBivvvpqPPTQQ5FlWfzP//xP/PCHP4zp06enGPmIkfr1sGzfapvaG2+8EXv27Nnvy+sGDBiw35fc7bN9+/YOj3/vvffijTfeiEGDBpVt3kp1KOv8+/7u7/4udu/eHV/60pfKMWKXcShr/fzzz0djY2OsXbs2qqu7zP+8y+pQ1vnFF1+Mxx9/PHr27BkPPPBAvPHGG3HZZZfFr371K5/7OIBDWeuJEyfG/fffH+eff3789re/jffeey/OPffcuOOOO1KMfMRI/XrYZa587FNVVdXudpZl++37oOM72k97pa7zPkuXLo0bbrghli1bFv379y/XeF3Kwa71nj174oILLogbb7wxjj/++FTjdRml/Ezv3bs3qqqq4v7774/x48fH2WefHbfddlssXrzY1Y+DUMpab968OWbPnh1f//rXY/369fHwww/Htm3bfFdYGaR8Pewy/2l07LHHRrdu3far5x07duxXc/sMHDiww+Orq6ujX79+ZZu1kh3KOu+zbNmy+Iu/+Iv4l3/5lzjzzDPLOWaXUOpa79y5M9atWxcbN26MK664IiJ+9yKZZVlUV1fHo48+Gn/0R3+UZPZKcig/04MGDYqPfOQj7b4+/MQTT4wsy+LVV1+NESNGlHXmSnUoa93U1BSTJk2Kq6++OiIiPv7xj0fv3r3jU5/6VHzrW99yhTonqV8Pu8yVjx49esTYsWNj5cqV7favXLkyJk6c2OFjTjvttP2Of/TRR2PcuHHRvXv3ss1ayQ5lnSN+d8Xjz//8z2PJkiXeqz1Ipa51TU1N/PznP49Nmza1bZdeemmccMIJsWnTppgwYUKq0SvKofxMT5o0KV577bXYtWtX274tW7bEUUcdFYMHDy7rvJXsUNb6rbfeiqOOav9S1a1bt4j43/8y58NL/npYlo+xdpJ9v8L1/e9/P9u8eXM2d+7crHfv3tlLL72UZVmWNTY2ZjNnzmw7ft+vFl111VXZ5s2bs+9///t+1fYglLrOS5Ysyaqrq7Pvfe972euvv962/eY3v+msf0LFKHWtf5/fdjk4pa7zzp07s8GDB2df/OIXs2effTZbvXp1NmLEiOwv//IvO+ufUDFKXet77rknq66uzhYuXJi98MIL2eOPP56NGzcuGz9+fGf9EyrCzp07s40bN2YbN27MIiK77bbbso0bN7b9SnNnvx52qfjIsiz73ve+lw0dOjTr0aNH9slPfjJbvXp1232zZs3KzjjjjHbHr1q1KvvEJz6R9ejRIxs2bFi2aNGixBNXplLW+YwzzsgiYr9t1qxZ6QevQKX+TP9f4uPglbrOv/jFL7Izzzwz69WrVzZ48OCsoaEhe+uttxJPXZlKXevbb789O+mkk7JevXplgwYNyi688MLs1VdfTTx1ZXnssccO+P+7nf16WJVlrlsBAOl0mc98AACVQXwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJiQ8AIKnqzh4A6PomT54co0ePjoiI++67L7p16xZ//dd/Hd/85jejqqqqk6cDUnPlA0ji3nvvjerq6nj66afj9ttvj7//+7+Pf/zHf+zssYBO4FttgbKbPHly7NixI5599tm2Kx2NjY2xYsWK2Lx5cydPB6TmygeQxKmnntruLZbTTjstnn/++dizZ08nTgV0BvEBACQlPoAknnrqqf1ujxgxIrp169ZJEwGdRXwASTQ3N0dDQ0M899xzsXTp0rjjjjtizpw5nT0W0An8qi2QxFe+8pV4++23Y/z48dGtW7e48sor46/+6q86eyygE4gPIInu3bvH/PnzY9GiRZ09CtDJvO0CACQlPgCApPyRMQAgKVc+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACT1/wAgaidHrs5BsAAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.hist(stats.chi2.sf(chi2s,8), bins=50, density=True)\n", + "plt.xlabel(\"p\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "632583d4-1e97-498b-b8f3-91e259baa24d", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## Maximum-Likelihood \n", + "\n", + "Maximum-Likelihood (ML) data: $x_1,...,x_N$ \n", + "\n", + "Probability to observe data for model with parameters $s$:\n", + "$$P(x_1,...,x_N; a) = \\prod_i P(x_i ; a)$$\n", + "\n", + "Likelihood function: $$L(a) = \\prod_i P(x_i ; a)$$\n", + "\n", + "ML estimator $\\hat a$: position of maximum of $L(a)$:\n", + "$$\\left.\\frac{dL}{da}\\right|_{a = \\hat a} = 0$$ (more practical:\n", + "log-likelihood: $-\\ln L = \\sum_i -\\ln P(x_i; a)$)" + ] + }, + { + "cell_type": "markdown", + "id": "dbc80ced", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### Example\n", + "\n", + "\n", + "$y(x) = mx + a$: Determine $\\hat m$ and $\\hat a$\n", + "daten: $y_1,...,y_N$ and model: \n", + "\n", + "$$P(y_i; m, a) = G(y_i; \\mu = m x_i + a, \\sigma=\\sigma_i)$$\n", + "$$L(m, a) = \\prod_i G(y_i; \\mu = m x_i + a, \\sigma=\\sigma_i)$$\n", + "\n", + "<img src=\"./figures/11/line.png\" alt=\"image\" />\n" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "id": "7ce7209b", + "metadata": { + "cell_style": "split" + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import scipy.stats as stats\n", + "\n", + "def like(m, a, xs, ys, sigma_y):\n", + " return np.prod(stats.norm.pdf(ys,xs*m+a,sigma_y))\n", + "\n", + "like_vect = np.vectorize(like, excluded=[2,3])\n", + "m_axis = np.linspace(-0,3,200)\n", + "\n", + "plt.plot(m_axis, like_vect(m_axis,1,xs, ys[0], sigma_y))\n", + "plt.xlabel(\"m\")\n", + "#plt.yscale('log')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "id": "3865ec3c", + "metadata": { + "cell_style": "split" + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(m_axis, like_vect(2, m_axis, xs, ys[0], sigma_y))\n", + "plt.xlabel(\"a\")\n", + "plt.ylabel(\"$L(a; m=2)$\")\n", + "#plt.yscale('log')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "556b0e57", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Log-likelihood" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "id": "199578d3", + "metadata": { + "cell_style": "split", + "slideshow": { + "slide_type": "slide" + } + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def logL(m, a, xs, ys, sigma_y):\n", + " return np.sum(-stats.norm.logpdf(ys,xs*m+a,sigma_y))\n", + "\n", + "logL_vect = np.vectorize(logL, excluded=[2,3])\n", + "\n", + "m_axis = np.linspace(-5,5,200)\n", + "plt.plot(m_axis, logL_vect(m_axis,1,xs, ys[0], sigma_y))\n", + "plt.xlabel(\"m\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 133, + "id": "591cb218", + "metadata": { + "cell_style": "split" + }, + "outputs": [ + { + "data": { + "image/png": "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fPMNhw4dYvHixUyfPp1bbrkFKDmdFh8fz5QpU1i8eDHbt29n5MiRBAYGMnz4cABsNhujRo1i/PjxLF++nM2bN3PPPffQpk0b+vXrZ+bb80g+XlYeub5k7dHrCQfIztfskYiIuD5vswNcqtdee41nnnmGhx56iPT0dKKiorj//vv55z//6Rzz5JNPkpuby0MPPURGRgbdunXju+++Izg42DlmxowZeHt7M3ToUHJzc7n++ut599138fLS5eaVYUj7KP7z436STubw3upDjLm2qdmRRERE/pDb7HPkSi51nwQp8fnmFOI/SiTE35sVE67DFuBjdiQREamGqmSfo8LCQpKTk9mzZw+nT5++kpcSDzaoXRRXRdQgM6+IN34+aHYcERGRP3TZ5Sg7O5s5c+bQt29fbDYbjRo1olWrVtSpU4eGDRsyevRo1q9fXxlZxU15WS2Mj2sOwNurkjiRlX+R7xARETHPZZWjGTNm0KhRI9544w2uu+46Fi1aRGJiInv27GHNmjVMmjSJoqIibrjhBgYMGMC+ffsqK7e4mbhWEbSrb+NsQTGzftpvdhwREZHfdVlrju644w7++c9/0qZNmz8cl5+fz1tvvYWvry/33XffFYd0NVpzVD4r953knrd+wdfLyo9P9KVezQCzI4mISDVyqZ/fWpBdDipH5WMYBsPf+IU1B08xrHM0L9ze1uxIIiJSjXjcjWfF/VksFh7vX7L26NNNRzl4ItvkRCIiIucrVznKzc1l5cqV7Ny587zn8vLyeP/99684mHimTg1rcX2LcIodBjO+15o0ERFxPZddjvbu3UvLli255ppraNOmDX379uXYsWPO5+12O/fee2+FhhTP8uuVa19tSWVnaqbJaURERMq67HI0YcIE2rRpQ3p6Onv27CEkJIRevXpx5MiRysgnHqhVVAiD2kUB8PJ3e0xOIyIiUtZll6PVq1czZcoUateuTdOmTfnyyy+58cYb6d27NwcPaoM/uTSP9WuGl9XC8t3pbDysDURFRMR1XHY5ys3Nxdu77C3Z/vOf/zB48GD69OnD3r17KyyceK7GdWpwR6f6AExbugddNCkiIq7isstRixYt2LBhw3nHX3vtNW6++WYGDx5cIcHE8z1yfTN8vaz8knSaFftOmh1HREQEKEc5uuWWW/jwww8v+NzMmTO56667NAsglySqZgD3dG8I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Q0PNjuG2CgoK2LhxI3FxcWWOx8XFsXr1apNSVQ92ux1Af34rwZgxY7jpppvo16+f2VHcjm48KxXGMAxGjhzJAw88QOfOnTl06JDZkaqFAwcO8Nprr/Hyyy+bHcVtnTx5kuLiYiIiIsocj4iIIC0tzaRUns8wDMaNG8fVV19NbGys2XE8ysKFC9m0aRPr1683O4pb0syRXNTkyZOxWCx/+NiwYQOvvfYamZmZTJw40ezIbulSf86lpaamMmDAAO644w7uu+8+k5J7DovFUuZrwzDOOyYV5+GHH2br1q18+OGHZkfxKMnJyTz66KPMnz8ff39/s+O4Ja05kos6efIkJ0+e/MMxjRo14s477+Srr74q82FSXFyMl5cXd999N++9915lR3Vrl/pz/vUvu9TUVK699lq6devGu+++i9Wq33XKq6CggMDAQD755BNuueUW5/FHH32UxMREEhISTEznmcaOHcvnn3/Ozz//TExMjNlxPMrnn3/OLbfcgpeXl/NYcXExFosFq9VKfn5+mefkfCpHUmGOHDlCZmam8+vU1FT69+/Pp59+Srdu3ahfv76J6TxLSkoK1157LZ06dWL+/Pn6i64CdOvWjU6dOjFr1iznsVatWnHzzTdrQXYFMgyDsWPHsnjxYn766SeaNWtmdiSPk5WVxeHDh8scu/fee2nRogUTJkzQKcxLoDVHUmEaNGhQ5usaNWoA0KRJExWjCpSamkrfvn1p0KABL730EidOnHA+FxkZaWIy9zZu3DhGjBhB586d6dGjB3PnzuXIkSM88MADZkfzKGPGjGHBggV88cUXBAcHO9d02Ww2AgICTE7nGYKDg88rQEFBQYSFhakYXSKVIxE3891337F//372799/XunURHD5DRs2jFOnTvHcc89x7NgxYmNjWbJkCQ0bNjQ7mkf5dauEvn37ljn+zjvvMHLkyKoPJHIBOq0mIiIiUopWcIqIiIiUonIkIiIiUorKkYiIiEgpKkciIiIipagciYiIiJSiciQiIiJSisqRiIiISCkqRyIiIiKlqByJiIiIlKJyJCIiIlKKypGIiIhIKSpHIiLA0qVLufrqq6lZsyZhYWEMHDiQAwcOmB1LREygciQiAuTk5DBu3DjWr1/P8uXLsVqt3HLLLTgcDrOjiUgVsxiGYZgdQkTE1Zw4cYLw8HC2bdtGbGys2XFEpApp5khEBDhw4ADDhw+ncePGhISEEBMTA8CRI0dMTiYiVc3b7AAiIq5g0KBBREdH88YbbxAVFYXD4SA2NpaCggKzo4lIFVM5EpFq79SpU+zatYs5c+bQu3dvAFauXGlyKhExi8qRiFR7tWrVIiwsjLlz51K3bl2OHDnCU089ZXYsETGJ1hyJSLVntVpZuHAhGzduJDY2lscee4wXX3zR7FgiYhJdrSYiIiJSimaOREREREpRORIREREpReVIREREpBSVIxEREZFSVI5ERERESlE5EhERESlF5UhERESkFJUjERERkVJUjkRERERKUTkSERERKUXlSERERKSU/wOu/3jeGh/osQAAAABJRU5ErkJggg==", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(m_axis, logL_vect(2, m_axis, xs, ys[0], sigma_y))\n", + "plt.xlabel(\"a\")\n", + "plt.ylabel(\"$-\\ln L(a; m=2)$\")\n", + "plt.savefig(\"loglike_a.png\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "952ea74d", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Find the minimum of log-likelihood" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "id": "1b35afbb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " message: Optimization terminated successfully.\n", + " success: True\n", + " status: 0\n", + " fun: 2.3768486152842225\n", + " x: [ 1.994e+00 1.192e+00]\n", + " nit: 4\n", + " jac: [ 5.662e-07 8.941e-08]\n", + " hess_inv: [[ 9.818e-03 -1.964e-02]\n", + " [-1.964e-02 5.527e-02]]\n", + " nfev: 18\n", + " njev: 6\n", + "[1.99378965 1.19164514] [[ 0.00981818 -0.01963636]\n", + " [-0.01963636 0.05527273]]\n" + ] + } + ], + "source": [ + "res = opti.minimize( lambda p: logL(p[0], p[1],xs, ys[0], sigma_y), x0=np.zeros(2))\n", + "print(res)\n", + "print(res.x, res.hess_inv)\n", + "#print(mhat, ahat, V_am)\n", + "#print(res.hess_inv/V_am)" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "id": "a66199ac", + "metadata": { + "cell_style": "split" + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(m_axis, logL_vect(2, m_axis, xs, ys[0], sigma_y))\n", + "plt.xlabel(\"a\")\n", + "plt.ylabel(\"$-\\ln L(a; m=2)$\")\n", + "plt.savefig(\"loglike_a.png\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "dd0afbf7-8504-46f8-b3da-4fb33487a635", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "### ML estimator for Poisson $\\mu$ \n", + "$$\\begin{aligned}\n", + " L(\\mu) & = & \\prod_i^N P(k_i; \\mu) = \\prod_i^N \\frac{\\mu^{k_i}e^{-\\mu}}{k_i!}\\\\\n", + " \\ln L(\\mu) & = & \\sum_{i=1}^N \\left( \\ln \\mu^{k_i} + \\ln e^{-\\mu} - \\ln k_i!\\right)\\\\\n", + " & = & \\sum_{i=1}^N \\left( k_i \\ln \\mu -\\mu - \\ln k_i!\\right)\\\\\n", + " 0 \\stackrel{!}{=} \\frac{d \\ln L(\\mu)}{d\\mu} \\Big|_{\\hat \\mu}& = & \\sum_{i=1}^N \\left( \\frac{k_i}{\\hat \\mu} - 1\\right) = \\sum_{i=1}^N \\frac{k_i}{\\hat\\mu} - N\\\\\n", + " N & = & \\frac{1}{\\hat\\mu} \\sum_{i=1}^N k_i \\rightarrow \\hat\\mu = \\frac{1} {N} \\sum_{i=1}^N k_i \n", + "\\end{aligned}$$" + ] + }, + { + "cell_type": "markdown", + "id": "2b0c38b2", + "metadata": { + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Variance of the ML estimator\n", + "\n", + "Cramér–Rao bound: estimator $\\hat a$ with bias $b$\n", + "\n", "$$V(\\hat a) \\geq \\frac{\\left(1+ \\frac{\\partial b}{\\partial a} \\right)^2}{E\\left[-\\frac{\\partial^2 \\ln L}{\\partial a^2}\\right]}$$\n", - "Fisher-Information:\n", + "\n", + "Fisher information:\n", "$$I(\\hat a) = E\\left [-\\frac{\\partial^2 \\ln L}{\\partial a^2}\\right]$$\n", "\n", - "ML-Schätzer für Poisson $V(\\hat \\mu)$ $$\\begin{aligned}\n", + "ML estimator for Poisson $V(\\hat \\mu)$ \n", + "$$\\begin{aligned}\n", "V(\\hat \\mu) & \\geq &\\frac{\\left(1+ \\frac{\\partial b}{\\partial \\mu} \\right)^2}{E\\left[-\\frac{\\partial^2 \\ln L}{\\mu^2}\\right]} \\\\\n", - " & = & \\frac{1}{E\\left[-\\frac{\\partial(\\sum_{i=1}^N \\frac{k_i}{\\mu} - N)}{\\partial \\mu^2}\\right]} \\\\\n", + " & = & \\frac{1}{E\\left[-\\frac{\\partial(\\sum_{i=1}^N \\frac{k_i}{\\mu} - N)}{\\partial \\mu}\\right]} \\\\\n", " & = & \\frac{1}{E\\left[-\\sum_{i=1}^N \\frac{-k_i}{\\hat \\mu^2}\\right]} = \\frac{1}{E\\left[\\sum_{i=1}^N \\frac{k_i}{\\hat \\mu^2}\\right]} \\\\\n", " & = & \\frac{1}{\\frac{1}{\\hat \\mu^2}E\\left[\\sum_{i=1}^N k_i \\right]} = \\frac{1}{\\frac{1}{\\hat \\mu^2}E\\left[N \\hat \\mu \\right]}\\\\\n", " & = & \\frac{\\hat \\mu}{N}\n", - "\\end{aligned}$$\n", - "\n", - "Varianz für mehrere Parameter $\\vec \\theta$\n", + "\\end{aligned}$$" + ] + }, + { + "cell_type": "markdown", + "id": "44dde589", + "metadata": { + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Variance for multiple parameters $\\vec \\theta$\n", "\n", - "Für effizienten und erwartungstreuen Schätzer:\n", + "For efficient and unbiased estimator:\n", "$$\\left(V^{-1}\\right)_{ij} = E\\left[ -\\frac{\\partial^2 \\ln L(\\theta)}{\\partial \\theta_i \\partial \\theta_j}\\right]$$\n", "\n", - "Näherung für große Datensätze:\n", - "$$\\left(\\hat V^{-1}\\right)_{ij} = -\\frac{\\partial^2 \\ln L(\\theta)}{\\partial \\theta_i \\partial \\theta_j}\\Big|_{\\theta=\\hat \\theta} =$$\n", + "Approximation for large samples:\n", + "$$\\left(\\hat V^{-1}\\right)_{ij} = -\\frac{\\partial^2 \\ln L(\\theta)}{\\partial \\theta_i \\partial \\theta_j}\\Big|_{\\theta=\\hat \\theta}$$\n", "\n", - "Graphisch:\n", + "Graphical:\n", "$$\\ln L(\\theta) \\approx \\ln L(\\hat \\theta) + \\frac{\\partial \\ln L}{\\partial \\theta}\\Big|_{\\hat \\theta}(\\theta - \\hat \\theta) + \\frac{1}{2} \\frac{\\partial^2 \\ln L}{\\partial \\theta^2}(\\theta - \\hat \\theta)^2$$\n", - "$$\\ln L(\\hat \\theta + \\sigma_\\theta) \\approx \\ln L(\\hat \\theta) + \\frac{1}{2} \\frac{\\partial^2 \\ln L}{\\partial \\theta^2}(\\sigma_\\theta)^2 = \\ln L(\\hat \\theta) - \\frac{1}{2}$$\n", - "\n", - "Zusammenhang ML und $\\chi^2$\n", + "$$\\ln L(\\hat \\theta + \\sigma_\\theta) \\approx \\ln L(\\hat \\theta) + \\frac{1}{2} \\frac{\\partial^2 \\ln L}{\\partial \\theta^2}(\\sigma_\\theta)^2 = \\ln L(\\hat \\theta) - \\frac{1}{2}$$" + ] + }, + { + "cell_type": "markdown", + "id": "d9571970-772e-4e95-8474-82e0afb1dd68", + "metadata": { + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Relation between ML and $\\chi^2$\n", "\n", - "Likelihood-Quotient:\n", + "Likelihood ratio:\n", "$$\\lambda = -2 \\ln \\frac{L(\\hat \\theta)}{L(\\hat \\theta^\\prime_\\text{saturiert})}$$\n", "\n", - "Mit Normalverteilung: $$\\begin{aligned}\n", + "For Gaussian distribution: \n", + "$$\\begin{aligned}\n", "\\lambda &=& -2 \\ln \\frac{L(\\hat \\theta)}{L(\\hat \\theta^\\prime_\\text{saturiert})} = -2 \\ln \\frac{\\prod_i G(x_i; \\hat \\mu, \\sigma_i)}{\\prod_i G(x_i; x_i, \\sigma_i)}\\\\\n", "& = & -2 \\ln \\frac{\\frac{1}{\\sqrt{2\\pi}\\sigma_i}exp\\left(\\frac{(x_i-\\hat \\mu)^2}{2\\sigma_i^2}\\right)}{\\frac{1}{\\sqrt{2\\pi}\\sigma_i}exp\\left(\\frac{(x_i-x_i)^2}{2\\sigma_i^2}\\right)} = -2\\ln exp\\left(\\frac{(x_i-\\hat \\mu)^2}{2\\sigma_i^2}\\right) \\\\\n", - "& = & -2 \\frac{(x_i-\\hat \\mu)^2}{2\\sigma_i^2} = \\chi^2 \\text{; also } \\ln L(\\theta) = - \\chi^2(\\theta) / 2 \n", + "& = & -2 \\frac{(x_i-\\hat \\mu)^2}{2\\sigma_i^2} = \\chi^2 \\text{; hence } \\ln L(\\theta) = - \\chi^2(\\theta) / 2 \n", "\\end{aligned}$$" ] }, + { + "cell_type": "markdown", + "id": "c751f13f", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Goodness of fit for ML" + ] + }, + { + "cell_type": "markdown", + "id": "288f14a1", + "metadata": {}, + "source": [ + "Needs likelihood ratio: \n", + "$$\\lambda = -2 \\ln \\frac{L(\\hat \\theta)}{L(\\hat \\theta^\\prime_\\text{saturiert})}$$" + ] + }, + { + "cell_type": "code", + "execution_count": 183, + "id": "2cf6b3b2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3.3826065384545885 6.712257050298824\n" + ] + } + ], + "source": [ + "def logLratio(m, a, xs, ys, sigma_y):\n", + " return 2*(np.sum(-stats.norm.logpdf(ys,xs*m+a,sigma_y)) - np.sum(-stats.norm.logpdf(ys,ys,sigma_y)))\n", + "\n", + "print(logL(2, 1,xs, ys[0], sigma_y), logLratio(2, 1,xs, ys[0], sigma_y))" + ] + }, + { + "cell_type": "code", + "execution_count": 189, + "id": "35c623ea", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(array([1.99378965, 1.19164514]),\n", + " array([[ 0.00490909, -0.00981818],\n", + " [-0.00981818, 0.02763636]]),\n", + " np.float64(4.700741203958106))" + ] + }, + "execution_count": 189, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def fitML(ys):\n", + " res = opti.minimize( lambda p: logLratio(p[0], p[1],xs, ys, sigma_y), x0=np.zeros(2))\n", + " #print(res)\n", + " return res.x, res.hess_inv, res.fun\n", + "\n", + "fitML(ys[0])" + ] + }, + { + "cell_type": "markdown", + "id": "7bec9f14", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Log-likelihood ratio" + ] + }, + { + "cell_type": "code", + "execution_count": 198, + "id": "04bfdf08", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "7.987704040424137\n" + ] + } + ], + "source": [ + "p = np.zeros((len(ys),2))\n", + "llr = np.zeros(3000)\n", + "for i,y in enumerate(ys[0:3000]):\n", + " p[i],V,llr_min = fitML(y)\n", + " llr[i] = llr_min\n", + "\n", + "llr_axis = np.linspace(0,30,100) \n", + "plt.hist(llr,bins=50, density=True)\n", + "# draw Chi2 distribution\n", + "plt.xlabel(\"$\\chi^2$\")\n", + "plt.show()\n", + "print(np.mean(llr))" + ] + }, + { + "cell_type": "markdown", + "id": "6baae520", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "### Compute p-value for goodness of fit" + ] + }, + { + "cell_type": "code", + "execution_count": 201, + "id": "5c35df31", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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Z57ZFUQiPltjkmVZvPvuu/0oGQAYTnIKI6NGjYrKyspobGzs1t7Y2BizZs3q9ZiLLroo3n///fjwww+72t58880YMWJETJgwoR8lAwDDSc7PGampqYnHHnss1q1bFzt37oylS5dGc3NzVFdXR8Rn6z0WLFjQ1f/aa6+NMWPGxI033hg7duyITZs2xR133BF/8id/0ustGgDgxJLzmpH58+fH/v374957742WlpaYOnVqNDQ0xMSJEyMioqWlJZqbm7v6/97v/V40NjbGbbfdFtOmTYsxY8bENddcE/fdd9/AvQsAIG/l/JyRFPr6OeX+8JwRAE50efWcEQCAgSaMAABJCSMAQFLCCACQlDACACQljAAASQkjAEBSwggAkJQwAgAkJYwAAEkJIwBAUsIIAJCUMAIAJCWMAABJCSMAQFLCCACQlDACACQljAAASQkjAEBSwggAkJQwAgAkJYwAAEkJIwBAUsIIAJCUMAIAJCWMAABJCSMAQFLCCACQlDACACQljAAASQkjAEBSwggAkJQwAgAkJYwAAEkJIwBAUsIIAJCUMAIAJCWMAABJCSMAQFLCCACQlDACACQljAAASQkjAEBSwggAkFS/wsjq1atj0qRJUVJSEpWVlbF58+Y+Hffaa69FUVFRfPOb3+zPywIAw1DOYaS+vj6WLFkSy5cvj6amppg9e3bMmTMnmpubP/e4tra2WLBgQfzhH/5hv4sFAIafnMPIihUrYuHChXHTTTfFlClTYuXKlVFRURFr1qz53ONuvvnmuPbaa2PmzJnHfI3Ozs5ob2/vtgEAw1NOYeTAgQOxbdu2qKqq6tZeVVUVW7ZsOepxjz/+eLz99ttx11139el16urqoqysrGurqKjIpUwAII/kFEZaW1vj0KFDUV5e3q29vLw89u7d2+sxb731Vixbtiw2bNgQRUVFfXqd2traaGtr69r27NmTS5kAQB7pWzr4HQUFBd32syzr0RYRcejQobj22mvjnnvuiXPPPbfP5y8uLo7i4uL+lAYA5JmcwsjYsWOjsLCwxyzIvn37esyWRER0dHTE1q1bo6mpKb773e9GRMThw4cjy7IoKiqKl19+OS677LIvUD4AkO9yuk0zatSoqKysjMbGxm7tjY2NMWvWrB79S0tL45e//GVs3769a6uuro6vfOUrsX379pgxY8YXqx4AyHs536apqamJ6667LqZNmxYzZ86MH/3oR9Hc3BzV1dUR8dl6j/feey+eeOKJGDFiREydOrXb8aeffnqUlJT0aAcATkw5h5H58+fH/v374957742WlpaYOnVqNDQ0xMSJEyMioqWl5ZjPHAEAOKIgy7IsdRHH0t7eHmVlZdHW1halpaUDeu6zl/1kQM8HAPnmne/PHZTz9vX67btpAICkhBEAIClhBABIShgBAJISRgCApIQRACApYQQASEoYAQCSEkYAgKSEEQAgKWEEAEhKGAEAkhJGAICkhBEAIClhBABIShgBAJISRgCApIQRACApYQQASEoYAQCSEkYAgKSEEQAgKWEEAEhKGAEAkhJGAICkhBEAIClhBABIShgBAJISRgCApIQRACApYQQASEoYAQCSEkYAgKSEEQAgKWEEAEhKGAEAkhJGAICkhBEAIClhBABIShgBAJISRgCApIQRACApYQQASKpfYWT16tUxadKkKCkpicrKyti8efNR+z777LNxxRVXxGmnnRalpaUxc+bMeOmll/pdMAAwvOQcRurr62PJkiWxfPnyaGpqitmzZ8ecOXOiubm51/6bNm2KK664IhoaGmLbtm1x6aWXxrx586KpqekLFw8A5L+CLMuyXA6YMWNGXHDBBbFmzZqutilTpsTVV18ddXV1fTrH17/+9Zg/f37ceeedferf3t4eZWVl0dbWFqWlpbmUe0xnL/vJgJ4PAPLNO9+fOyjn7ev1O6eZkQMHDsS2bduiqqqqW3tVVVVs2bKlT+c4fPhwdHR0xOjRo4/ap7OzM9rb27ttAMDwlFMYaW1tjUOHDkV5eXm39vLy8ti7d2+fznH//ffHRx99FNdcc81R+9TV1UVZWVnXVlFRkUuZAEAe6dcC1oKCgm77WZb1aOvNxo0b4+677476+vo4/fTTj9qvtrY22traurY9e/b0p0wAIA8U5dJ57NixUVhY2GMWZN++fT1mS35XfX19LFy4MJ566qm4/PLLP7dvcXFxFBcX51IaAJCncpoZGTVqVFRWVkZjY2O39sbGxpg1a9ZRj9u4cWPccMMN8eSTT8bcuYOzSAYAyE85zYxERNTU1MR1110X06ZNi5kzZ8aPfvSjaG5ujurq6oj47BbLe++9F0888UREfBZEFixYEA888EBceOGFXbMqJ510UpSVlQ3gWwEA8lHOYWT+/Pmxf//+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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.hist(stats.chi2.sf(llr,8), bins=50, density=True)\n", + "plt.xlabel(\"p\")\n", + "plt.show()" + ] + }, { "cell_type": "code", "execution_count": null, - "id": "43536528", + "id": "50c1ba94", "metadata": {}, "outputs": [], "source": [] -- GitLab