{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Exam of Numerical methods, 16 February 2024\n",
    "\n",
    "### Exercise 1\n",
    "\n",
    "Implement the following:\n",
    "\n",
    "1. Using the inverse transform method, write your own code to sample $10^5$ values of a random variable distributed according to $p(x) = a e^{-ax}$, with $a=0.6$.\n",
    "2. Plot the histogram of the values you have just sampled and overplot the $p(x)$ distribution (to verify that your code is correctly working).\n",
    "3. Consider the integral $I = \\int_0^{\\pi} dx \\frac{1}{x^2 + \\cos^2(x)}$. Plot the integrand. Overplot the function $e^{-ax}$\n",
    "4. Use importance sampling with weight $w(x) = e^{-ax}$ to solve the integral $I = \\int_0^{\\pi} dx \\frac{1}{x^2 + \\cos^2(x)}$. Take a sample with size $N=10^5$.\n",
    "5. Now solve the same integral using Simpson's integration and check that the two results are consistent.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import secrets\n",
    "import matplotlib.pyplot as plt\n",
    "from scipy import integrate"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Sampling variables ~ $p(x)$ and plotting the histogram\n",
    "\n",
    "By computing the CDF we find that, after sampling uniformly distributed $y$, we have to apply the transform $x = (-1/a) \\log(y)$ "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkMAAAG2CAYAAAB8joKsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABRn0lEQVR4nO3deVyU5f7/8dfMwLCooIKCGrjnUoqKaWhmFmXZ5snKVo06nn6lJ09ap8yT1rETdSqzU5YtxzZPZfVNbbWjpJb7gpzU3BdwA0ERZB2YuX9/IBQJLjBwzzDv5+NxP5y557rv+3NxB/PuujeLYRgGIiIiIj7KanYBIiIiImZSGBIRERGfpjAkIiIiPk1hSERERHyawpCIiIj4NIUhERER8WkKQyIiIuLT/MwuwNO5XC4OHTpEkyZNsFgsZpcjIiIiZ8EwDE6cOEHr1q2xWk8/9qMwdAaHDh0iKirK7DJERESkBvbv389555132jYKQ2fQpEkToOyHGRISYnI1IiIicjZyc3OJioqq+B4/HYWhMyg/NBYSEqIwJCIi4mXO5hQXnUAtIiIiPk1hSERERHyawpCIiIj4NJ0zJCIiUgWXy4XD4TC7DDkNu91+xsvmz4bCkIiIyO84HA727t2Ly+UyuxQ5DavVSvv27bHb7bVaj8KQiIjIbxiGweHDh7HZbERFRbll5EHcr/ymyIcPHyY6OrpWN0ZWGBIREfmN0tJSCgoKaN26NcHBwWaXI6fRokULDh06RGlpKf7+/jVej+KuiIjIbzidToBaH3qRule+j8r3WU0pDImIiFRBz6P0fO7aRwpDIiIi4tN0zpCIiMhZSEtLIysrq962Fx4eTnR0dL1tr67cc889HD9+nPnz55tdSrW8LgzNnDmTF154gfT0dGJiYnj11Vfp169fte2PHz/O5MmT+eKLLzh27Bht27ZlxowZDBs2rB6rFhERb5aWlkaXrt0oKiyot20GBgWzfdvWBhGIPJ1XhaG5c+cyYcIEZs2aRf/+/ZkxYwZDhw5l+/bttGzZ8pT2DoeDK6+8kpYtW/L555/Tpk0bUlNTadq0af0XLyIiXisrK4uiwgLCrpuIf1hUnW+v5Oh+jn79EllZWQpD9cCrzhmaPn06Y8aMISEhge7duzNr1iyCg4OZPXt2le1nz57NsWPHmD9/PgMHDqRdu3YMHjyYmJiYeq68CgXHYMd/Yft3ZlciIiJnyT8sioDITnU+1TRwff755/To0YOgoCDCwsKIj48nPz+fdevWceWVVxIeHk5oaCiDBw8mOTm50rIWi4U333yT6667juDgYLp168aqVavYtWsXl112GY0aNWLAgAHs3r27YpmnnnqKXr168eabbxIVFUVwcDC33norOTk51dbocrlITEykffv2BAUFERMTw+eff17xeXZ2NnfeeSctWrQgKCiIzp078+6779bo53G2vCYMORwONmzYQHx8fMU8q9VKfHw8q1atqnKZL7/8kri4OMaOHUtERAQXXnghzz777GkvwSsuLiY3N7fSVCfSN8FHt8B/n6yb9YuIiE85fPgwt99+O/feey9bt25l6dKl3HTTTRiGwYkTJxg9ejTLly9n9erVdO7cmWHDhnHixIlK65g2bRqjRo0iJSWFrl27cscdd3D//fczadIk1q9fj2EYjBs3rtIyu3bt4tNPP+Wrr75i4cKFbNy4kQcffLDaOhMTE/nggw+YNWsWW7Zs4eGHH+auu+5i2bJlADz55JP88ssvfPfdd2zdupU33niD8PBw9//AfsNrDpNlZWXhdDqJiIioND8iIoJt27ZVucyePXv44YcfuPPOO/n222/ZtWsXDz74ICUlJUydOrXKZRITE3n66afdXv8pmp5M/Tn7wTBAl3CKiEgtHD58mNLSUm666Sbatm0LQI8ePQC4/PLLK7V96623aNq0KcuWLeO6666rmJ+QkMCtt94KwGOPPUZcXBxPPvkkQ4cOBWD8+PEkJCRUWldRUREffPABbdq0AeDVV1/l2muv5aWXXiIyMrJS2+LiYp599lkWL15MXFwcAB06dGD58uW8+eabDB48mLS0NHr37k3fvn0BaNeunTt+PKflNSNDNeFyuWjZsiVvvfUWsbGxjBw5ksmTJzNr1qxql5k0aRI5OTkV0/79++umuJDzAAuUFkF+Zt1sQ0REfEZMTAxXXHEFPXr04JZbbuHtt98mOzsbgIyMDMaMGUPnzp0JDQ0lJCSEvLw80tLSKq2jZ8+eFa/LBx/KA1X5vKKiokpHTaKjoyuCEEBcXBwul4vt27efUuOuXbsoKCjgyiuvpHHjxhXTBx98UHH47YEHHuCTTz6hV69e/PWvf2XlypVu+OmcnteMDIWHh2Oz2cjIyKg0PyMj45TkWa5Vq1b4+/tj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XHvttXzyySesX7+et956y8xuiIiIiIfwujA0cuRIMjMzmTJlCunp6fTq1YuFCxdWXGmQlpaG1frrgNeAAQP46KOP+Nvf/sYTTzxB586dmT9/vkfcYyggIICpU6eecljOF/hq332136C++2LffbXfoL57W98thnE215yJiIiINExedc6QiIiIiLspDImIiIhPUxgSERERn6YwJCIiIj5NYaiOzZw5k3bt2hEYGEj//v1Zu3btadt/9tlndO3alcDAQHr06MG3335bT5W6T2JiIhdddBFNmjShZcuWDB8+nO3bt592mffeew+LxVJpCgwMrKeK3eOpp546pQ9du3Y97TINYX8DtGvX7pS+WywWxo4dW2V7b97fP/74I9dffz2tW7fGYrGc8pxDwzCYMmUKrVq1IigoiPj4eHbu3HnG9Z7r3woznK7vJSUlPPbYY/To0YNGjRrRunVrRo0axaFDh067zpr83tS3M+3ze+6555Q+XH311Wdcr7fvc6DK33uLxcILL7xQ7To9cZ8rDNWhuXPnMmHCBKZOnUpycjIxMTEMHTqUI0eOVNl+5cqV3H777dx3331s3LiR4cOHM3z4cDZv3lzPldfOsmXLGDt2LKtXr2bRokWUlJRw1VVXkZ+ff9rlQkJCOHz4cMWUmppaTxW7zwUXXFCpD8uXL6+2bUPZ3wDr1q2r1O9FixYBcMstt1S7jLfu7/z8fGJiYpg5c2aVn//zn//kX//6F7NmzWLNmjU0atSIoUOHUlRUVGV7OPe/FWY5Xd8LCgpITk7mySefJDk5mS+++ILt27dzww03nHG95/J7Y4Yz7XOAq6++ulIfPv7449OusyHsc6BSnw8fPszs2bOxWCyMGDHitOv1uH1+Fs9HlRrq16+fMXbs2Ir3TqfTaN26tZGYmFhl+1tvvdW49tprK83r37+/cf/999dpnXXtyJEjBmAsW7as2jbvvvuuERoaWn9F1YGpU6caMTExZ92+oe5vwzCM8ePHGx07djRcLleVnzeE/W0YhgEY8+bNq3jvcrmMyMhI44UXXqiYd/z4cSMgIMD4+OOPq13Puf6t8AS/73tV1q5dawBGampqtW3O9ffGbFX1e/To0caNN954TutpqPv8xhtvNC6//PLTtvHEfa6RoTricDjYsGED8fHxFfOsVivx8fGsWrWqymVWrVpVqT3A0KFDq23v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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "a = 0.6\n",
    "\n",
    "seed = secrets.randbits(128)\n",
    "rng = np.random.default_rng(seed)\n",
    "N = 100000\n",
    "y = rng.random(N)\n",
    "x = (1./a)*np.array(-np.log(y))\n",
    "\n",
    "# Plotting histogram of sampled values and checking that they are distributed as p(x)\n",
    "plt.hist(x, bins=100, density=True, ec = 'black', histtype='bar',label='samples')\n",
    "xlist = np.arange(0,10,0.01)\n",
    "px = a*np.exp(-a*xlist)\n",
    "plt.plot(xlist,px, label='p(x)')\n",
    "plt.xlabel('x',size=16)\n",
    "plt.ylabel(r'$p(x)=e^{-x}$',size = 16)\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Plotting the integrand"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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VI4cOZJTgg4dOsTRo0evuFrsLyEhIbmKUJ06dahRo0axXlJDpScPVHpERKQoyMzM5NixYxw6dIhjx45x9OhRjh07RkxMzFX3d3JyokaNGtSuXZuaNWvm3KpXr07JkiULOX3+U+nJA5UeEREpyhISEnIK0D//e/HixWs+pkKFCjklqEaNGjl/DgwMLDJjhlR68kClR0REihubzcb58+c5cuQIJ06cyHWLj4+/5uM8PT2pUaMG1apVo2rVqlStWpUqVapQtWpV/Pz87KoQqfTkgUqPiIg4kvj4eE6ePJlTgv76c0RERK4V5//Nw8MjpwD99d+//ly+fPlCX35DpScPVHpEREQgIyODiIgITpw4wenTp4mIiMi5RUZGXvVqsr+4urpSqVKlnFtISEiuP5cuXTrfzxLdzO9vp3x9ZRERESnSXFxcqFKlClWqVLnivoyMDM6ePUtEREROITp9+jRnzpzhzJkzpKenc+jQIQ4dOnTV527QoAHh4eEF/RauSaVHREREboiLi0vOmZt/y87OJioqioiICM6ePXvFLTY21vCrxVR6RERE5JZZLBbKlStHuXLlrnp/WloaqamphZwqN5UeERERKXBubm64u7sbmqFwh1iLiIiIGESlR0RERByCSo+IiIg4BJUeERERcQgqPSIiIuIQVHpERETEIaj0iIiIiENQ6RERERGHoNIjIiIiDkGlR0RERByCSo+IiIg4BJUeERERcQgqPSIiIuIQVHpERETEIaj0iIiIiENQ6RERERGHoNIjIiIiDkGlR0RERByCSo+IiIg4BJUeERERcQgqPSIiIuIQVHpERETEIaj0iIiIiENQ6RERERGHYNelZ9asWYSEhODm5kazZs3Ytm3bdff/7rvvqFmzJm5ubtStW5clS5YUUlIRERGxd3ZbeubPn09YWBjjxo0jPDyc0NBQOnbsSHR09FX337RpEz169ODpp59m586ddOnShS5durBv375CTi4iIiL2yGSz2WxGh7iaZs2a0aRJE2bOnAmA1WolODiYQYMGMXLkyCv27969OykpKfzyyy85226//Xbq16/P7Nmz//P1kpKS8Pb2JjExES8vr/x7I0B8fDxnz57N1+cUEREpasxmM7Vq1crX57yZ3992eaYnIyODHTt20KFDh5xtZrOZDh06sHnz5qs+ZvPmzbn2B+jYseM1909PTycpKSnXTURERAqO0edZ7LL0xMbGkp2djb+/f67t/v7+REVFXfUxUVFRN7X/pEmT8Pb2zrkFBwfnT/irsFgsBfbcIiIiRYWTk5Oxr2/oqxto1KhRhIWF5fw9KSmpwIqPl5cXNWrUMLzhioiIGMnokwB2WXp8fX2xWCycP38+1/bz588TEBBw1ccEBATc1P6urq64urrmT+Ab4OzsXGivJSIiIleyy6+3XFxcaNSoEStXrszZZrVaWblyJc2bN7/qY5o3b55rf4AVK1Zcc38RERFxLHZ5pgcgLCyM3r1707hxY5o2bcr06dNJSUmhb9++APTq1Yty5coxadIkAAYPHkybNm2YOnUq9913H9988w3bt2/no48+MvJtiIiIiJ2w29LTvXt3YmJiGDt2LFFRUdSvX59ly5blDFY+ffo0ZvPfJ6patGjB119/zZgxYxg9ejTVqlVj4cKF1KlTx6i3ICIiInbEbufpKWwFOU+PiIiIFIwiP0+PiIiISH5T6RERERGHoNIjIiIiDkGlR0RERByCSo+IiIg4BJUeERERcQgqPSIiIuIQVHpERETEIaj0iIiIiEOw22UoCttfE1MnJSUZnERERERu1F+/t29kgQmVnj8lJycDEBwcbHASERERuVnJycl4e3tfdx+tvfUnq9XKuXPn8PT0xGQy5etzJyUlERwcTEREhNb1+hcdm+vT8bk+HZ/r0/G5Ph2faytKx8Zms5GcnExQUFCuhcivRmd6/mQ2mylfvnyBvoaXl5fd//AYRcfm+nR8rk/H5/p0fK5Px+faisqx+a8zPH/RQGYRERFxCCo9IiIi4hBUegqBq6sr48aNw9XV1egodkfH5vp0fK5Px+f6dHyuT8fn2orrsdFAZhEREXEIOtMjIiIiDkGlR0RERByCSo+IiIg4BJUeERERcQgqPflk1qxZhISE4ObmRrNmzdi2bdt19//uu++oWbMmbm5u1K1blyVLlhRS0sJ3M8dm3rx5mEymXDc3N7dCTFu41q1bR+fOnQkKCsJkMrFw4cL/fMyaNWto2LAhrq6uVK1alXnz5hV4TqPc7PFZs2bNFT8/JpOJqKiowglciCZNmkSTJk3w9PTEz8+PLl26cPjw4f98nKN89uTl+DjS58+HH35IvXr1ciYfbN68OUuXLr3uY4rDz45KTz6YP38+YWFhjBs3jvDwcEJDQ+nYsSPR0dFX3X/Tpk306NGDp59+mp07d9KlSxe6dOnCvn37Cjl5wbvZYwOXZwCNjIzMuZ06daoQExeulJQUQkNDmTVr1g3tf+LECe677z7atWvHrl27GDJkCP369WP58uUFnNQYN3t8/nL48OFcP0N+fn4FlNA4a9euZcCAAWzZsoUVK1aQmZnJ3XffTUpKyjUf40ifPXk5PuA4nz/ly5fnrbfeYseOHWzfvp327dvz4IMPsn///qvuX2x+dmxyy5o2bWobMGBAzt+zs7NtQUFBtkmTJl11/27dutnuu+++XNuaNWtme/bZZws0pxFu9th89tlnNm9v70JKZ18A24IFC667z4gRI2y1a9fOta179+62jh07FmAy+3Ajx2f16tU2wBYfH18omexJdHS0DbCtXbv2mvs40mfPv93I8XHkzx+bzWbz8fGxffLJJ1e9r7j87OhMzy3KyMhgx44ddOjQIWeb2WymQ4cObN68+aqP2bx5c679ATp27HjN/YuqvBwbgIsXL1KxYkWCg4Ov+y8PR+QoPzu3qn79+gQGBnLXXXexceNGo+MUisTERABKly59zX0c+efnRo4POObnT3Z2Nt988w0pKSk0b978qvsUl58dlZ5bFBsbS3Z2Nv7+/rm2+/v7X3McQVRU1E3tX1Tl5djUqFGDuXPn8tNPP/G///0Pq9VKixYtOHPmTGFEtnvX+tlJSkri0qVLBqWyH4GBgcyePZsffviBH374geDgYNq2bUt4eLjR0QqU1WplyJAhtGzZkjp16lxzP0f57Pm3Gz0+jvb5s3fvXjw8PHB1deW5555jwYIF1KpV66r7FpefHa2yLnalefPmuf6l0aJFC2677TbmzJnD66+/bmAyKQpq1KhBjRo1cv7eokUL/vjjD959912+/PJLA5MVrAEDBrBv3z42bNhgdBS7dKPHx9E+f2rUqMGuXbtITEzk+++/p3fv3qxdu/aaxac40JmeW+Tr64vFYuH8+fO5tp8/f56AgICrPiYgIOCm9i+q8nJs/s3Z2ZkGDRpw7NixgohY5FzrZ8fLy4sSJUoYlMq+NW3atFj//AwcOJBffvmF1atXU758+evu6yifPf90M8fn34r754+LiwtVq1alUaNGTJo0idDQUN57772r7ltcfnZUem6Ri4sLjRo1YuXKlTnbrFYrK1euvOZ3o82bN8+1P8CKFSuuuX9RlZdj82/Z2dns3buXwMDAgopZpDjKz05+2rVrV7H8+bHZbAwcOJAFCxawatUqKlWq9J+PcaSfn7wcn39ztM8fq9VKenr6Ve8rNj87Ro+kLg6++eYbm6urq23evHm2AwcO2J555hlbqVKlbFFRUTabzWbr2bOnbeTIkTn7b9y40ebk5GR75513bAcPHrSNGzfO5uzsbNu7d69Rb6HA3Oyxee2112zLly+3/fHHH7YdO3bYHnvsMZubm5tt//79Rr2FApWcnGzbuXOnbefOnTbANm3aNNvOnTttp06dstlsNtvIkSNtPXv2zNn/+PHjNnd3d9vw4cNtBw8etM2aNctmsVhsy5YtM+otFKibPT7vvvuubeHChbajR4/a9u7daxs8eLDNbDbbfvvtN6PeQoF5/vnnbd7e3rY1a9bYIiMjc26pqak5+zjyZ09ejo8jff6MHDnStnbtWtuJEydse/bssY0cOdJmMplsv/76q81mK74/Oyo9+WTGjBm2ChUq2FxcXGxNmza1bdmyJee+Nm3a2Hr37p1r/2+//dZWvXp1m4uLi6127dq2xYsXF3LiwnMzx2bIkCE5+/r7+9vuvfdeW3h4uAGpC8dfl1j/+/bXMendu7etTZs2Vzymfv36NhcXF1vlypVtn332WaHnLiw3e3wmT55sq1Klis3Nzc1WunRpW9u2bW2rVq0yJnwBu9pxAXL9PDjyZ09ejo8jff489dRTtooVK9pcXFxsZcuWtd155505hcdmK74/OyabzWYrvPNKIiIiIsbQmB4RERFxCCo9IiIi4hBUekRERMQhqPSIiIiIQ1DpEREREYeg0iMiIiIOQaVHREREHIJKj4iIiDgElR4RERFxCCo9IiIi4hBUekRERMQhqPSIiIiIQ1DpEZFiZ9CgQZhMJlq3bk1WVtYV97/yyiuYTCYaNmxIWlqaAQlFxAhaZV1Eip2MjAxatmzJ9u3befnll3nrrbdy7lu2bBn33nsvnp6e7Nixg6pVqxqYVEQKk0qPiBRLJ06coGHDhiQmJrJ48WI6derEmTNnaNCgAbGxsXz77bc8+uijRscUkUKkr7dEpFiqVKkS8+bNw2az0bNnT06cOMFjjz1GbGwsAwcOVOERcUA60yMixdqwYcOYNm0a3t7eJCYm0rhxYzZu3IiLi4vR0USkkKn0iEixlpWVRWhoKAcOHKBkyZLs3buXSpUqGR1LRAygr7dEpFjbunUrR44cASAlJYW9e/canEhEjKLSIyLFVmxsLI899hhZWVn07dsXk8lEnz59OHXqlNHRRMQAKj0iUiz9NYD5zJkz9OrVi7lz5zJs2DDi4+Pp3r07mZmZRkcUkUKm0iMixdKkSZNYtmwZtWrV4oMPPsjZ1rx5c7Zu3cqIESMMTigihU0DmUWk2Fm3bh3t27fH1dWV33//nVq1auXcd/r0aRo0aEBcXBwLFy7kwQcfNDCpiBQmnekRkWIlJiaGHj16kJ2dzaxZs3IVHoAKFSowb948TCYTffv25eTJk8YEFZFCpzM9IiIi4hB0pkdEREQcgkqPiIiIOASVHhEREXEIKj0iIiLiEFR6RERExCGo9IiIiIhDUOkRERERh6DSIyIiIg5BpUdEREQcgkqPiIiIOASVHhEREXEIKj0iIiLiEP4fp1XUEg0OlEkAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def f(x): return 1/(x**2 + np.cos(x)**2)\n",
    "\n",
    "x = np.arange(0.001,np.pi,0.0001)\n",
    "y = f(x)\n",
    "z = np.exp(-a*x)\n",
    "plt.plot(x,y,color='black')\n",
    "plt.plot(x,z)\n",
    "plt.fill_between(x,y, color='lightgray')\n",
    "plt.xlabel('x',size = 16)\n",
    "plt.ylabel('f(x)', size = 16)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Importance sampling with $w(x) = e^{-ax}$, $\\large I = \\frac{1}{N} \\sum \\frac{f(x_i)}{w(x_i)} \\int_a^b w(x)dx$ "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "I = 1.5840148800595089\n"
     ]
    }
   ],
   "source": [
    "def f(x): return 1./(x**2 + np.cos(x)**2)\n",
    "\n",
    "N = 100000\n",
    "# Sampling uniform r.v.\n",
    "x = rng.random(N)\n",
    "# Inverse transform\n",
    "x = (-1./a)*np.log(x)\n",
    "# Getting f(xi) and w(xi)\n",
    "w = np.exp(-a*x)\n",
    "fx = f(x)\n",
    "# Evaluating \\int_a^b w(x)dx\n",
    "normalization = (-1. + np.exp(-a*np.pi))*(-1/a)\n",
    "# Applying formula\n",
    "I = (1./float(N))*normalization*np.sum(fx/w)\n",
    "\n",
    "print('I =', I)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Same integral by Simpson's rule"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "I = 1.5810413797509317\n"
     ]
    }
   ],
   "source": [
    "def f(x): return 1./(x**2 + np.cos(x)**2)\n",
    "\n",
    "dx = 0.01\n",
    "x = np.arange(0,np.pi,dx)\n",
    "fx = f(x)\n",
    "I = integrate.simpson(fx,x)\n",
    "\n",
    "print('I =', I)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Exercise 2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Three point particles, A,B,C, are initially positioned in the vertices of an equilateral triangle with side length $l = 3$ [hence you can assign initial coordinates $A = (0,0)$, $B = (3,0)$, $C = (1.5,\\frac{3\\sqrt{3}}{2}$)]. From this configuration, the particles start moving in such a way that, at each instant in time: \n",
    "- the velocity of particle $A$ points towards $B$\n",
    "- the velocity of particle $B$ points towards $C$\n",
    "- the velocity of particle $C$ points towards $A$\n",
    "- The modulus of each velocity stays always constant and equal to $v = 2$.\n",
    "\n",
    "1. Write a function that computes the components $v_x$ and $v_y$, at any given time, as a function of the positions of a pair of particles and of the modulus of the velocity (pointing from one partcicle to the other)\n",
    "2. Integrate the equation of motions for the three particle system, with intial time $t_0 = 0$ and final time $t_1 = 1$; take a step $\\Delta t = 0.01$.\n",
    "3. Make a plot of the three trajectories (you should see that they meet at $t_1=1$, in the baricenter of the triangle)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from scipy import integrate\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Velocity components"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "def v_components(v,P1,P2):\n",
    "    # Component x of the vector connecting the two particles\n",
    "    dx = P2[0] - P1[0] \n",
    "    # Component y of the vector connecting the two particles\n",
    "    dy = P2[1] - P1[1]\n",
    "    # Length of the vector connecting the two particles\n",
    "    l = np.sqrt(dx**2 + dy**2)\n",
    "    # Cosine and sine of the angle formed between the vector and the x-axis\n",
    "    cos12 = dx/l\n",
    "    sin12 = dy/l\n",
    "    # Velocity components\n",
    "    vx = v*cos12\n",
    "    vy = v*sin12\n",
    "    return np.array([vx,vy])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Solving simple ODE to get trajectories. \n",
    "\n",
    "If $\\mathbf{x}$ is the position vector of a given particle at time $t$, we just have to integrate $d \\mathbf{x}/dt = \\mathbf{v}(\\mathbf{x})$. We get a system of six equations (for each particle, one equation per component). "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "def f(x,t):\n",
    "    # Derivatives\n",
    "    v = 2.\n",
    "    A = x[0:2]\n",
    "    B = x[2:4]\n",
    "    C = x[4:6]\n",
    "    vAB = v_components(v,A,B)\n",
    "    vBC = v_components(v,B,C)\n",
    "    vCA = v_components(v,C,A)\n",
    "    v = np.concatenate( (vAB,vBC,vCA) )\n",
    "    return v\n",
    "\n",
    "# Time steps\n",
    "t = np.arange(0.,1.01,0.01)\n",
    "#Initial positions\n",
    "A0 = np.array([0.,0.])\n",
    "B0 = np.array([3.,0.])\n",
    "C0 = np.array([1.5,1.5*np.sqrt(3.)])\n",
    "x0 = np.concatenate( (A0,B0,C0) )\n",
    "\n",
    "# Solving with scipy ODEint\n",
    "sol = integrate.odeint(f, x0, t)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Plotting trajectories"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig,ax = plt.subplots()\n",
    "ax.plot(sol[:,0],sol[:,1])\n",
    "ax.plot(sol[:,2],sol[:,3])\n",
    "ax.plot(sol[:,4],sol[:,5])\n",
    "triangle = plt.Polygon( [(0,0),(3,0), (1.5,1.5*np.sqrt(3.))],ec='black',fc='None' )\n",
    "ax.add_patch(triangle)\n",
    "plt.xlabel('x',size=16)\n",
    "plt.ylabel('y',size=16)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "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.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
