diff --git a/.github/workflows/continuousintegration.yml b/.github/workflows/continuousintegration.yml index 612af08..2ad5ed6 100644 --- a/.github/workflows/continuousintegration.yml +++ b/.github/workflows/continuousintegration.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.9, "3.10", "3.11"] + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v2 diff --git a/examples/notebooks/resolution_definition.ipynb b/examples/notebooks/resolution_definition.ipynb index 38becc8..645d7bd 100644 --- a/examples/notebooks/resolution_definition.ipynb +++ b/examples/notebooks/resolution_definition.ipynb @@ -26,7 +26,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false @@ -52,35 +52,13 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "68th percentile = 2.9999\n", - "95th percentile = 6.0005\n", - "99th percentile = 8.9907\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD8CAYAAAB5Pm/hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAXe0lEQVR4nO3df3SV1Z3v8fdHIAth7CoXQYXAgHMZgVJkaqp4taIzQ43FlrnVruKytvVCs3ANU/qDq6hr9Re2F2/lKm0ZKHUo6u1Ifyh3WGNadVmpbYURsOBvnJgycsQWTFuxQy1y+c4f54Q5hBPyJDkn52Tzea2VlfM8z94n35PAJzs7+9lRRGBmZuk6qdoFmJlZZTnozcwS56A3M0ucg97MLHEOejOzxDnozcwSlynoJTVK2impRdLiEtdnS3pK0nZJWyVdmLWvmZlVlrpaRy9pAPAiMBPIAVuAqyLiuaI2fwL8e0SEpKnA9yJiYpa+ZmZWWVlG9OcCLRHRGhEHgXXA7OIGEfH7+M/vGEOByNrXzMwqa2CGNqOB3UXHOeC8jo0k/XfgfwEjgVnd6Vvo3wQ0AQwdOvSciRMnZijtBLVzZ/79WWdVt44K29mWf51nDU/5dRa+lqT8Gq0vbNu27bWIGFHqWpagV4lzx8z3RMR6YL2ki4AlwF9n7VvovxpYDdDQ0BBbt27NUNoJ6uKL8+83bqxmFRV38dqLAdj48Y1VraOyLi6831jFGiwFkv6ts2tZpm5ywJii43pgT2eNI+Ix4M8kndrdvmZmVn5Zgn4LMEHSeEl1wBxgQ3EDSf9VkgqP3wXUAW1Z+pqZWWV1OXUTEYckLQAeBAYAayLiWUnzC9dXAVcAH5X0FvAH4MOFX86W7Fuh12JmZiVkmaMnIpqB5g7nVhU9vhW4NWtfM7NKeOutt8jlcrz55pvVLqViBg8eTH19PYMGDcrcJ1PQm5n1B7lcjlNOOYVx48ZRmE1OSkTQ1tZGLpdj/Pjxmft5CwQzS8abb77J8OHDkwx5AEkMHz682z+xOOjNLCmphny7nrw+B72ZWeIc9GZmZfa73/2OK6+8kokTJzJp0iQ2bdrE9u3bmT59OtOmTaOhoYEnnngCgJ///OdMnTqVd7/73bS0tBzpf+mll1Kuv+ntoDczK7OFCxfS2NjICy+8wI4dO5g0aRLXX389n//859m+fTtf+tKXuP766wFYtmwZ9913H1/5yldYuXIlAEuWLOGmm24q2zSUV92YmZXR/v37eeyxx1i7di0AdXV11NXVIYn9+/cD8PrrrzNq1CgABg0axB/+8AcOHDjAoEGDeOmll3jllVeYMWNG2Wpy0JtZutr3hSqXDPtLtba2MmLECK699lp27NjBOeecw/Lly7njjju49NJLWbRoEYcPH+bxxx8H4MYbb6SpqYmTTz6Ze+65h0WLFrFkyZKylu2pGzOzMjp06BBPPvkk1113Hb/4xS8YOnQoS5cuZeXKldx+++3s3r2b22+/nblz5wIwbdo0Nm/ezKOPPkprayujRo0iIvjwhz/MRz7yEX7961/3uiaP6M0sXVXY4bW+vp76+nrOOy+/I/uVV17J0qVL+dnPfsby5csB+NCHPsS8efOO6hcR3HLLLXz3u99lwYIFfPGLX2TXrl187Wtf48tf/nKvavKI3sysjE4//XTGjBnDzsLfjXjkkUeYPHkyo0aN4ic/+QkAP/7xj5kwYcJR/e666y5mzZrFsGHDOHDgACeddBInnXQSBw4c6HVNHtGbmZXZ17/+da6++moOHjzImWeeybe//W1mz57NwoULOXToEIMHD2b16tVH2h84cIC77rqLhx56CIDPfOYzXHHFFdTV1XHvvff2uh4HvZlZmU2bNo2OfzzpwgsvZNu2bSXbDxkyhEcfffTI8Xve8x6efvrpstXjqRszs8Q56M3MEuegNzNLnIPezCxxDnozs8Q56M3MEpdc0I9b/MBRb2ZmfW358uVMmTKFd7zjHdxxxx0AfOELX2D06NFMmzaNadOm0dyc/1PafbFNsdfRm5mV0TPPPMO3vvUtnnjiCerq6mhsbGTWrFkAfPrTn2bRokVHtW/fpnjXrl2sXLmSZcuWeZvi7jreqH7X0ll9WImZnQief/55pk+fzpAhQwCYMWMG69ev77S9tyk2M+uFi9deXNbn2/jxjV22mTJlCjfffDNtbW2cfPLJNDc309DQwPDhw/nGN77B3XffTUNDA8uWLWPYsGHeptjMrL+ZNGkSN9xwAzNnzqSxsZGzzz6bgQMHct111/HSSy+xfft2zjjjDD772c8C3qbYzKxXsozAK2Hu3LlH9pu/6aabqK+v57TTTjty/ROf+ASXX375UX0quU3xCR30HefvPWdvZuWw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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "loc = 10\n", "scale = 3\n", @@ -122,36 +100,13 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'err')" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABJEAAAGrCAYAAABwlwbeAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3df7SddX0v+PcHgoA/oIqBwQQ9tKJWoaJEhg5rWhSVtHHErqW3cY0lM0NXphStztQpodc113tXWSvcewda20oXV2zAosCi9co1YguxTH8sBINFESiakVw4DQMRLEVb0MB3/jhPmJNkn/OcJOecvc85r9dae+29P/v5bj7PZufkyft8n+9TrbUAAAAAwHQOGXYDAAAAAIw+IRIAAAAAvYRIAAAAAPQSIgEAAADQS4gEAAAAQC8hEgAAAAC9hEgAAAAA9BIiAQAAANBLiAQAAECvqlo2kxqweAmRAAAAlrCqekVV/WlV7ayqB6vqN7r6x6vqxqr6k6r6pyT/06DaUJsH5pUQCQAAYImqqkOS/Jck30iyIsnZST5SVed0m5yb5MYkP5Hk2mlqwBIgRAIAAFi63pJkeWvt37XWftRa+26S/5Rkbff67a21/9xae6619i/T1IAlwPmrAAAAS9erkryiqv5xUu3QJH+d5L8meXjAmEE1YAkwEwkAAGDpejjJg621n5h0e0lr7Re719uAMYNqwBIgRAIAAFi67kzyT1V1UVUdWVWHVtXJVfWWYTcGjB4hEgAAwBLVWns2yf+Q5NQkDyb5XpJPJTl6mH0Bo6laMxMRAAAAgOmZiQQAAABALyESAAAAAL2ESAAAAAD0EiIBAAAA0GvZsBs4UC9/+cvb2NjYsNsAZuqBBybuX/va4fYBLBh33XXX91pry4fdB3tyDAYAi9t0x2ALNkQaGxvL1q1bh90GMFNnnTVxf9ttw+wCWECq6r8Ouwf25RgMABa36Y7BnM4GAAAAQC8hEgAAAAC9hEgAAAAA9FqwayIBwGL24x//OOPj43n66aeH3cqcO+KII7Jy5cocdthhw24FAIBpCJEAYASNj4/nJS95ScbGxlJVw25nzrTW8vjjj2d8fDwnnnjisNsBAGAaTmcDgBH09NNP55hjjlnUAVKSVFWOOeaYJTHjCgBgoRMiAcCIWuwB0m5LZT8BABY6IRIAAAAAvYRIAMCM/eqv/mruu+++YbcBAMAQWFgbAJixT33qU8NuAQCAITETCQAY6Ic//GHWrFmTN77xjTn55JNz/fXX56yzzsrWrVuTJC9+8Ytz0UUX5bTTTsvb3/723HnnnTnrrLPykz/5k7npppuSJJs2bcoHP/jB59/zXe96V2677bZh7A4AAAfJTCQAGHUf+Uhy992z+56nnpr87u9Ou8mXv/zlvOIVr8jmzZuTJE8++WSuuOKK51//4Q9/mLPOOiuXXnppfumXfikf+9jHcsstt+S+++7LunXr8u53v3t2ewYAYKjMRAIABjrllFNy66235qKLLspf//Vf5+ijj97j9Re84AVZvXr189v+/M//fA477LCccsop2b59+xA6BgBgLpmJBACjrmfG0Fx5zWtek7vuuitf+tKXcvHFF+ed73znHq8fdthhqaokySGHHJLDDz/8+ce7du1KkixbtizPPffc82OefvrpeeoeAIDZNqOZSFW1varuqaq7q2prV3tZVd1SVd/p7l86afuLq2pbVT1QVedMqp/Wvc+2qvpEdUeeVXV4VV3f1e+oqrHZ3U0AYH/t2LEjL3zhC/OBD3wgH/3oR/P1r399v99jbGwsd999d5577rk8/PDDufPOO+egUwAA5sP+nM721tbaqa21Vd3zDUm2tNZOSrKle56qen2StUnekGR1kk9W1aHdmCuSrE9yUndb3dXPT/L91tqrk1ye5NID3yUAYDbcc889Of3003Pqqafmkksuycc+9rH9fo8zzzwzJ554Yk455ZR89KMfzZvf/OY56BQAgPlwMKeznZvkrO7x1UluS3JRV7+utfZMkgeraluS06tqe5KjWmu3J0lVXZPkPUlu7sZ8vHuvG5P8QVVVa60dRH/AiBjbsDnXfffxJMnaDZufr2/fuGZYLQEzcM455+Scc87Zozb5ymo/+MEPnn/88Y9/fI/tdr9WVbn22mvnrEcWl7FJf0dM5u8LABgNM52J1JL8RVXdVVXru9pxrbVHkqS7P7arr0jy8KSx411tRfd47/oeY1pru5I8meSYvZuoqvVVtbWqtu7cuXOGrQMAAABwsGY6E+nM1tqOqjo2yS1V9ffTbFsDam2a+nRj9iy0dmWSK5Nk1apVZikBAAAAzJMZhUittR3d/WNV9fkkpyd5tKqOb609UlXHJ3ms23w8yQmThq9M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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "simu = loc * np.ones(X.shape[0])\n", "reco = np.random.normal(loc=loc, scale=scale, size=X.shape[0])\n", @@ -178,21 +133,13 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[3.0029721 2.99821785 3.00797764]\n" - ] - } - ], + "outputs": [], "source": [ "res = resolution(simu, reco, relative_scaling_method=None)\n", "print(res)\n", @@ -208,7 +155,7 @@ "\n", "The resolution can be measured on the absolute error or on the relative one. \n", "\n", - "$$ err = (reco - simu)/scaling $$ \n", + "$ err = (reco - simu)/scaling $\n", "\n", "\n", "There is no absolute definition of the relative scaling and several are proposed in `ctaplot`. \n", @@ -216,10 +163,10 @@ "\n", "Methods: \n", "- `s0` : no scaling (scaling = 1) \n", - "- `s1` : $ scaling = |simu| $ \n", - "- `s2` : $ scaling = |reco| $ \n", - "- `s3` : $ scaling = (|simu| + |reco|)/2 $ \n", - "- `s4` : $ scaling = max(|reco|, |simu|) $ \n", + "- `s1` : $ scaling = \\lvert simu \\rvert $\n", + "- `s2` : $ scaling = \\lvert reco \\rvert $\n", + "- `s3` : $ scaling = (\\lvert simu \\rvert + \\lvert reco \\rvert)/2 $\n", + "- `s4` : $ scaling = max(\\lvert reco \\rvert, \\lvert simu \\rvert) $ \n", "\n", "The default one for the resolution is `s1`. " ] @@ -233,24 +180,13 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Method s1 gives a resolution = 0.300 to be compared with the expected value = 0.3\n", - "Method s2 gives a resolution = 0.288 to be compared with the expected value = 0.3\n", - "Method s3 gives a resolution = 0.297 to be compared with the expected value = 0.3\n", - "Method s4 gives a resolution = 0.259 to be compared with the expected value = 0.3\n" - ] - } - ], + "outputs": [], "source": [ "for method in ['s1', 's2', 's3', 's4']:\n", " res = resolution(simu, reco, relative_scaling_method=method)\n", @@ -301,33 +237,13 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The true 68th percentile of this distribution is: 11.4226\n" - ] - } - ], + "outputs": [], "source": [ "nbins, bins, patches = plt.hist(X, bins=100, density=True)\n", "ymax = 1.1 * nbins.max()\n", @@ -350,33 +266,13 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Standard deviation = 0.11973\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAEICAYAAAC6fYRZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAaY0lEQVR4nO3dfbRcdX3v8feHJEB4kKg5t0AeoQLysC4PxhCk9aaKypNltcU2XIWKerPgYgXEFhRFsFrovb3UYiy5seIRpFAqSCmEK9xKCqgBk5gEMOCNMZKQQA6h5AEQCHzvH7/fwWEy58yec+Zkzvnxea016+w9+7d/+7tn7/OZPXv2zCgiMDOzMu3U6QLMzGzoOOTNzArmkDczK5hD3sysYA55M7OCOeTNzArmkK9A0lxJX2hTX5MlbZU0Ko8vkPSJdvSd+7tT0p+2q78WlvtlSU9LerJi+0slfWeo6yqFpI9Kun8HLWuqpJA0ekcsr1MkfVjSXTXjIeltnaxpKLzhQ17SakkvSNoi6VlJP5J0lqTXHpuIOCsi/rJiX8f11yYiHo+IPSLilTbUvl1QRsQJEfHtwfbdYh2TgAuAQyJi7wbTZ0pauyNreqORNCo/0a7L+/JPJY3L05SnPSFpUz6wOLRm3qb77UjX6IkrIq6PiPd3sq4d4Q0f8tkHI2JPYApwBXAh8M12L6TgI6MpwMaI2NDpQkaCIdoPLgPeBRwDvAk4Hfh1nvYh4GPA7wJvAX4MXDcENQxa7ytca6OIeEPfgNXAcXX3TQdeBQ7L493Al/PweOB24FngGeA+0pPldXmeF4CtwF8AU4EAPg48Dtxbc9/o3N8C4HLgQWAT8C/AW/K0mcDaRvUCxwMvAS/n5S2r6e8TeXgn4PPAr4ANwLXAXnlabx1/mmt7Gri4n8dprzx/T+7v87n/4/I6v5rr6K6bb/e66VuBfYFLgZtyn1uAR4BpNfPtC9ycl/dL4FP91NYN/D1wZ+7/h8DewFeB/wAeBY6s0nfe9j/O23c9MAfYOU8T8Lf5sdwELOc3+8hrj3se/yhwf814AOcA/w/4Zb7v7cDdpP3oMeCPa9q/FbgN2Jz3jb+s7a9u/d+c1/u3+5h+IXBTzfihwK/zcH/7bdV9oxuYm9dlC/DvwJSa6f2tZzdwNTAfeC7vT2OB/0XazzYB9wNjc/sZwI/y9lkGzKzpa0F+nH6Y67gLGJ+nPZ7XqXcfPKaPbfS2PLwL8Dd5vqfy+o3tdF4NKOM6XUCnbzQI+Zqd4uyaHbE35C/PG3xMvv0uoEZ91fyzXEsKu7E0DvkngMNym5uB7+RpM+kj5PPwpb1ta6Yv4Dch/zFgJbA/sAdwC3BdXW3fyHUdDrwIHNzH43Qt6Qlozzzvz4GP91Vn3byN1uNS0pHmicCo/LguzNN2AhYDlwA75/pXAR/oo/9uUhC9A9gV+AEpvM/IfX8ZuKdK37mPGcDovJ4rgPPytA/keceRAv9gYJ/6xz2Pf5TtA+Ru0pH02Lyt1wBn5mUdldfh0Nz+RtKT4O5533iCvkP+3aTQuxB4Mm+bc2qmTwGWAAeS9tn/Adza1//AAPaNblKovpsUjn/XW2uF9ewmBfmxedvsCnw9P54T8vZ7V+53ArCRtM/sBLwvj3fVbINf5PUcm8evqFun0U22UW/If5X0JPsW0j7/r8Dlnc6rgdx8uqZv60gbuN7LwD6kI5WXI+K+yHtFPy6NiOci4oU+pl8XEQ9HxHPAF4A/btPL1g8DV0bEqojYCnwWmFV3uuCyiHghIpaRjowOr+8k1/InwGcjYktErCYdaZ0+yPruj4j5kd6fuK5m2e8k/eN+KSJeiohVpMCZ1U9f34uIxRHxa+B7pCPVa3Pf/wQcWaXv3MfCiNiW1/N/A/8lz/sy6R/+7aQn9hURsb6F9b08Ip7J+8HJwOqI+FZe1hLSE/yp+fH+I+CSvN88DPT3PstE0iutA4H9gFOBSyW9L09fT3rF+RjpiP1DwPkV6m26b9S4IyLujYgXgYuBY/J7NX2uZ828/xIRP4yIV0mvTj8GnBsRT0TEKxHxo9zvR4D5eZ95NSLuBhaRQr/XtyLi5/kxvgk4osJ6vo4kAf8NOD9vry3AX9H//jdslXqOuB0mkF5e1vufpKPQu9K+wLyIuKJJX2tamP4r0tHW+Gpl9mvf3F9t36OB36q5r/ZqmOdJR/z1xpOOeuv7mjDI+uqXvWt+ApoC7Cvp2Zrpo0hB1ZenaoZfaDDeu1799i3pQOBKYBqwG+nxWgwQET+QNId0pDlZ0veAz0TE5grrCq/fzlOAo+vqGE16suvKw/X7RV96Dx6+lMNtuaQbSeF3N/BF0pPbJNJj/hHgB5IOjYjn++m3yr7R67VaI2KrpGdI+19/67ndvKR9bVfSEXm9KcCHJH2w5r4xwD0DrLkvXaRtvzj/j0N65TYi3y/wkXwDkt5JCrDtLlnLR7IXRMT+wAeBT0t6b+/kPrpsdqQ/qWZ4MumI8WnSOcrdauoaRdoBq/a7jvSPUdv3Nl4fgFU8nWuq7+uJivO3+lWna0jnrcfV3PaMiBObzjn4vq8mncM/ICLeBHyO9A+eViTiqoh4B+m89oHAn+dJr9tWpPcE6tU+DmuAf6+rY4+IOJv0XsE2tt8v+rK8Qf+1Dgf+KSLW5qPpbtJ5/EOazNeK12qVtAfpVfA6+l/PXrXLf5p0Gu+3GyxjDelVb21fu1c4yKpfRjNPk544D61Zzl4RMZAnjI5zyNeQ9CZJJ5POh34nIh5q0OZkSW/LL+k2A6/kG6Tw3H8Ai/6IpEMk7QZ8CfhuPs3wc9LR7UmSxpDe7NylZr6ngKm1l3vWuQE4X9J++R/vr0j/7NtaKS7XchPwFUl7SpoCfBqoep37U8BbJe1Vsf2DwGZJF0oamy8PPCw/+Q5Ws773JG3XrZLeDrwWRpLeKenovC2eI4VR77ZfCvyhpN3ytdYfb1LH7cCBkk6XNCbf3inp4Px430I65bKbpENIb4I2FBG/IL0SuVjSLpIOJp1euz03+QnpCPi3JO0k6XTSEfDKPH2g+22tEyX9jqSdSW9+PhARa/pbzz7W5VXgGuBKSfvm7XOMpF1I+9sHJX0g379rvjx3YoX6ekhvMDddz1zDN4C/lfSfACRNkPSBCssZdhzyyb9K2kI6UriY9HL9zD7aHgD8X9I79D8G/j4iFuRplwOfz9fbf6aF5V9HegPqSdJL1U8BRMQm4L8D/0A6an4OqL3e/J/z342SljTo95rc972kNyJ/DfxZC3XV+rO8/FWkVzj/mPtvKiIeJT3hrMqPzb5N2r9CepV0RK77adJjUPVJYjB9fwb4r6Q3Er9BOp/f6035vv8gnT7ZSLoCA9JVNy+RAvPbwPVN6tgCvJ90nncdadv/Nb95Ev8k6VTDk6R941tNVu008qWswB3AFyLi3/K0vyadU19KeoP2fOCPIqL3FMpA99ta/0g6LfQM6c3rD1dcz0Y+AzxEenJ6JrffKT9pnEJ6ddVD+n/9cyrkWD4t9RXgh3k9ZzSZ5ULSk+BCSZtJ//MHNVvOcNR7VYiZ2YBI6iZdPfX5Ttdi2/ORvJlZwRzyZmYF8+kaM7OC+UjezKxgHfsw1Pjx42Pq1KmdWry102OPpb8HjciLD7bzWF6fg0pYn8K2jcHixYufjoiu5i2TjoX81KlTWbRoUacWb+00c2b6u2BBJ6tom5l5fRaUsD6FbRsDSf19+nk7Pl1jZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcGahnz+Os8HJS2T9Iikyxq0mZl/BX5pvl0yNOWamVkrqlwn/yLwnvxrL2OA+yXdGREL69rdFxEnt79EMzMbqKYhH+nLbbbm0d4fr/YX3piZjQCVzsnnX2FZCmwA7o6IBxo0Oyaf0rlT0qFtrdLMzAakUsjnX0w/gvSr8NMlHVbXZAkwJSIOB74G3NqoH0mzJS2StKinp2cwdZuZWQUtXV2Tfy5sAXB83f2bI2JrHp4PjJE0vsH88yJiWkRM6+qq/P06ZmY2QFWurumSNC4PjwWOI/2afW2bvfMPWyNpeu53Y/vLNTOzVlS5umYf4NuSRpHC+6aIuF3SWQARMRc4FThb0jbgBWBW+NdIzMw6rsrVNcuBIxvcP7dmeA4wp72lmZnZYPkTr2ZmBXPIm5kVzCFvZlawjv38n1kzUy+6oyPLfXLVRmbs/9aOLNus3Xwkb2ZWMIe8mVnBHPJmZgVzyJuZFcwhb2ZWMIe8mVnBHPJmZgVzyJuZFcwhb2ZWMIe8mVnBHPJmZgVzyJuZFcwhb2ZWMIe8mVnBHPJmZgVzyJuZFcwhb2ZWsKYhL2lXSQ9KWibpEUmXNWgjSVdJWilpuaSjhqZcMzNrRZWf/3sReE9EbJU0Brhf0p0RsbCmzQnAAfl2NHB1/mtmZh3U9Eg+kq15dEy+RV2zU4Brc9uFwDhJ+7S3VDMza1Wlc/KSRklaCmwA7o6IB+qaTADW1IyvzffV9zNb0iJJi3p6egZas5mZVVQp5CPilYg4ApgITJd0WF0TNZqtQT/zImJaREzr6upqvVozM2tJS1fXRMSzwALg+LpJa4FJNeMTgXWDqszMzAatytU1XZLG5eGxwHHAo3XNbgPOyFfZzAA2RcT6tldrZmYtqXJ1zT7AtyWNIj0p3BQRt0s6CyAi5gLzgROBlcDzwJlDVK+ZmbWgachHxHLgyAb3z60ZDuCc9pZm1jkLV21k6kV37PDlrr7ipB2+TCubP/FqZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVrGnIS5ok6R5JKyQ9IuncBm1mStokaWm+XTI05ZqZWStGV2izDbggIpZI2hNYLOnuiPhZXbv7IuLk9pdoZmYD1fRIPiLWR8SSPLwFWAFMGOrCzMxs8Fo6Jy9pKnAk8ECDycdIWibpTkmHtqE2MzMbpCqnawCQtAdwM3BeRGyum7wEmBIRWyWdCNwKHNCgj9nAbIDJkycPuGgzM6um0pG8pDGkgL8+Im6pnx4RmyNiax6eD4yRNL5Bu3kRMS0ipnV1dQ2ydDMza6bK1TUCvgmsiIgr+2izd26HpOm5343tLNTMzFpX5XTNscDpwEOSlub7PgdMBoiIucCpwNmStgEvALMiIoagXjMza0HTkI+I+wE1aTMHmNOuoszMrD38iVczs4I55M3MCuaQNzMrmEPezKxgDnkzs4I55M3MCuaQNzMrmEPezKxgDnkzs4I55M3MClb5q4btjWvqRXf0O/3GVem76GY1aWdmO56P5M3MCuaQNzMrmEPezKxgDnkzs4I55M3MCuaQNzMrmEPezKxgDnkzs4I55M3MCuaQNzMrWNOQlzRJ0j2SVkh6RNK5DdpI0lWSVkpaLumooSnXzMxaUeW7a7YBF0TEEkl7Aosl3R0RP6tpcwJwQL4dDVyd/5qZWQc1PZKPiPURsSQPbwFWABPqmp0CXBvJQmCcpH3aXq2ZmbWkpW+hlDQVOBJ4oG7SBGBNzfjafN/6uvlnA7MBJk+e3FqlZm8Azb7xs1VVvyF09RUntXW5NnxUfuNV0h7AzcB5EbG5fnKDWWK7OyLmRcS0iJjW1dXVWqVmZtaySiEvaQwp4K+PiFsaNFkLTKoZnwisG3x5ZmY2GFWurhHwTWBFRFzZR7PbgDPyVTYzgE0Rsb6PtmZmtoNUOSd/LHA68JCkpfm+zwGTASJiLjAfOBFYCTwPnNn+Us3MrFVNQz4i7qfxOffaNgGc066izMysPfyJVzOzgjnkzcwK5pA3MyuYQ97MrGAOeTOzgjnkzcwK5pA3MyuYQ97MrGAOeTOzgjnkzcwK5pA3MyuYQ97MrGAOeTOzgjnkzcwK5pA3MyuYQ97MrGAOeTOzgjnkzcwK5pA3MyuYQ97MrGBNQ17SNZI2SHq4j+kzJW2StDTfLml/mWZmNhCjK7TpBuYA1/bT5r6IOLktFZmZWds0PZKPiHuBZ3ZALWZm1mbtOid/jKRlku6UdGhfjSTNlrRI0qKenp42LdrMzPrSjpBfAkyJiMOBrwG39tUwIuZFxLSImNbV1dWGRZuZWX8GHfIRsTkitubh+cAYSeMHXZmZmQ3aoENe0t6SlIen5z43DrZfMzMbvKZX10i6AZgJjJe0FvgiMAYgIuYCpwJnS9oGvADMiogYsorNzKyypiEfEac1mT6HdImlmY1QUy+6o2PLXn3FSR1b9huBP/FqZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlawpr8MZcNDJ3+5x8xGLh/Jm5kVzCFvZlYwh7yZWcGahrykayRtkPRwH9Ml6SpJKyUtl3RU+8s0M7OBqHIk3w0c38/0E4AD8m02cPXgyzIzs3ZoGvIRcS/wTD9NTgGujWQhME7SPu0q0MzMBq4d5+QnAGtqxtfm+7YjabakRZIW9fT0tGHRZmbWn3aEvBrcF40aRsS8iJgWEdO6urrasGgzM+tPO0J+LTCpZnwisK4N/ZqZ2SC1I+RvA87IV9nMADZFxPo29GtmZoPU9GsNJN0AzATGS1oLfBEYAxARc4H5wInASuB54MyhKtbMzFrTNOQj4rQm0wM4p20VmZlZ2/gTr2ZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEqhbyk4yU9JmmlpIsaTJ8paZOkpfl2SftLNTOzVo1u1kDSKODrwPuAtcBPJN0WET+ra3pfRJw8BDWamdkAVTmSnw6sjIhVEfEScCNwytCWZWZm7VAl5CcAa2rG1+b76h0jaZmkOyUd2qgjSbMlLZK0qKenZwDlmplZK6qEvBrcF3XjS4ApEXE48DXg1kYdRcS8iJgWEdO6urpaq9TMzFpWJeTXApNqxicC62obRMTmiNiah+cDYySNb1uVZmY2IFVC/ifAAZL2k7QzMAu4rbaBpL0lKQ9Pz/1ubHexZmbWmqZX10TENkmfBL4PjAKuiYhHJJ2Vp88FTgXOlrQNeAGYFRH1p3SKMPWiOzpdgplZZU1DHl47BTO/7r65NcNzgDntLc3MzAbLn3g1MytYpSN5M7Oh0qlToKuvOKkjy93RfCRvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBXPIm5kVzCFvZlYwh7yZWcEc8mZmBRuR3yfvn+AzM6vGR/JmZgVzyJuZFWxEnq4xMxusTp723ZE/PVjpSF7S8ZIek7RS0kUNpkvSVXn6cklHtb9UMzNrVdOQlzQK+DpwAnAIcJqkQ+qanQAckG+zgavbXKeZmQ1AlSP56cDKiFgVES8BNwKn1LU5Bbg2koXAOEn7tLlWMzNrkSKi/wbSqcDxEfGJPH46cHREfLKmze3AFRFxfx7/N+DCiFhU19ds0pE+wEHAY+1akRaMB57uwHIHYqTUOlLqBNc6VEZKrSOlTui71ikR0VW1kypvvKrBffXPDFXaEBHzgHkVljlkJC2KiGmdrKGqkVLrSKkTXOtQGSm1jpQ6oX21VjldsxaYVDM+EVg3gDZmZraDVQn5nwAHSNpP0s7ALOC2uja3AWfkq2xmAJsiYn2bazUzsxY1PV0TEdskfRL4PjAKuCYiHpF0Vp4+F5gPnAisBJ4Hzhy6kgeto6eLWjRSah0pdYJrHSojpdaRUie0qdamb7yamdnI5a81MDMrmEPezKxgxYS8pGskbZD0cM19H5L0iKRXJfV5KVKjeYdjrZImSbpH0orc9txhWueukh6UtCy3vWwo6xxMrTVtR0n6af7Mx7CtVdJqSQ9JWippUV/thkmt4yR9V9KjeZ89ZrjVKemg/Fj23jZLOm+o6hxMrbnd+bndw5JukLRrs+UVE/JAN3B83X0PA38I3DuAeYdSo+VVqXUbcEFEHAzMAM5p8BUT7dTNwOp8EXhPRBwOHAEcn6+6GkrdDHz7A5wLrGhzTX3pZnC1/l5EHLGDrvfuZuC1/h3wfyLi7cDhDO3j280A6oyIx/JjeQTwDtKFI98bqiKzbgZQq6QJwKeAaRFxGOlCmFnNFlbMt1BGxL2SptbdtwJAavRZrf7nHUoDrTVflro+D2+RtAKYAPxsmNUZwNY8OibfhvQd/sFsf0kTgZOArwCfHpoKX1fXgGvd0QZaq6Q3Ae8GPprneQl4aYjKbNdj+l7gFxHxq7YWV2eQtY4Gxkp6GdiNCp9HKulI/g0l7yRHAg90tpLG8umPpcAG4O6IGJZ1Zl8F/gJ4tdOFVBDAXZIWK31NyHC1P9ADfCufBvsHSbt3uqgmZgE3dLqIvkTEE8DfAI+TDvY2RcRdzeZzyI9AkvYAbgbOi4jNna6nkYh4Jb8EnghMl3RYp2tqRNLJwIaIWNzpWio6NiKOIn3z6zmS3t3pgvowGjgKuDoijgSeA7b7mvLhQumDnr8P/HOna+mLpDeTvgxyP2BfYHdJH2k2n0N+hJE0hhTw10fELZ2up5mIeBZYwI59z6MVxwK/L2k16RtW3yPpO50tqW8RsS7/3UA6dzy9sxX1aS2wtuYV3HdJoT9cnQAsiYinOl1IP44DfhkRPRHxMnAL8K5mMznkRxClE3bfBFZExJWdrqcvkrokjcvDY0k756OdraqxiPhsREyMiKmkl+s/iIimR0edIGl3SXv2DgPvJ71hN+xExJPAGkkH5bveyxC9d9QmpzGMT9VkjwMzJO2Ws+C9VHkzOyKKuJE20HrgZdJRxMeBP8jDLwJPAd/PbfcF5vc373CsFfgd0jnZ5cDSfDtxGNb5n4Gf5jofBi4Zztu/po+ZwO3DtVbSee5l+fYIcPFwrTWPHwEsyvvBrcCbh2mduwEbgb2G+vFsQ62XkQ6YHgauA3Zptjx/rYGZWcF8usbMrGAOeTOzgjnkzcwK5pA3MyuYQ97MrGAOeTOzgjnkzcwK9v8BW+ckPEaZ440AAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "n = 1000\n", "p = 0.6827\n", @@ -423,24 +319,13 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Measured percentile: 11.5283\n", - "Confidence interval: (11.2443, 11.9176)\n", - "To be compared with: (11.0628, 11.7812)\n", - "which is the corresponding confidence interval given by the normal distribution of the measured percentiles\n" - ] - } - ], + "outputs": [], "source": [ "# confidence level:\n", "z = 2.33\n", @@ -467,34 +352,13 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "68th percentile: 11.528\n", - "Interval with a confidence level of 99.0%: (11.244, 11.918)\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from ctaplot.ana import percentile_confidence_interval\n", "\n", @@ -529,23 +393,13 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": { "pycharm": { "is_executing": false } }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Median: 9.99912\n", - "Confidence interval at 99%: (9.990545100476202, 10.007734065899768)\n", - "To be compared with: (9.990119056062714, 10.008119056062714)\n" - ] - } - ], + "outputs": [], "source": [ "pci = percentile_confidence_interval(X, percentile=50, confidence_level=0.99)\n", "print(\"Median: {:.5f}\".format(np.median(X)))\n",