|
|
{ "cells": [ { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "import uproot\n", "import numpy as np\n", "import sys\n", "import os\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "import mplhep\n", "from mpl_toolkits import mplot3d\n", "import itertools\n", "import awkward as ak\n", "from scipy.optimize import curve_fit\n", "import pandas as pd\n", "import seaborn as sns\n", "from matplotlib import colormaps\n", "\n", "mplhep.style.use([\"LHCbTex2\"])\n", "plt.rcParams[\"savefig.dpi\"] = 600\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "file = uproot.open(\n", " \"/work/cetin/LHCb/reco_tuner/data_matching/resolutions_and_effs_B_default_thesis.root:Track/MatchTrackChecker_8319528f/Match;1\",\n", ")\n", "\n", "P_recoed = file[\"07_long_electrons_P_reconstructed;1\"].to_numpy()\n", "P_recoable = file[\"07_long_electrons_P_reconstructible;1\"].to_numpy()\n", "\n", "Pt_recoed = file[\"07_long_electrons_Pt_reconstructed;1\"].to_numpy()\n", "Pt_recoable = file[\"07_long_electrons_Pt_reconstructible;1\"].to_numpy()" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "control eff: 0.6145546589237905\n", "new eff: 0.6155293168395326\n", "control eff: 0.6173168233870217\n", "new eff: 0.6176270902698983\n", "212152\n", "130379.0\n", "213171.0\n", "131213.0\n" ] } ], "source": [ "P_Velo_recoed = file[\"07_long_electrons_EndVelo_P_reconstructed;1\"].to_numpy()\n", "P_Velo_recoable = file[\n", " \"07_long_electrons_EndVelo_P_reconstructible;1\"].to_numpy()\n", "\n", "print(\"control eff: \", np.sum(P_recoed[0]) / np.sum(P_recoable[0]))\n", "print(\"new eff: \", np.sum(P_Velo_recoed[0]) / np.sum(P_Velo_recoable[0]))\n", "\n", "Pt_Velo_recoed = file[\"07_long_electrons_EndVelo_Pt_reconstructed;1\"].to_numpy(\n", ")\n", "Pt_Velo_recoable = file[\n", " \"07_long_electrons_EndVelo_Pt_reconstructible;1\"].to_numpy()\n", "\n", "print(\"control eff: \", np.sum(Pt_recoed[0]) / np.sum(Pt_recoable[0]))\n", "print(\"new eff: \", np.sum(Pt_Velo_recoed[0]) / np.sum(Pt_Velo_recoable[0]))\n", "\n", "print(np.sum(P_recoable[0], dtype=int))\n", "print(np.sum(P_recoed[0]))\n", "print(np.sum(P_Velo_recoable[0]))\n", "print(np.sum(P_Velo_recoed[0]))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([[0.0000e+00, 0.0000e+00, 0.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00],\n", " [4.1620e+03, 2.4200e+02, 8.7000e+01, ..., 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00],\n", " [2.3471e+04, 2.7160e+03, 1.4720e+03, ..., 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00],\n", " ...,\n", " [1.3000e+01, 0.0000e+00, 0.0000e+00, ..., 0.0000e+00, 1.0000e+00,\n", " 0.0000e+00],\n", " [1.3000e+01, 1.0000e+00, 1.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00],\n", " [9.0000e+00, 3.0000e+00, 1.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n", " 0.0000e+00]]),\n", " array([ 0., 1000., 2000., 3000., 4000., 5000., 6000.,\n", " 7000., 8000., 9000., 10000., 11000., 12000., 13000.,\n", " 14000., 15000., 16000., 17000., 18000., 19000., 20000.,\n", " 21000., 22000., 23000., 24000., 25000., 26000., 27000.,\n", " 28000., 29000., 30000., 31000., 32000., 33000., 34000.,\n", " 35000., 36000., 37000., 38000., 39000., 40000., 41000.,\n", " 42000., 43000., 44000., 45000., 46000., 47000., 48000.,\n", " 49000., 50000., 51000., 52000., 53000., 54000., 55000.,\n", " 56000., 57000., 58000., 59000., 60000., 61000., 62000.,\n", " 63000., 64000., 65000., 66000., 67000., 68000., 69000.,\n", " 70000., 71000., 72000., 73000., 74000., 75000., 76000.,\n", " 77000., 78000., 79000., 80000., 81000., 82000., 83000.,\n", " 84000., 85000., 86000., 87000., 88000., 89000., 90000.,\n", " 91000., 92000., 93000., 94000., 95000., 96000., 97000.,\n", " 98000., 99000., 100000.]),\n", " array([ 0., 100., 200., 300., 400., 500., 600., 700.,\n", " 800., 900., 1000., 1100., 1200., 1300., 1400., 1500.,\n", " 1600., 1700., 1800., 1900., 2000., 2100., 2200., 2300.,\n", " 2400., 2500., 2600., 2700., 2800., 2900., 3000., 3100.,\n", " 3200., 3300., 3400., 3500., 3600., 3700., 3800., 3900.,\n", " 4000., 4100., 4200., 4300., 4400., 4500., 4600., 4700.,\n", " 4800., 4900., 5000., 5100., 5200., 5300., 5400., 5500.,\n", " 5600., 5700., 5800., 5900., 6000., 6100., 6200., 6300.,\n", " 6400., 6500., 6600., 6700., 6800., 6900., 7000., 7100.,\n", " 7200., 7300., 7400., 7500., 7600., 7700., 7800., 7900.,\n", " 8000., 8100., 8200., 8300., 8400., 8500., 8600., 8700.,\n", " 8800., 8900., 9000., 9100., 9200., 9300., 9400., 9500.,\n", " 9600., 9700., 9800., 9900., 10000.]))" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PdP_Velo_recoed = file[\"07_long_electrons_EndVelo_PdP_reconstructed;1\"].to_numpy()\n", "PdP_Velo_recoable = file[\"07_long_electrons_EndVelo_PdP_reconstructible;1\"].to_numpy()\n", "\n", "PdP_Velo_recoable" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/tmp/ipykernel_733517/2776815717.py:1: RuntimeWarning: invalid value encountered in divide\n", " effs = np.divide(PdP_Velo_recoed[0], PdP_Velo_recoable[0])\n" ] }, { "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></th>\n", " <th>0</th>\n", " <th>1</th>\n", " <th>2</th>\n", " <th>3</th>\n", " <th>4</th>\n", " <th>5</th>\n", " <th>6</th>\n", " <th>7</th>\n", " <th>8</th>\n", " <th>9</th>\n", " <th>...</th>\n", " <th>90</th>\n", " <th>91</th>\n", " <th>92</th>\n", " <th>93</th>\n", " <th>94</th>\n", " <th>95</th>\n", " <th>96</th>\n", " <th>97</th>\n", " <th>98</th>\n", " <th>99</th>\n", " </tr>\n", " </thead>\n", " <tbody>\n", " <tr>\n", " <th>0</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>1</th>\n", " <td>0.297453</td>\n", " <td>0.351240</td>\n", " <td>0.298851</td>\n", " <td>0.466667</td>\n", " <td>0.312500</td>\n", " <td>0.000000</td>\n", " <td>0.000000</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>2</th>\n", " <td>0.377146</td>\n", " <td>0.362297</td>\n", " <td>0.348505</td>\n", " <td>0.342369</td>\n", " <td>0.369942</td>\n", " <td>0.291339</td>\n", " <td>0.326471</td>\n", " <td>0.328205</td>\n", " <td>0.208333</td>\n", " <td>0.237500</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</th>\n", " <td>0.532556</td>\n", " <td>0.543753</td>\n", " <td>0.547119</td>\n", " <td>0.547350</td>\n", " <td>0.505400</td>\n", " <td>0.514877</td>\n", " <td>0.485997</td>\n", " <td>0.444846</td>\n", " <td>0.426966</td>\n", " <td>0.346939</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>4</th>\n", " <td>0.595858</td>\n", " <td>0.616777</td>\n", " <td>0.618738</td>\n", " <td>0.601467</td>\n", " <td>0.636095</td>\n", " <td>0.606115</td>\n", " <td>0.554913</td>\n", " <td>0.496689</td>\n", " <td>0.591224</td>\n", " <td>0.518625</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>...</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>95</th>\n", " <td>0.666667</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>1.000000</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>96</th>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>1.000000</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>1.0</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>97</th>\n", " <td>0.923077</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>0.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>0.000000</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>1.0</td>\n", " <td>NaN</td>\n", " </tr>\n", " <tr>\n", " <th>98</th>\n", " <td>0.846154</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>1.000000</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>99</th>\n", " <td>0.777778</td>\n", " <td>0.666667</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>NaN</td>\n", " <td>1.000000</td>\n", " <td>1.000000</td>\n", " <td>...</td>\n", " <td>NaN</td>\n", " <td>NaN</td>\n", " <td>1.0</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", " </tbody>\n", "</table>\n", "<p>100 rows × 100 columns</p>\n", "</div>" ], "text/plain": [ " 0 1 2 3 4 5 6 \\\n", "0 NaN NaN NaN NaN NaN NaN NaN \n", "1 0.297453 0.351240 0.298851 0.466667 0.312500 0.000000 0.000000 \n", "2 0.377146 0.362297 0.348505 0.342369 0.369942 0.291339 0.326471 \n", "3 0.532556 0.543753 0.547119 0.547350 0.505400 0.514877 0.485997 \n", "4 0.595858 0.616777 0.618738 0.601467 0.636095 0.606115 0.554913 \n", ".. ... ... ... ... ... ... ... \n", "95 0.666667 1.000000 1.000000 1.000000 1.000000 NaN NaN \n", "96 1.000000 NaN 1.000000 NaN 1.000000 NaN NaN \n", "97 0.923077 NaN NaN 1.000000 1.000000 NaN 0.000000 \n", "98 0.846154 1.000000 1.000000 NaN NaN 1.000000 1.000000 \n", "99 0.777778 0.666667 1.000000 1.000000 1.000000 1.000000 1.000000 \n", "\n", " 7 8 9 ... 90 91 92 93 94 95 96 97 98 \\\n", "0 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "1 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "2 0.328205 0.208333 0.237500 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "3 0.444846 0.426966 0.346939 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "4 0.496689 0.591224 0.518625 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", ".. ... ... ... ... .. .. ... .. ... .. .. .. ... \n", "95 NaN 1.000000 1.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "96 NaN NaN NaN ... NaN NaN NaN NaN 1.0 NaN NaN NaN NaN \n", "97 1.000000 1.000000 0.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN 1.0 \n", "98 NaN 1.000000 1.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n", "99 NaN 1.000000 1.000000 ... NaN NaN 1.0 NaN NaN NaN NaN NaN NaN \n", "\n", " 99 \n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 NaN \n", "4 NaN \n", ".. .. \n", "95 NaN \n", "96 NaN \n", "97 NaN \n", "98 NaN \n", "99 NaN \n", "\n", "[100 rows x 100 columns]" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "effs = np.divide(PdP_Velo_recoed[0], PdP_Velo_recoable[0])\n", "\n", "df = pd.DataFrame(effs)\n", "df" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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 "text/plain": [ "<Figure size 1200x900 with 2 Axes>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# fig = plt.figure(figsize=(15, 7))\n", "ax = sns.heatmap(\n", " effs,\n", " robust=True,\n", " square=False,\n", " cmap=colormaps[\"rainbow\"],\n", " xticklabels=False,\n", " yticklabels=False,\n", " vmax=1,\n", " cbar_kws={\n", " \"label\": \"Efficiency\",\n", " \"pad\": 0.005,\n", " \"shrink\": 1,\n", " \"ticks\": [0.2, 0.4, 0.6, 0.8, 1.0],\n", " \"aspect\": 15,\n", " },\n", ")\n", "ax.set_ylabel(f\"$P$ [MeV]\")\n", "ax.set_xlabel(f\"$\\Delta P$ [MeV]\")\n", "ax.patch.set_edgecolor(\"black\")\n", "\n", "ax.set_yticks([0, 19, 39, 59, 79, 99], [0, 20000, 40000, 60000, 80000, 100000])\n", "ax.set_xticks([0, 19, 39, 59, 79, 99], [0, 2000, 4000, 6000, 8000, 10000])\n", "ax.invert_yaxis()\n", "# ax.set_ylim(0, 59)\n", "# ax.set_xlim(0, 59)\n", "\n", "ax.patch.set_linewidth(2)\n", "# ax.set_yticklabels([])\n", "# ax.set_title(\"EndVELO to EndUT $x/X_0$\", size=35)\n", "mplhep.lhcb.text(\"Simulation\", loc=0)\n", "plt.show()\n", "# plt.savefig(\n", "# \"/work/cetin/Projektpraktikum/thesis/Efficiency_PdP_Velo_hist2d.pdf\",\n", "# format=\"PDF\")" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([6.4927e+04, 8.7210e+03, 5.4020e+03, 4.0560e+03, 3.3500e+03,\n", " 2.8240e+03, 2.3990e+03, 2.0600e+03, 1.8280e+03, 1.5610e+03,\n", " 1.5130e+03, 1.3480e+03, 1.2090e+03, 1.1250e+03, 1.0270e+03,\n", " 9.3000e+02, 9.0200e+02, 8.2300e+02, 7.8100e+02, 6.7500e+02,\n", " 6.8700e+02, 6.5400e+02, 6.6000e+02, 6.2300e+02, 5.3100e+02,\n", " 5.1900e+02, 5.1200e+02, 4.4000e+02, 4.7200e+02, 4.6700e+02,\n", " 4.1100e+02, 4.1300e+02, 3.7700e+02, 3.4600e+02, 3.5400e+02,\n", " 3.3100e+02, 3.3400e+02, 2.8600e+02, 3.0600e+02, 2.8800e+02,\n", " 2.7000e+02, 2.8100e+02, 2.5100e+02, 2.2500e+02, 2.7100e+02,\n", " 2.3000e+02, 2.4100e+02, 2.1700e+02, 2.2900e+02, 2.0700e+02,\n", " 2.2500e+02, 1.8500e+02, 1.9000e+02, 1.8600e+02, 1.9100e+02,\n", " 1.9900e+02, 1.8400e+02, 1.8500e+02, 1.7200e+02, 1.5700e+02,\n", " 1.5300e+02, 1.7100e+02, 1.3700e+02, 1.5200e+02, 1.4500e+02,\n", " 1.4600e+02, 1.2900e+02, 1.3900e+02, 1.4300e+02, 1.3700e+02,\n", " 1.1600e+02, 1.2200e+02, 1.2600e+02, 1.1900e+02, 1.1800e+02,\n", " 1.3100e+02, 1.1400e+02, 1.0700e+02, 1.1700e+02, 1.1700e+02,\n", " 1.1500e+02, 1.3000e+02, 8.7000e+01, 1.0300e+02, 9.9000e+01,\n", " 1.0100e+02, 7.7000e+01, 8.6000e+01, 1.0500e+02, 7.6000e+01,\n", " 8.5000e+01, 8.6000e+01, 7.4000e+01, 8.6000e+01, 7.9000e+01,\n", " 6.8000e+01, 7.1000e+01, 7.9000e+01, 6.9000e+01, 6.3000e+01]),\n", " array([ 0., 100., 200., 300., 400., 500., 600., 700.,\n", " 800., 900., 1000., 1100., 1200., 1300., 1400., 1500.,\n", " 1600., 1700., 1800., 1900., 2000., 2100., 2200., 2300.,\n", " 2400., 2500., 2600., 2700., 2800., 2900., 3000., 3100.,\n", " 3200., 3300., 3400., 3500., 3600., 3700., 3800., 3900.,\n", " 4000., 4100., 4200., 4300., 4400., 4500., 4600., 4700.,\n", " 4800., 4900., 5000., 5100., 5200., 5300., 5400., 5500.,\n", " 5600., 5700., 5800., 5900., 6000., 6100., 6200., 6300.,\n", " 6400., 6500., 6600., 6700., 6800., 6900., 7000., 7100.,\n", " 7200., 7300., 7400., 7500., 7600., 7700., 7800., 7900.,\n", " 8000., 8100., 8200., 8300., 8400., 8500., 8600., 8700.,\n", " 8800., 8900., 9000., 9100., 9200., 9300., 9400., 9500.,\n", " 9600., 9700., 9800., 9900., 10000.]))" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dP_Velo_recoed = file[\"07_long_electrons_EndVelo_dP_reconstructed;1\"].to_numpy()\n", "dP_Velo_recoable = file[\"07_long_electrons_EndVelo_dP_reconstructible;1\"].to_numpy()\n", "\n", "dP_Velo_recoed" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "image/png": "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 "text/plain": [ "<Figure size 1200x900 with 1 Axes>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure()\n", "# plt.bar(\n", "# dP_Velo_recoable[1][1:],\n", "# dP_Velo_recoable[0] / np.max(dP_Velo_recoable[0]),\n", "# alpha=0.5,\n", "# color=\"#107E7D\",\n", "# label=\"p distribution, e\",\n", "# )\n", "plt.errorbar(\n", " dP_Velo_recoable[1][1:],\n", " dP_Velo_recoed[0] / dP_Velo_recoable[0],\n", " color=\"#107E7D\",\n", " label=\"Efficiency\",\n", " fmt=\"^\",\n", " ms=10,\n", ")\n", "plt.ylim(0, 1)\n", "plt.xlabel(r\"$dp$ [MeV]\")\n", "plt.ylabel(\"Efficiency of Long Tracks\")\n", "plt.legend(loc=\"best\")\n", "mplhep.lhcb.text(\"Simulation\", loc=0)\n", "plt.show()\n", "# plt.savefig(\"/work/cetin/Projektpraktikum/thesis/Efficiency_dP_Velo.pdf\",\n", "# format=\"PDF\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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 }
|