{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Numerical Simulation Laboratory (NSL) \n", "\n", "## IMPORTANT: Guidelines for a proper conduct of the exercises\n", "1. you should create code that is correct, simple, well organized, indented, commented, which uses self-explanatory names for variables and that is numerically efficient.\n", "2. I expect a responsible interaction during the exercises: the questions should be more related to the conduction of the exercises and to the meaning of the results obtained than to the computational problems. Bugs are usual in coding; for this reason, sooner or later, one should learn to deal with them by oneself ... if you'll be able to, it will be your main achievement in this Laboratory!\n", "\n", "## Numerical exercises 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 01.1\n", "- Test the Pseudo-Random Number generator downloaded from the NSL Ariel web site by estimating:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "1. $\\langle r \\rangle = \\int_0^1 r dr = 1/2$. Make a picture of the estimation of $\\langle r \\rangle$ and its uncertainty (which corresponds to Standard Deviation of the mean for the estimation of $\\langle r \\rangle$) with a large number of *throws* $M$ (e.g. $M\\ge 10^4$) as a function of the number of blocks, $N$ (see below: Computing statistical uncertainties)." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "data = np.loadtxt('data/exercise-01.1.1.dat')\n", "x = np.arange(data.shape[0])*10000/100\n", "plt.errorbar(x, data[:,0], yerr=data[:,1])\n", "plt.xlabel('#throws')\n", "plt.ylabel('-1/2')\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "2. $\\sigma^2 = \\int_0^1 (r-1/2)^2 dr = 1/12$. Make a picture of the estimation of $\\sigma^2$ and its uncertainty (which corresponds to Standard Deviation of the mean for the estimation of $\\langle (r-1/2)^2 \\rangle$) with a large number of *throws* $M$ (e.g. $M\\ge 10^4$) as a function of the number of blocks, $N$ (see below: Computing statistical uncertainties)." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "data_1_2 = np.loadtxt('data/exercise-01.1.2.dat')\n", "x = np.arange(data.shape[0])*10000/100\n", "plt.errorbar(x, data_1_2[:,0], yerr=data_1_2[:,1])\n", "plt.xlabel('#throws')\n", "plt.ylabel('<(r-1/2)^2> - 1/12')\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The hypothesis is that the numbers $r$ are drawn from a uniform distribution. In Statistics we cannot prove that some random events are drawn from a particular distribution (Note, in fact, that such hypothesis is false: pseudo-random numbers are drawn from a deterministic algorithm!); we can try to estimate the probability that $r$ **are not** drawn from a uniform distribution. If this probability is low, we can safely reject this last hypothesis.\n", "

\n", "Pearson's cumulative test statistic $\\chi^2$ is a measure of the error between observations, $O_i$, and expected values, $E_i$:\n", "$$\\chi^2 = \\sum_{i} \\frac{\\left( O_i - E_i \\right)^2}{E_i}$$\n", "The numerator is a squared distance between observations, $O_i$, and expected values, $E_i$, and thus should be compared (at the denominator) with the expected squared fluctuations (variance) of the relative distribution. Why variance = $E_i$? \n", "The probability of getting exactly $k$ (independent) successes, each one with probability $p$, in $n$ trials is given by the Binomial distribution (see this Wikipedia link):\n", "$$Pr(X=k) = {{n}\\choose{k}} p^k (1-p)^{n-k} = \\frac{n!}{k! (n-k)!} p^k (1-p)^{n-k}$$\n", "The average of the Binomial distribution is $\\langle X \\rangle = np$, the variance is: $\\sigma^2 = np (1-p)$. Thus if $p$ is small we have that $\\sigma^2 \\simeq np$, that is $\\sigma^2 \\simeq \\langle X \\rangle$ and this explains the denominator $E_i$ in $\\chi^2$\n", "

\n", "\n", "3. Divide $[0,1]$ into $M$ identical sub-intervals and implement the $\\chi^2$ test. Obviously, the number of expected events observed in each sub-interval after $n$ *throws*, according to a uniform distribution, is $np = n\\times 1/M= n/M$. Fix $M=10^2$ and use for $n$ the first $10^4$ pseudo-random numbers, then the successive $10^4$ pseudo-random numbers, and so on ... 100 times. Plot $\\chi^2_j$ for $j=1, ..., 100$. In this case the chi-square statistic is:\n", "$$\\chi^2 = \\sum_{i=1}^M \\frac{\\left( n_i - n/M \\right)^2}{n/M}$$\n", "We should expect on average that $(n_i - n/M)^2 \\simeq n/M$ and thus $\\chi^2 \\simeq 100$, i.e. the number of sub-intervals.\n", "A larger value of $\\chi^2$ indicates that the hypothesis ($n_i$ are drawn from a uniform distribution) is rather unlikely ... but before judging, you could compare the histogram of the values obtained for $\\chi^2_j$ with the true probability distribution (see: this Wikipedia link)." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "data = np.loadtxt('data/exercise-01.1.3.dat')\n", "plt.xlabel('j')\n", "plt.ylabel('$\\chi^2_j$')\n", "plt.plot(data[:,0], data[:,1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 01.2\n", "- Extend Pseudo-Random Number generator downloaded from the NSL Ariel web site and check the Central Limit Theorem:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "1. Add two probability distributions by using the **method of the inversion of the cumulative distribution** to sample from a **generic** exponential distribution, $p(x) = \\lambda \\exp(-\\lambda x)$, $x\\in [0;+\\infty]$ (see this Wikipedia link), and a **generic** Cauchy-Lorentz distribution $p(x)=\\frac{1}{\\pi}\\frac{\\Gamma}{(x-\\mu)^2+\\Gamma^2}$, $x\\in [-\\infty;+\\infty]$ (see this Wikipedia link).\n", "2. Make 3 pictures with the histograms obtained filling them with $10^4$ realizations of $S_N = \\frac{1}{N}\\sum_{i=1}^N x_i$ (for $N=1, 2, 10, 100$), being $x_i$ a random variable sampled throwing a *standard* dice (fig.1), an *exponential* dice (fig.2, use $\\lambda=1$) and a *Lorentzian* dice (fig.3, use $\\mu=0$ and $\\Gamma=1$).\n", "\n", "Note that you can try to fit the case $N=100$ with a Gaussian for standard and exponential dices, whereas you should use a Cauchy-Lorentz distribution for the last case." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# TODO(mario): Fit curves\n", "1. Use Gaussians for uniform and exponential rng\n", "2. Use the Lorentzian for the lorentzian rng" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0.98, 'Uniform distribution')" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Uniform distribution\n", "std = [\n", " np.loadtxt('data/exercise-01.2-std-1.dat'),\n", " np.loadtxt('data/exercise-01.2-std-2.dat'),\n", " np.loadtxt('data/exercise-01.2-std-10.dat'),\n", " np.loadtxt('data/exercise-01.2-std-100.dat')\n", "]\n", "Ns = [1, 2, 10, 100]\n", "fig, axes = plt.subplots(1, 4, sharey=True, layout='constrained', figsize=(12,4))\n", "for i in range(4):\n", " axes[i].hist(std[i], bins=150)\n", " axes[i].set_title(f'N = {Ns[i]}')\n", " axes[i].set_xlabel('$S_N$')\n", "axes[0].set_ylabel('count')\n", "fig.suptitle('Uniform distribution')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0.98, 'Exponential distribution')" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Exponential distribution\n", "exp = [\n", " np.loadtxt('data/exercise-01.2-exp-1.dat'),\n", " np.loadtxt('data/exercise-01.2-exp-2.dat'),\n", " np.loadtxt('data/exercise-01.2-exp-10.dat'),\n", " np.loadtxt('data/exercise-01.2-exp-100.dat')\n", "]\n", "fig, axes = plt.subplots(1, 4, sharey=True, layout='constrained', figsize=(12, 4))\n", "for i in range(4):\n", " axes[i].hist(exp[i], bins=150)\n", " axes[i].set_title(f'N = {Ns[i]}')\n", " axes[i].set_xlabel('$S_N$')\n", "axes[0].set_ylabel('count')\n", "fig.suptitle('Exponential distribution')" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0.98, 'Lorentz distribution')" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Lorentz distribution\n", "lorentz = [\n", " np.loadtxt('data/exercise-01.2-lorentz-1.dat'),\n", " np.loadtxt('data/exercise-01.2-lorentz-2.dat'),\n", " np.loadtxt('data/exercise-01.2-lorentz-10.dat'),\n", " np.loadtxt('data/exercise-01.2-lorentz-100.dat')\n", "]\n", "fig, axes = plt.subplots(1, 4, sharey=True, layout='constrained', figsize=(12,4))\n", "for i in range(4):\n", " axes[i].hist(lorentz[i], bins=150, range=(-7,7))\n", " axes[i].set_title(f'N = {Ns[i]}')\n", " axes[i].set_xlabel('$S_N$')\n", "axes[0].set_ylabel('count')\n", "fig.suptitle('Lorentz distribution')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 01.3\n", "- **Simulate** the Buffon’s experiment (see LSN_Lecture_00, supplementary material): A needle of length $L$ is thrown at random onto a horizontal plane ruled with straight lines a distance $d$ (must be $d > L$, but do not use $d\\gg L$ otherwise $P\\ll 1$) apart. The probability $P$ that the needle will intersect one of these lines is: $P = 2L/\\pi d$. This could be used to evaluate $\\pi$ from throws of the needle: if the needle is thrown down $N_{thr}$ times and is observed to land on a line $N_{hit}$ of those times, we can make an estimate of $\\pi$ from\n", "$$\\pi = \\frac{2L}{Pd} = \\lim_{N_{thr} \\to \\infty}\\frac{2LN_{thr}}{N_{hit}d}$$\n", "Make a picture of the estimation of $\\pi$ and its uncertainty (Standard Deviation of the mean) with a large number of *throws* $M$ as a function of the number of blocks, $N$ (see below: Computing statistical uncertainties). If possible, do not use $\\pi$ to evaluate $\\pi$." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$\\\\pi$')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEWCAYAAABrDZDcAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAAsTAAALEwEAmpwYAAAd+ElEQVR4nO3df7xVdZ3v8dfbI4IIiuXRSBKs/JGagB5/jP2Q1FJpulYzlcWUOhrZeGeyW3P1qmNq0Z1y+jXXitAaLUmytF9ONlojlhnaUeEoomIpSoKggYgoCnzuH9+1ZbPZ5/dZe5/D9/18PNbjrB/ftfbnrLPOeu/1Y6+tiMDMzPK1XbMLMDOz5nIQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgW5H0JkmLJa2V9G5Je0j6jaRnJX2p2fWVQdJ5kq5odh2dkfQxSV9tdh2DiaThkh6QtHuzaxnqHATbIEmPSnq+2JGvkvSfkl7Ti0VcAlwWEaMi4ifAdOApYOeI+FQZNTdbRHw+Is5o9OtKOlXSbd202QG4ALi0GJ4gKSTdXdNuN0kvSnq0hDpnSXpQ0iZJp9aZ/klJyyU9I+k7koZXTXuFpB9Lek7SEkkfqpn32GKHvk7SLZLGV02TpC9IerrovihJABGxHvgOcM5A/765cRBsu94VEaOAscCTwP/rxbzjgYU1w/fHNvrpQ0nbN7uGbpwEPBARf64Zv5Okg6qGPwQ8UlINC4B/AO6unSDpeOBc4FhgAvBa4OKqJl8HXgT2AKYB35R0YDHvbsD1wL8ArwDagR9UzTsdeDcwETgY+GvgY1XTvw+cUh081gcR4W4b64BHgeOqhqcCD1UNzwXOqBo+Fbit6P8jsAl4HlgLXAO8RPpHXgscBwwHvgo8UXRfBYYX808BlgKfAlYAy4DTuqh1F+DbRbs/A58DWoAdgPnAPxbtWoDfARcWwxcBPyLtNJ4l7aAmVi331cB1wErSzvGfqqZV5r0aWAOcUYy7upg+AQjgNOBxYBVwJnAY0AGsJh0xVf8efw8sKtr+FzC+aloU8y8upn8dEPAG4AVgY7FuV3eyjr4DXFA1XKnvAuDSqvHtwPnAoyVuW7cBp9aM+z7w+arhY4HlRf9Oxbazb9X07wH/WvRPB26vmrZTse3tXwzfDkyvmn46MK/m9RcDRzf7/24odz4i2MZJGgl8AJjXk/YR8TrgMYojioj4IDAb+GIx/CvSzuZIYBLpndrhpJ1SxatIO/g9Sf+4X5e0aycveRWwAXg9MBl4BymkXgT+DrhE0htI7zhbgBlV854E/JD0TvL7wE8kDZO0HfBz0rvYPUk7prOLd67V8/4IGFP8fvUcAexDWn9fLX7v44ADgfdLOhpA0ruB84D3Aq3Ab0kBWu2vSUEyEXg/cHxELCIFxO+LdTumkzreCDxYZ/zVwMmSWop1NBq4o5NlUNTaIWl1J903upq3CweS1nXFAmAPSa8E9gU2RsRDNdMPrDdvRDxHejNSd3rNvBWLSOvV+miwHxJb3/1E0gZgFOmd+fHdtO+NaaR36isAJF0MfIt0eA/pCOKSiNgA/ELSWmA/asJI0h7AicCYiHgeeE7SV0jvEr8VEfdJ+hzwY9JphcMjYmPVIu6KiB8Vy/oy6SjkSNI70NaIuKRo9ydJlwMnk96tQ9r5/qTof7447VzrsxHxAnCTpOeAa6p+59+SgutW0qmK/1vs2JH0eeA8SeMjYkmxrH+NiNXAakm3kEL0l52v4i2MIR311FpKCojjgLcB3+1uQRFxcA9fszdGAc9UDVf6R9eZVpk+umreld1Mr132KEmK4nCAtG7G9LV4cxBsy94dEb+S1EJ693urpAMiYvkALPvVwJKq4SXFuIqnixCoWEf6h641HhgGLKvaEW9HOh1TcRXpKOC6iFhcM//L7SJik6SlRR0BvFrS6qq2LaR36lvN24Unq/qfrzNc+Z3GA1+ruaNKpKORynqqXu+drY/OrGLzjrHWd0mn9o4C3ko6gmm0tcDOVcOV/mfrTKtMrwRbb6fvDKytCgFI62Z1Xwq3xKeGtnERsTEiriedh35zMfo5YGRVs1f1crFPkHZ+FXsV43rrcWA9sFtEjCm6nSOi+tD/G8ANwPGS3lwz/8t3QhWng8YVdTwOPFK1zDERMToiplbNO5AXvh8HPlbzejtGxO09mLcndXSQTrHUcx3wTuBPVUcfnZK0sLibrF43swe11LOQLU/NTASejIingYeA7SXtUzN9Yb15Je0EvK6z6TXzVryBLU8fWS85CLZxxe13JwG7ks6lQroI+15JIyW9nnQevzeuAS6Q1Frc9XEh6Xx1r0TEMuAm4EuSdpa0naTXVZ17/zBwKOkd7z8BV0mqfid9qKT3Fnf9nE0KlXnAncAaSedI2rE4h36QpMN6W2MPzQT+T9WdMLtIel8P530SGFfcItqZXwBH15tQnFM/hnTBu1sRcWBxPaJed2Zn80naQdII0pHOMEkjivCFdFRyuqQDimtBFwBXVtV3Pelaz06S3kQ6Qv1eMe+PgYMk/U2x/AuBjoh4oGrZ/0vSnpJeTTr9d2VVXXuSrhH16BqY1ecg2Hb9vDg3v4Z0auWUiKi8k/oK6Tz6k6RTL51dLO3M50h3qHQA95Lu2PlcH+v8COkOoftJp0B+BIyVtBfpAu1HImJtRHy/eM2vVM37U9KF3FXAh4H3RsRLxXWEd5HOwz9C+gzEFaQL2AMuIn4MfAGYI2kNcB/p2kdP/DfpHe5ySU910ubnwP7FjrDe67dHxB97WXZv3UQ6HXYUMKvof2vx+r8EvgjcQjoVtgT4TNW8/wDsSLpWdQ3w8cq2GBErgb8hbaOrSBfoT66a91uk3/9e0nr9z2JcxYeAqyJ9psD6SFueajMbGiRdBLw+Iv6u2bU0gqTpwAERcXazaxksis8OLADeWrmIb33ji8VmQ0BEzGp2DYNNcRSwf7Pr2Bb41JCZWeZ8asjMLHM+IjAzy9yQu0aw2267xYQJE5pdhpnZkHLXXXc9FRGt9aYNuSCYMGEC7e3tzS7DzGxIkdTpBw5LOzVUfODkTkkLik8zXlynzS6Sfl7V5rSy6jEzs/rKPCJYDxwTEWslDQNuk3RjRFR/AvAs0nPu3yWpFXhQ0uziyZNmZtYApQVB8VCotcXgsKKrvUUpgNHFNw6NAv5CeiSxmZk1SKl3DRXPeJlP+mj5zRFR+6z0y0gPjHqC9BHyT0TEpjrLmS6pXVL7ypW1T6w1M7P+KDUIiidfTiI9FfJwbfm1epCekT+f9OjgScBlkmofSUtEzIqItohoa22te9HbzMz6qCGfIyi+kGMucELNpNOA6yN5mPSAMH9k3Mysgcq8a6hV0piif0fStyg9UNPsMdLXCFa+rWo/4E9l1WRmZlsr866hsaTnx7eQAufaiLhB0pkAETET+CxwpaR7Sc85PyciOnsUr5mZlaDMu4Y6SN/pWjt+ZlX/E6QvKy/dlCnp59y5jXg1M7Ohw88aMjPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLXGlBIGmEpDslLZC0UNLFnbSbIml+0ebWsuoxM7P6ti9x2euBYyJiraRhwG2SboyIeZUGksYA3wBOiIjHJO1eYj1mZlZHaUEQEQGsLQaHFV3UNPsQcH1EPFbMs6KseszMrL5SrxFIapE0H1gB3BwRd9Q02RfYVdJcSXdJ+kgny5kuqV1S+8qVK8ss2cwsO6UGQURsjIhJwDjgcEkH1TTZHjgUeCdwPPAvkvats5xZEdEWEW2tra1llmxmlp2G3DUUEauBucAJNZOWAr+MiOci4ingN8DERtRkZmZJmXcNtRYXg5G0I3Ac8EBNs58Cb5G0vaSRwBHAorJqMjOzrZV519BY4CpJLaTAuTYibpB0JkBEzIyIRZJ+CXQAm4ArIuK+EmsyM7MaZd411AFMrjN+Zs3wpcClZdVhZmZd8yeLzcwy5yAwM8ucg8DMLHMOAjOzzDkIzMwy5yAwM8ucg8DMLHMOAjOzzDkIzMwy5yAwM8ucg8DMLHMOAjOzzDkIzMwy5yAwM8ucg6AwZUrqzMxy4yAwM8ucg2CA+IjCzIYqB4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllrrQgkDRC0p2SFkhaKOniLtoeJmmjpL8tqx4zM6tv+xKXvR44JiLWShoG3CbpxoiYV91IUgvwBeC/SqzFzMw6UdoRQSRri8FhRRd1mv4jcB2woqxazMysc6VeI5DUImk+aSd/c0TcUTN9T+A9wMxuljNdUruk9pUrV5ZWr5lZjkoNgojYGBGTgHHA4ZIOqmnyVeCciNjYzXJmRURbRLS1traWU6yZWabKvEbwsohYLWkucAJwX9WkNmCOJIDdgKmSNkTETxpRl5mZlRgEklqBl4oQ2BE4jnRR+GURsXdV+yuBGxwCZmaNVeYRwVjgquKuoO2AayPiBklnAkREl9cFzMysMUoLgojoACbXGV83ACLi1LJqMTOzzvmTxWZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4ExZUrqzCxPDoJtgHfkZtYfDgIzs8w5CMzMMucgMDPLnIPAzCxzDgIzs8w5CMzMMucgMDPLXBZBMHs2zJsHt94KEyakYTMzS7oNAkmjGlFIWWbPhunTYf36NLxkSRp2GJiZJT05IrhH0gGStq+MkLRviTUNqPPPh3Xrthy3bl0ab2ZmsH33TXgF8HVgf0lPAYuAQ4DXl1nYQHnssd6NN+upymM95s5tZhVm/deTIHgsIt4GIGkc8Abg+VKrGkB77ZVOB9Ubb2ZmPTs1tIukoyTtEhFLI+LmiLit9MoGyIwZMHLkluNGjkzjzcysZ0EwCvg0cKekRyXdKOnSkusaMNOmwaxZMHx4Gh4/Pg1Pm9bcuszMBouenBr6q4j4I4CkEcABwIGlVjXApk2Dyy9P/T6fa2a2pW6DoBICRf8LwN1FZ2Zm24DSPlAmaYSkOyUtkLRQ0sV12kyT1FF0t0uaWFY9ZmZDWZlfQNWTU0N9tR44JiLWShoG3CbpxoiYV9XmEeDoiFgl6URgFnBEiTWZmVmN0o4IIllbDA4ruqhpc3tErCoG5wHjyqqnTH6EhZkNZaU+a0hSi6T5wArg5oi4o4vmpwM3drKc6ZLaJbWvXLmyhEr7zo+wMLOhrtQgiIiNETGJ9E7/cEkH1Wsn6W2kIDink+XMioi2iGhrbW0trd6+8CMszGyoa8jTRyNiNTAXOKF2mqSDgSuAkyLi6UbUM5D8CAszG+rKvGuoVdKYon9H4DjggZo2ewHXAx+OiIfKqqVMnT2qwo+wMLOhoswjgrHALZI6gD+QrhHcIOlMSWcWbS4EXgl8Q9J8Se0l1lOKof4IC1/o7huvN9uWlHb7aER0AJPrjJ9Z1X8GcEZZNTRC5VEVp5+eLhiPH59CYCg8wqKzC93Qy/pbWuCNb9w8fPLJcO65A1Pk/PnwxBMwdWr/lzV3Lvzbv8ENN/RrMQO23swGiSy+oaw7/X13N20aHHkkHH00PPro0NkZDNiF7h13TDvsSjdQIQBpeb/4xcAtbwD4BgHb1mQfBEP99s/+hFipF7qfeQb22w8efDANf/CDmx/49PGPQ1sbHHggfOYzm+f5wx/gqKNg4kQ4/PC0jAsvhB/8ACZNSj+rHXEELFy4eXjKFLjrLrjzzrScyZPTz0oN1S66KB0dVBx0UEpxgKuvTq8/aRJ87GOwceMWs/oGAdvWZB8EQ/ndXX9DbMAudD//fNppVrof/AB22QUuuwxOPRXmzIFVq+CjH03tZ8yA9nbo6EgJ1tEBL74IH/gAfO1rsGAB/OpXsNNOcMklafz8+elntZNPhmuvTf3LlqVTSIceCvvvD7/5DdxzT5r/vPN6/rssWpTq/93v0mu2tGy1Qn2DgG1rynzExJAwlN/ddRViPTk9NWNGCo7qZfTpQnfl1FCtt78dfvhDOOustHOvuPba9CzwDRvSDvz++0GCsWPhsMNSm5137v513//+9BoXX5yW+b73pfHPPAOnnAKLF6flvvRSz3+XX/86HVVU6nj+edh99y2aDNh6M+uhypH/+vXpyH+gr0MqIrpvNYi0jR4d7Yce2uv5KvupSZO2HD9h3hyWrH/VVu3HD1/Oo0ee3O/ll2m7W/+bqHNQJzax6ehjerSM2U8eyz8/+FGWx+7sNXwFM/a+nGl7/Lp3hfz2t/CWt2w9PiKtmBdeSBeTR41KO9aODjjkEBg2DB54AMaMSdMWL06nc6otXw7PPgv77FP/te+5J01bvDj9HDUqLXPUKBg3Lr32/PnpIs7q1fD446mWJUtSSFText9xRzol9fTT6b/tta8tf72Z9cDsJ49l+kP/zLpNI14eN3K7F5i176W92uZ06613RURbvWnZHxHM2Pvyuit5xt6XN7Gqntlr+Iq6IbbX8BU9Xsa0PX7NgcvSxjTgIbZ0aTq9s/fe6Tz95MnpfHtLC2y/fTod9Je/pCAYOTINr1mTjgY2bEjtWlq2Oke/hd13Tzv3DRvSzh9Sf+WbiJYvrz/fiBFppw8paF54IfWPGZOuO4wbBzvskI4mNm5M7auUut7Mqpz/yEe32D8BrNs0gvMf+ejAvfmIiCHVHXroodEXRx+dunquvjpi+PAIiBg/Pg0P5PLLcvXVESNHpror3ciRva+/37Vvt13ExImbu3POiXjwwYj9949Ysya1+eQnIy68MPWfckqaNnVqxHveE/Ef/5HG33lnxBFHRBx8cPr57LMRTz8d0daWljtnztavvXx5REtLxEUXbR53++0R++wTcdRRERdckP6oERG33BLxznem/nXrIt7+9rTcM85I9TzySJo2Z04a/8Y3RhxySMTvf1/3127G39zyI235P17ppN4tB2iPTvarQ+/UUFtbtLf3/nNnled4d/YNZd1N7+/yyzJ7dv8/w9Cs2oc6rzdrhAkT0pnMWuPHb77RrSckdXpqKPu7hoa6ofoZBjPrmUY8vcBBYGY2iE2blm6yq1z2Gj8+DQ/km77sLxabmQ1206Zt/jxmGacifURgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmfPnCMz6yI+WsG2FjwjMzDLnIDAzy5yDwMwsc75GYGY2BJR5TcpHBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmSstCCSNkHSnpAWSFkq6uE4bSfp3SQ9L6pB0SFn1mJlZfWXeProeOCYi1koaBtwm6caImFfV5kRgn6I7Avhm8dMayI9KMMtbaUcEkawtBocVXdQ0Own4btF2HjBG0tiyajIzs62Veo1AUouk+cAK4OaIuKOmyZ7A41XDS4txZmbWIKUGQURsjIhJwDjgcEkH1TRRvdlqR0iaLqldUvvKlStLqNTMLF8NuWsoIlYDc4ETaiYtBV5TNTwOeKLO/LMioi0i2lpbW8sq08wsS2XeNdQqaUzRvyNwHPBATbOfAR8p7h46EngmIpaVVdO2au5cX/A1s74r866hscBVklpIgXNtRNwg6UyAiJgJ/AKYCjwMrANOK7EeMzOro7QgiIgOYHKd8TOr+gM4q6wazMyse/5ksZlZ5hwEZmaZcxCYmWXOQWBmljkHgZlZ5hwEZmaZcxCYmWXOQWBmljkHgZlZ5hwEZmaZcxCYmWXOQWBmljkHgZlZ5hwEZmaZK/P7CLLiL4Yxs6HKRwRmZplzEJiZZc5BYGaWOQeBmVnmHARmZplzEJiZZc5BYGaWOQeBmVnmHARmZplzEJiZZc5BYGaWOQeBmVnmHARmZplzEJiZZa60IJD0Gkm3SFokaaGkT9Rps4ukn0taULQ5rax6zMysvjK/j2AD8KmIuFvSaOAuSTdHxP1Vbc4C7o+Id0lqBR6UNDsiXiyxrrr8fQJmlqvSjggiYllE3F30PwssAvasbQaMliRgFPAXUoCYmVmDNOQagaQJwGTgjppJlwFvAJ4A7gU+ERGb6sw/XVK7pPaVK1eWXa6ZWVZKDwJJo4DrgLMjYk3N5OOB+cCrgUnAZZJ2rl1GRMyKiLaIaGttbS25YjOzvJQaBJKGkUJgdkRcX6fJacD1kTwMPALsX2ZNZma2pTLvGhLwbWBRRHy5k2aPAccW7fcA9gP+VFZNZma2tTLvGnoT8GHgXknzi3HnAXsBRMRM4LPAlZLuBQScExFPlViTmZnVKC0IIuI20s69qzZPAO8oqwYzM+ueP1lsZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpa5Mh8xMaj4i2fMzOrzEYGZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpY5B4GZWeYUEc2uoVckrQSWdNFkN+CpBpXTW66tb1xb37i2vtlWaxsfEa31Jgy5IOiOpPaIaGt2HfW4tr5xbX3j2vomx9p8asjMLHMOAjOzzG2LQTCr2QV0wbX1jWvrG9fWN9nVts1dIzAzs97ZFo8IzMysFxwEZmaZG9RBIOkESQ9KeljSuXWmS9K/F9M7JB3S3bySXiHpZkmLi5+7NrI2Sa+RdIukRZIWSvpE1TwXSfqzpPlFN7WRtRXTHpV0b/H67VXjm73e9qtaL/MlrZF0djGtUettf0m/l7Re0qd7Mm8D11vd2gbJ9tbVemv29tbZehsM29u04n+gQ9LtkiZ2N2+f11tEDMoOaAH+CLwW2AFYABxQ02YqcCMg4Ejgju7mBb4InFv0nwt8ocG1jQUOKfpHAw9V1XYR8Olmrbdi2qPAbnWW29T1Vmc5y0kfkGnketsdOAyYUf16g2R766y2wbC91a1tkGxvndY2CLa3o4Bdi/4TKXH/NpiPCA4HHo6IP0XEi8Ac4KSaNicB341kHjBG0thu5j0JuKrovwp4dyNri4hlEXE3QEQ8CywC9uxDDQNeWzfLbep6q2lzLPDHiOjqE+YDXltErIiIPwAv9WLehqy3zmobDNtbF+utK01dbzWatb3dHhGrisF5wLgezNun9TaYg2BP4PGq4aVsvQF31qarefeIiGWQ/klI7wgaWdvLJE0AJgN3VI3+n8Wh4Hf6eDjc39oCuEnSXZKmV7UZNOsNOBm4pmZcI9ZbX+Zt1HrrVhO3t640e3vricGwvZ1OOlLubt4+rbfBHASqM672XtfO2vRk3v7oT21pojQKuA44OyLWFKO/CbwOmAQsA77UhNreFBGHkA5Fz5L01j7UUFZtSNoB+B/AD6umN2q9lTFvQ5bf5O2tK83e3rpewCDY3iS9jRQE5/R23p4azEGwFHhN1fA44Iketulq3icrpxqKnysaXBuShpH+KWdHxPWVBhHxZERsjIhNwOWkQ8CG1hYRlZ8rgB9X1dD09VY4Ebg7Ip6sjGjgeuvLvI1ab50aBNtbpwbB9tadpm5vkg4GrgBOioinezBvn9bbYA6CPwD7SNq7SOWTgZ/VtPkZ8BElRwLPFIdDXc37M+CUov8U4KeNrE2SgG8DiyLiy9Uz1JwLfw9wX4Nr20nS6KKWnYB3VNXQ1PVWNf2D1BymN3C99WXeRq23ugbJ9tZZbYNhe+tO07Y3SXsB1wMfjoiHejhv39ZbT64oN6sj3UHyEOkK+fnFuDOBM4t+AV8vpt8LtHU1bzH+lcCvgcXFz1c0sjbgzaTDuA5gftFNLaZ9r2jbUfxBxza4tteS7kBYACwcTOutmDYSeBrYpWaZjVpvryK9G1sDrC76dx4k21vd2gbJ9tZZbYNhe+vqb9rs7e0KYFXV3629q3n7s978iAkzs8wN5lNDZmbWAA4CM7PMOQjMzDLnIDAzy5yDwMwscw4Cs14oHimwQtJ9NeP/StLlkqZICknvqpp2g6Qpja7VrKccBGa9cyVwQp3xJwC/LPqXAuc3qiCz/nIQmPVCRPwG+EudSccCvyr6FwDPSHp7wwoz6wcHgVk/SdoNeCkinqka/TnggiaVZNYrDgKz/nsHcFP1iIj4LYCktzSlIrNecBCY9d+JbL4+UG0GvlZgQ4CDwKwfiqd7Hkx6KNgWIuImYFdgYoPLMusVB4FZL0i6Bvg9sJ+kpcD/Bu6Jzp/eOIPNXzFoNij56aNm/SDpAtL3x85pdi1mfeUgMDPLnE8NmZllzkFgZpY5B4GZWeYcBGZmmXMQmJllzkFgZpa5/w8JlP354pZFUwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import math\n", "\n", "data = np.loadtxt('data/exercise-01.3.dat')\n", "plt.errorbar(1/data[:,0], data[:,1], yerr=data[:,2], fmt='bo')\n", "plt.axhline(y = math.pi, color = 'red', linestyle = '-')\n", "plt.text(0.059, math.pi-0.005, 'Exact value', color='red')\n", "plt.title('Buffon experiment (M = 10000)')\n", "plt.xlabel('1/N')\n", "plt.ylabel('$\\pi$')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Computing statistical uncertainties: the blocking method\n", "- A fundamental step in every Monte Carlo calculation is the estimation of its statistical uncertainty, **it's a must!** Your task would not be completed if you had not calculated it." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\n", " In computing the statistical uncertainties, i.e. the standard deviation of the mean, you need an estimation of the variance $\\sigma^2$, the second central moment. First of all note that the variance can be computed from\n", " $$\\sigma^2_A := \\langle (A-\\langle A\\rangle)^2\\rangle = \\langle A^2 \\rangle -\\langle A\\rangle^2 $$\n", " What is the best way to estimate $\\sigma^2_A$? Imagine that your Monte Carlo estimation of $A$ is obtained from a calculation which uses $M$ Monte Carlo \"steps\" (intentionally, here I am generic because what is a single \"step\" in a Monte Carlo calculation strictly depends on the specific calculation); you can always divide such $M$ Monte Carlo \"steps\" in $N$ blocks, with $N" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- In a Monte Carlo calculation, you can use the arguments above to outputting an estimate of A and its statistical uncertainty on the fly, during your calculation. You will be able to do this every $M/N$ steps, and thus, in the end, $N$ times. Note that after the first $M/N$ Monte Carlo steps, at the end of the first block, your estimation of the uncertainty is not computable, so set it to zero and compute it only from the second block. **Question**: $N$ can be chosen in many ways ... what are the limitations regarding this choice?" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "/gnu/store/3lxr2xg3yscdb3979blgjg0h7xd1n9la-python-3.10.7/bin/python3", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.7" } }, "nbformat": 4, "nbformat_minor": 2 }