diff --git a/electron_lost_found.ipynb b/electron_lost_found.ipynb index 307cc88..922aa05 100644 --- a/electron_lost_found.ipynb +++ b/electron_lost_found.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 2, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -16,6 +16,7 @@ "import itertools\n", "import awkward as ak\n", "import seaborn as sns\n", + "from scipy.optimize import curve_fit\n", "%matplotlib inline" ] }, @@ -177,7 +178,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -216,7 +217,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -257,16 +258,18 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "brem_vtx_x_found = tracked[\"brem_vtx_x\"]\n", "brem_vtx_x_found = brem_vtx_x_found[tracked[\"brem_vtx_x_length\"]!=0]\n", + "vtx_x_fit = brem_vtx_x_found[1]\n", "brem_vtx_x_found = ak.to_numpy(ak.flatten(brem_vtx_x_found))\n", "\n", "brem_vtx_z_found = tracked[\"brem_vtx_z\"]\n", "brem_vtx_z_found = brem_vtx_z_found[tracked[\"brem_vtx_z_length\"]!=0]\n", + "vtx_z_fit = brem_vtx_z_found[1]\n", "brem_vtx_z_found = ak.to_numpy(ak.flatten(brem_vtx_z_found))\n", "\n", "brem_vtx_x_lost = lost[\"brem_vtx_x\"]\n", @@ -275,29 +278,22 @@ "\n", "brem_vtx_z_lost = lost[\"brem_vtx_z\"]\n", "brem_vtx_z_lost = brem_vtx_z_lost[lost[\"brem_vtx_z_length\"]!=0]\n", - "brem_vtx_z_lost = ak.to_numpy(ak.flatten(brem_vtx_z_lost))" + "brem_vtx_z_lost = ak.to_numpy(ak.flatten(brem_vtx_z_lost))\n", + "\n", + "vtx_x_fit= ak.to_numpy(vtx_x_fit)\n", + "vtx_z_fit = ak.to_numpy(vtx_z_fit)" ] }, { "cell_type": "code", - "execution_count": 38, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ -6.3898 -65.1705 -194.2899 ... -2413.5017 -3593.4712 -3601.3071]\n" - ] - } - ], - "source": [ - "print(brem_vtx_x_lost)" - ] + "outputs": [], + "source": [] }, { "cell_type": "code", - "execution_count": 49, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -335,6 +331,45 @@ "plt.show()" ] }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# look at singular event and track\n", + "\n", + "def cubic_fit(x, a, b, c, d):\n", + " return (a + b*x + c*x**2 + d*x**3)\n", + "\n", + "popt,pcov = curve_fit(cubic_fit, vtx_z_fit, vtx_x_fit)\n", + "popt\n", + "\n", + "z_coord = np.linspace(vtx_z_fit[0],12000,1000)\n", + "fit = cubic_fit(z_coord, popt[0], popt[1], popt[2], popt[3])\n", + "\n", + "plt.plot(z_coord, fit, \"-\", label=\"fit\")\n", + "plt.plot(vtx_z_fit, vtx_x_fit, \".\", label=\"data\")\n", + "plt.ylim(-4300,4300)\n", + "plt.xlabel(\"z [mm]\")\n", + "plt.ylabel(\"x [mm]\")\n", + "plt.title(\"fit track of brem vertices from single signal\")\n", + "\n", + "plt.legend()\n", + "plt.show()" + ] + }, { "cell_type": "code", "execution_count": null,