|
|
{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "/auto/work/cetin/Projektpraktikum\n" ] } ], "source": [ "%cd ..\n", "import uproot\t\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from matplotlib import colormaps\n", "from mpl_toolkits import mplot3d\n", "import awkward as ak\n", "from scipy.optimize import curve_fit\n", "from scipy import stats\n", "from methods.fit_linear_regression_model import fit_linear_regression_model\n", "import sklearn\n", "import seaborn as sns\n", "import pandas as pd\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def round(n, k):\n", " # function to round number 'n' up/down to nearest 'k'\n", " # use positive k to round up\n", " # use negative k to round down\n", "\n", " return n - n % k" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "40402 10099\n", "49865\n" ] } ], "source": [ "file = uproot.open(\n", " \"/work/cetin/Projektpraktikum/tracking_losses_ntuple_B_rad_length_beginVelo2endUT.root:PrDebugTrackingLosses.PrDebugTrackingTool/Tuple;1\"\n", ")\n", "\n", "# selektiere nur elektronen von B->K*ee\n", "allcolumns = file.arrays()\n", "found = allcolumns[(allcolumns.isElectron) & (~allcolumns.lost) &\n", " (allcolumns.fromB)]\n", "lost = allcolumns[(allcolumns.isElectron) & (allcolumns.lost) &\n", " (allcolumns.fromB)]\n", "\n", "electrons = allcolumns[(allcolumns.isElectron)\n", " & (allcolumns.fromB)\n", " & (allcolumns.eta <= 5.0)\n", " & (allcolumns.eta >= 1.5)\n", " & (np.abs(allcolumns.phi) < 3.142)]\n", "\n", "print(ak.num(found, axis=0), ak.num(lost, axis=0))\n", "print(ak.num(electrons, axis=0))\n", "# ak.count(found, axis=None)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# variables\n", "\n", "eta_a = ak.to_numpy(electrons[\"eta\"])\n", "phi_a = ak.to_numpy(electrons[\"phi\"])\n", "rad_length_frac_a = ak.to_numpy(electrons[\"rad_length_frac\"])" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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 "text/plain": [ "<Figure size 640x480 with 1 Axes>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.hist(\n", " rad_length_frac_a,\n", " bins=100,\n", " density=True,\n", " alpha=0.5,\n", " color=\"blue\",\n", " histtype=\"bar\",\n", " range=[0, 1],\n", ")\n", "plt.xlim(0, 1)\n", "# plt.yscale(\"log\")\n", "plt.title(\"radiation length fraction beginVelo2endUT\")\n", "plt.xlabel(f\"$x/X_0$\")\n", "plt.ylabel(\"a.u.\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "df = pd.DataFrame({\n", " \"phi\": phi_a * 90.0 / np.pi,\n", " \"eta\": eta_a * 2.0,\n", " \"rad_length_frac\": rad_length_frac_a,\n", "})\n", "df = df.round({\"phi\": 0, \"eta\": 1, \"rad_length_frac\": 4})" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "df_pivoted = df.pivot_table(\n", " index=\"eta\",\n", " columns=\"phi\",\n", " values=\"rad_length_frac\",\n", " margins=False,\n", " # fill_value=0,\n", ")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "<div>\n", "<style scoped>\n", " .dataframe tbody tr th:only-of-type {\n", " vertical-align: middle;\n", " }\n", "\n", " .dataframe tbody tr th {\n", " vertical-align: top;\n", " }\n", "\n", " .dataframe thead th {\n", " text-align: right;\n", " }\n", "</style>\n", "<table border=\"1\" class=\"dataframe\">\n", " <thead>\n", " <tr style=\"text-align: right;\">\n", " <th>phi</th>\n", " <th>-90.0</th>\n", " <th>-89.0</th>\n", " <th>-88.0</th>\n", " <th>-87.0</th>\n", " <th>-86.0</th>\n", " <th>-85.0</th>\n", " <th>-84.0</th>\n", " <th>-83.0</th>\n", " <th>-82.0</th>\n", " <th>-81.0</th>\n", " <th>...</th>\n", " <th>81.0</th>\n", " <th>82.0</th>\n", " <th>83.0</th>\n", " <th>84.0</th>\n", " <th>85.0</th>\n", " <th>86.0</th>\n", " <th>87.0</th>\n", " <th>88.0</th>\n", " <th>89.0</th>\n", " <th>90.0</th>\n", " </tr>\n", " <tr>\n", " <th>eta</th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " <th></th>\n", " </tr>\n", " </thead>\n", " <tbody>\n", " <tr>\n", " <th>3.1</th>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>3.2</th>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>3.3</th>\n", " <td>NaN</td>\n", " <td>1.2679</td>\n", " <td>NaN</td>\n", " <td>1.2759</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.87600</td>\n", " <td>NaN</td>\n", " <td>0.516900</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>0.5076</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>3.4</th>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.2055</td>\n", " <td>0.5502</td>\n", " <td>0.28410</td>\n", " <td>1.89590</td>\n", " <td>NaN</td>\n", " <td>0.673400</td>\n", " <td>0.2915</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.52245</td>\n", " <td>1.2931</td>\n", " <td>1.2685</td>\n", " <td>0.26290</td>\n", " <td>NaN</td>\n", " <td>0.5286</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>3.5</th>\n", " <td>NaN</td>\n", " <td>0.8370</td>\n", " <td>0.6883</td>\n", " <td>0.5597</td>\n", " <td>NaN</td>\n", " <td>1.30930</td>\n", " <td>NaN</td>\n", " <td>0.40660</td>\n", " <td>1.724750</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>0.3628</td>\n", " <td>0.5306</td>\n", " <td>NaN</td>\n", " <td>0.56120</td>\n", " <td>NaN</td>\n", " <td>1.1481</td>\n", " <td>1.13330</td>\n", " <td>NaN</td>\n", " <td>0.4898</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>...</th>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " <td>...</td>\n", " </tr>\n", " <tr>\n", " <th>9.6</th>\n", " <td>NaN</td>\n", " <td>0.1595</td>\n", " <td>0.1948</td>\n", " <td>0.2811</td>\n", " <td>0.2285</td>\n", " <td>NaN</td>\n", " <td>0.34385</td>\n", " <td>0.16810</td>\n", " <td>NaN</td>\n", " <td>0.3408</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>0.1605</td>\n", " <td>0.3835</td>\n", " <td>0.35830</td>\n", " <td>0.2229</td>\n", " <td>NaN</td>\n", " <td>0.20530</td>\n", " <td>0.25955</td>\n", " <td>0.1618</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>9.7</th>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.1688</td>\n", " <td>0.1762</td>\n", " <td>0.17905</td>\n", " <td>0.16470</td>\n", " <td>0.17470</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>0.2906</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.23890</td>\n", " <td>0.1618</td>\n", " <td>0.1730</td>\n", " <td>NaN</td>\n", " <td>0.17520</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>9.8</th>\n", " <td>0.1703</td>\n", " <td>0.1920</td>\n", " <td>0.1787</td>\n", " <td>0.1725</td>\n", " <td>0.1707</td>\n", " <td>NaN</td>\n", " <td>0.16860</td>\n", " <td>0.26055</td>\n", " <td>0.231933</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>0.1747</td>\n", " <td>NaN</td>\n", " <td>0.21850</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.17465</td>\n", " <td>0.14510</td>\n", " <td>0.1860</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>9.9</th>\n", " <td>NaN</td>\n", " <td>0.1831</td>\n", " <td>0.1671</td>\n", " <td>0.1485</td>\n", " <td>NaN</td>\n", " <td>0.17920</td>\n", " <td>0.41690</td>\n", " <td>0.17350</td>\n", " <td>0.284200</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>0.3746</td>\n", " <td>0.2385</td>\n", " <td>0.1257</td>\n", " <td>NaN</td>\n", " <td>0.4171</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.16620</td>\n", " <td>0.1656</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>10.0</th>\n", " <td>NaN</td>\n", " <td>0.2501</td>\n", " <td>NaN</td>\n", " <td>0.1900</td>\n", " <td>NaN</td>\n", " <td>0.23640</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>0.1828</td>\n", " <td>0.2026</td>\n", " <td>0.11630</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>0.1526</td>\n", " <td>NaN</td>\n", " </tr>\n", " </tbody>\n", "</table>\n", "<p>70 rows × 181 columns</p>\n", "</div>" ], "text/plain": [ "phi -90.0 -89.0 -88.0 -87.0 -86.0 -85.0 -84.0 -83.0 \\\n", "eta \n", "3.1 NaN NaN NaN NaN NaN NaN NaN NaN \n", "3.2 NaN NaN NaN NaN NaN NaN NaN NaN \n", "3.3 NaN 1.2679 NaN 1.2759 NaN NaN 1.87600 NaN \n", "3.4 NaN NaN NaN 1.2055 0.5502 0.28410 1.89590 NaN \n", "3.5 NaN 0.8370 0.6883 0.5597 NaN 1.30930 NaN 0.40660 \n", "... ... ... ... ... ... ... ... ... \n", "9.6 NaN 0.1595 0.1948 0.2811 0.2285 NaN 0.34385 0.16810 \n", "9.7 NaN NaN NaN 0.1688 0.1762 0.17905 0.16470 0.17470 \n", "9.8 0.1703 0.1920 0.1787 0.1725 0.1707 NaN 0.16860 0.26055 \n", "9.9 NaN 0.1831 0.1671 0.1485 NaN 0.17920 0.41690 0.17350 \n", "10.0 NaN 0.2501 NaN 0.1900 NaN 0.23640 NaN NaN \n", "\n", "phi -82.0 -81.0 ... 81.0 82.0 83.0 84.0 85.0 86.0 \\\n", "eta ... \n", "3.1 NaN NaN ... NaN NaN NaN NaN NaN NaN \n", "3.2 NaN NaN ... NaN NaN NaN NaN NaN NaN \n", "3.3 0.516900 NaN ... 0.5076 NaN NaN NaN NaN NaN \n", "3.4 0.673400 0.2915 ... NaN NaN NaN 0.52245 1.2931 1.2685 \n", "3.5 1.724750 NaN ... 0.3628 0.5306 NaN 0.56120 NaN 1.1481 \n", "... ... ... ... ... ... ... ... ... ... \n", "9.6 NaN 0.3408 ... NaN 0.1605 0.3835 0.35830 0.2229 NaN \n", "9.7 NaN NaN ... 0.2906 NaN NaN 0.23890 0.1618 0.1730 \n", "9.8 0.231933 NaN ... NaN 0.1747 NaN 0.21850 NaN NaN \n", "9.9 0.284200 NaN ... 0.3746 0.2385 0.1257 NaN 0.4171 NaN \n", "10.0 NaN NaN ... NaN 0.1828 0.2026 0.11630 NaN NaN \n", "\n", "phi 87.0 88.0 89.0 90.0 \n", "eta \n", "3.1 NaN NaN NaN NaN \n", "3.2 NaN NaN NaN NaN \n", "3.3 NaN NaN NaN NaN \n", "3.4 0.26290 NaN 0.5286 NaN \n", "3.5 1.13330 NaN 0.4898 NaN \n", "... ... ... ... ... \n", "9.6 0.20530 0.25955 0.1618 NaN \n", "9.7 NaN 0.17520 NaN NaN \n", "9.8 0.17465 0.14510 0.1860 NaN \n", "9.9 NaN 0.16620 0.1656 NaN \n", "10.0 NaN NaN 0.1526 NaN \n", "\n", "[70 rows x 181 columns]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_pivoted" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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 "text/plain": [ "<Figure size 2100x700 with 2 Axes>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure(figsize=(21, 7))\n", "ax = sns.heatmap(\n", " df_pivoted,\n", " robust=True,\n", " square=True,\n", " cmap=colormaps[\"rainbow\"],\n", " xticklabels=False,\n", " yticklabels=False,\n", " vmax=1,\n", " vmin=0.1,\n", ")\n", "# ax.set_yticks([5, 15, 25, 35], [2, 3, 4, 5])\n", "ax.set_yticks([10, 30, 50, 70], [2, 3, 4, 5])\n", "ax.set_xticks([39, 89, 139],\n", " [-100, 0, 100]) # ([79, 179, 279], [-100, 0, 100])\n", "ax.set_xlabel(f\"$\\phi$ [deg]\")\n", "ax.set_ylabel(f\"$\\eta$\")\n", "\n", "# ax.set_yticklabels([])\n", "ax.invert_yaxis()\n", "ax.set_title(\"LHCb VELO+RICH1+UT $x/X_0$\")\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "tuner", "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.10.12" } }, "nbformat": 4, "nbformat_minor": 2 }
|