You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

714 lines
175 KiB

8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
8 months ago
6 months ago
8 months ago
6 months ago
8 months ago
8 months ago
6 months ago
8 months ago
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "code",
  5. "execution_count": 19,
  6. "metadata": {},
  7. "outputs": [],
  8. "source": [
  9. "import uproot\n",
  10. "import numpy as np\n",
  11. "import sys\n",
  12. "import os\n",
  13. "import matplotlib\n",
  14. "import matplotlib.pyplot as plt\n",
  15. "import mplhep\n",
  16. "from mpl_toolkits import mplot3d\n",
  17. "import itertools\n",
  18. "import awkward as ak\n",
  19. "from scipy.optimize import curve_fit\n",
  20. "import pandas as pd\n",
  21. "import seaborn as sns\n",
  22. "from matplotlib import colormaps\n",
  23. "\n",
  24. "mplhep.style.use([\"LHCbTex2\"])\n",
  25. "plt.rcParams[\"savefig.dpi\"] = 600\n",
  26. "%matplotlib inline"
  27. ]
  28. },
  29. {
  30. "cell_type": "code",
  31. "execution_count": 20,
  32. "metadata": {},
  33. "outputs": [],
  34. "source": [
  35. "file = uproot.open(\n",
  36. " \"/work/cetin/LHCb/reco_tuner/data_matching/resolutions_and_effs_B_default_thesis.root:Track/MatchTrackChecker_8319528f/Match;1\",\n",
  37. ")\n",
  38. "\n",
  39. "P_recoed = file[\"07_long_electrons_P_reconstructed;1\"].to_numpy()\n",
  40. "P_recoable = file[\"07_long_electrons_P_reconstructible;1\"].to_numpy()\n",
  41. "\n",
  42. "Pt_recoed = file[\"07_long_electrons_Pt_reconstructed;1\"].to_numpy()\n",
  43. "Pt_recoable = file[\"07_long_electrons_Pt_reconstructible;1\"].to_numpy()"
  44. ]
  45. },
  46. {
  47. "cell_type": "code",
  48. "execution_count": 21,
  49. "metadata": {},
  50. "outputs": [
  51. {
  52. "name": "stdout",
  53. "output_type": "stream",
  54. "text": [
  55. "control eff: 0.6145546589237905\n",
  56. "new eff: 0.6155293168395326\n",
  57. "control eff: 0.6173168233870217\n",
  58. "new eff: 0.6176270902698983\n",
  59. "212152\n",
  60. "130379.0\n",
  61. "213171.0\n",
  62. "131213.0\n"
  63. ]
  64. }
  65. ],
  66. "source": [
  67. "P_Velo_recoed = file[\"07_long_electrons_EndVelo_P_reconstructed;1\"].to_numpy()\n",
  68. "P_Velo_recoable = file[\n",
  69. " \"07_long_electrons_EndVelo_P_reconstructible;1\"].to_numpy()\n",
  70. "\n",
  71. "print(\"control eff: \", np.sum(P_recoed[0]) / np.sum(P_recoable[0]))\n",
  72. "print(\"new eff: \", np.sum(P_Velo_recoed[0]) / np.sum(P_Velo_recoable[0]))\n",
  73. "\n",
  74. "Pt_Velo_recoed = file[\"07_long_electrons_EndVelo_Pt_reconstructed;1\"].to_numpy(\n",
  75. ")\n",
  76. "Pt_Velo_recoable = file[\n",
  77. " \"07_long_electrons_EndVelo_Pt_reconstructible;1\"].to_numpy()\n",
  78. "\n",
  79. "print(\"control eff: \", np.sum(Pt_recoed[0]) / np.sum(Pt_recoable[0]))\n",
  80. "print(\"new eff: \", np.sum(Pt_Velo_recoed[0]) / np.sum(Pt_Velo_recoable[0]))\n",
  81. "\n",
  82. "print(np.sum(P_recoable[0], dtype=int))\n",
  83. "print(np.sum(P_recoed[0]))\n",
  84. "print(np.sum(P_Velo_recoable[0]))\n",
  85. "print(np.sum(P_Velo_recoed[0]))"
  86. ]
  87. },
  88. {
  89. "cell_type": "code",
  90. "execution_count": 22,
  91. "metadata": {},
  92. "outputs": [
  93. {
  94. "data": {
  95. "text/plain": [
  96. "(array([[0.0000e+00, 0.0000e+00, 0.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n",
  97. " 0.0000e+00],\n",
  98. " [4.1620e+03, 2.4200e+02, 8.7000e+01, ..., 0.0000e+00, 0.0000e+00,\n",
  99. " 0.0000e+00],\n",
  100. " [2.3471e+04, 2.7160e+03, 1.4720e+03, ..., 0.0000e+00, 0.0000e+00,\n",
  101. " 0.0000e+00],\n",
  102. " ...,\n",
  103. " [1.3000e+01, 0.0000e+00, 0.0000e+00, ..., 0.0000e+00, 1.0000e+00,\n",
  104. " 0.0000e+00],\n",
  105. " [1.3000e+01, 1.0000e+00, 1.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n",
  106. " 0.0000e+00],\n",
  107. " [9.0000e+00, 3.0000e+00, 1.0000e+00, ..., 0.0000e+00, 0.0000e+00,\n",
  108. " 0.0000e+00]]),\n",
  109. " array([ 0., 1000., 2000., 3000., 4000., 5000., 6000.,\n",
  110. " 7000., 8000., 9000., 10000., 11000., 12000., 13000.,\n",
  111. " 14000., 15000., 16000., 17000., 18000., 19000., 20000.,\n",
  112. " 21000., 22000., 23000., 24000., 25000., 26000., 27000.,\n",
  113. " 28000., 29000., 30000., 31000., 32000., 33000., 34000.,\n",
  114. " 35000., 36000., 37000., 38000., 39000., 40000., 41000.,\n",
  115. " 42000., 43000., 44000., 45000., 46000., 47000., 48000.,\n",
  116. " 49000., 50000., 51000., 52000., 53000., 54000., 55000.,\n",
  117. " 56000., 57000., 58000., 59000., 60000., 61000., 62000.,\n",
  118. " 63000., 64000., 65000., 66000., 67000., 68000., 69000.,\n",
  119. " 70000., 71000., 72000., 73000., 74000., 75000., 76000.,\n",
  120. " 77000., 78000., 79000., 80000., 81000., 82000., 83000.,\n",
  121. " 84000., 85000., 86000., 87000., 88000., 89000., 90000.,\n",
  122. " 91000., 92000., 93000., 94000., 95000., 96000., 97000.,\n",
  123. " 98000., 99000., 100000.]),\n",
  124. " array([ 0., 100., 200., 300., 400., 500., 600., 700.,\n",
  125. " 800., 900., 1000., 1100., 1200., 1300., 1400., 1500.,\n",
  126. " 1600., 1700., 1800., 1900., 2000., 2100., 2200., 2300.,\n",
  127. " 2400., 2500., 2600., 2700., 2800., 2900., 3000., 3100.,\n",
  128. " 3200., 3300., 3400., 3500., 3600., 3700., 3800., 3900.,\n",
  129. " 4000., 4100., 4200., 4300., 4400., 4500., 4600., 4700.,\n",
  130. " 4800., 4900., 5000., 5100., 5200., 5300., 5400., 5500.,\n",
  131. " 5600., 5700., 5800., 5900., 6000., 6100., 6200., 6300.,\n",
  132. " 6400., 6500., 6600., 6700., 6800., 6900., 7000., 7100.,\n",
  133. " 7200., 7300., 7400., 7500., 7600., 7700., 7800., 7900.,\n",
  134. " 8000., 8100., 8200., 8300., 8400., 8500., 8600., 8700.,\n",
  135. " 8800., 8900., 9000., 9100., 9200., 9300., 9400., 9500.,\n",
  136. " 9600., 9700., 9800., 9900., 10000.]))"
  137. ]
  138. },
  139. "execution_count": 22,
  140. "metadata": {},
  141. "output_type": "execute_result"
  142. }
  143. ],
  144. "source": [
  145. "PdP_Velo_recoed = file[\"07_long_electrons_EndVelo_PdP_reconstructed;1\"].to_numpy()\n",
  146. "PdP_Velo_recoable = file[\"07_long_electrons_EndVelo_PdP_reconstructible;1\"].to_numpy()\n",
  147. "\n",
  148. "PdP_Velo_recoable"
  149. ]
  150. },
  151. {
  152. "cell_type": "code",
  153. "execution_count": 23,
  154. "metadata": {},
  155. "outputs": [
  156. {
  157. "name": "stderr",
  158. "output_type": "stream",
  159. "text": [
  160. "/tmp/ipykernel_733517/2776815717.py:1: RuntimeWarning: invalid value encountered in divide\n",
  161. " effs = np.divide(PdP_Velo_recoed[0], PdP_Velo_recoable[0])\n"
  162. ]
  163. },
  164. {
  165. "data": {
  166. "text/html": [
  167. "<div>\n",
  168. "<style scoped>\n",
  169. " .dataframe tbody tr th:only-of-type {\n",
  170. " vertical-align: middle;\n",
  171. " }\n",
  172. "\n",
  173. " .dataframe tbody tr th {\n",
  174. " vertical-align: top;\n",
  175. " }\n",
  176. "\n",
  177. " .dataframe thead th {\n",
  178. " text-align: right;\n",
  179. " }\n",
  180. "</style>\n",
  181. "<table border=\"1\" class=\"dataframe\">\n",
  182. " <thead>\n",
  183. " <tr style=\"text-align: right;\">\n",
  184. " <th></th>\n",
  185. " <th>0</th>\n",
  186. " <th>1</th>\n",
  187. " <th>2</th>\n",
  188. " <th>3</th>\n",
  189. " <th>4</th>\n",
  190. " <th>5</th>\n",
  191. " <th>6</th>\n",
  192. " <th>7</th>\n",
  193. " <th>8</th>\n",
  194. " <th>9</th>\n",
  195. " <th>...</th>\n",
  196. " <th>90</th>\n",
  197. " <th>91</th>\n",
  198. " <th>92</th>\n",
  199. " <th>93</th>\n",
  200. " <th>94</th>\n",
  201. " <th>95</th>\n",
  202. " <th>96</th>\n",
  203. " <th>97</th>\n",
  204. " <th>98</th>\n",
  205. " <th>99</th>\n",
  206. " </tr>\n",
  207. " </thead>\n",
  208. " <tbody>\n",
  209. " <tr>\n",
  210. " <th>0</th>\n",
  211. " <td>NaN</td>\n",
  212. " <td>NaN</td>\n",
  213. " <td>NaN</td>\n",
  214. " <td>NaN</td>\n",
  215. " <td>NaN</td>\n",
  216. " <td>NaN</td>\n",
  217. " <td>NaN</td>\n",
  218. " <td>NaN</td>\n",
  219. " <td>NaN</td>\n",
  220. " <td>NaN</td>\n",
  221. " <td>...</td>\n",
  222. " <td>NaN</td>\n",
  223. " <td>NaN</td>\n",
  224. " <td>NaN</td>\n",
  225. " <td>NaN</td>\n",
  226. " <td>NaN</td>\n",
  227. " <td>NaN</td>\n",
  228. " <td>NaN</td>\n",
  229. " <td>NaN</td>\n",
  230. " <td>NaN</td>\n",
  231. " <td>NaN</td>\n",
  232. " </tr>\n",
  233. " <tr>\n",
  234. " <th>1</th>\n",
  235. " <td>0.297453</td>\n",
  236. " <td>0.351240</td>\n",
  237. " <td>0.298851</td>\n",
  238. " <td>0.466667</td>\n",
  239. " <td>0.312500</td>\n",
  240. " <td>0.000000</td>\n",
  241. " <td>0.000000</td>\n",
  242. " <td>NaN</td>\n",
  243. " <td>NaN</td>\n",
  244. " <td>NaN</td>\n",
  245. " <td>...</td>\n",
  246. " <td>NaN</td>\n",
  247. " <td>NaN</td>\n",
  248. " <td>NaN</td>\n",
  249. " <td>NaN</td>\n",
  250. " <td>NaN</td>\n",
  251. " <td>NaN</td>\n",
  252. " <td>NaN</td>\n",
  253. " <td>NaN</td>\n",
  254. " <td>NaN</td>\n",
  255. " <td>NaN</td>\n",
  256. " </tr>\n",
  257. " <tr>\n",
  258. " <th>2</th>\n",
  259. " <td>0.377146</td>\n",
  260. " <td>0.362297</td>\n",
  261. " <td>0.348505</td>\n",
  262. " <td>0.342369</td>\n",
  263. " <td>0.369942</td>\n",
  264. " <td>0.291339</td>\n",
  265. " <td>0.326471</td>\n",
  266. " <td>0.328205</td>\n",
  267. " <td>0.208333</td>\n",
  268. " <td>0.237500</td>\n",
  269. " <td>...</td>\n",
  270. " <td>NaN</td>\n",
  271. " <td>NaN</td>\n",
  272. " <td>NaN</td>\n",
  273. " <td>NaN</td>\n",
  274. " <td>NaN</td>\n",
  275. " <td>NaN</td>\n",
  276. " <td>NaN</td>\n",
  277. " <td>NaN</td>\n",
  278. " <td>NaN</td>\n",
  279. " <td>NaN</td>\n",
  280. " </tr>\n",
  281. " <tr>\n",
  282. " <th>3</th>\n",
  283. " <td>0.532556</td>\n",
  284. " <td>0.543753</td>\n",
  285. " <td>0.547119</td>\n",
  286. " <td>0.547350</td>\n",
  287. " <td>0.505400</td>\n",
  288. " <td>0.514877</td>\n",
  289. " <td>0.485997</td>\n",
  290. " <td>0.444846</td>\n",
  291. " <td>0.426966</td>\n",
  292. " <td>0.346939</td>\n",
  293. " <td>...</td>\n",
  294. " <td>NaN</td>\n",
  295. " <td>NaN</td>\n",
  296. " <td>NaN</td>\n",
  297. " <td>NaN</td>\n",
  298. " <td>NaN</td>\n",
  299. " <td>NaN</td>\n",
  300. " <td>NaN</td>\n",
  301. " <td>NaN</td>\n",
  302. " <td>NaN</td>\n",
  303. " <td>NaN</td>\n",
  304. " </tr>\n",
  305. " <tr>\n",
  306. " <th>4</th>\n",
  307. " <td>0.595858</td>\n",
  308. " <td>0.616777</td>\n",
  309. " <td>0.618738</td>\n",
  310. " <td>0.601467</td>\n",
  311. " <td>0.636095</td>\n",
  312. " <td>0.606115</td>\n",
  313. " <td>0.554913</td>\n",
  314. " <td>0.496689</td>\n",
  315. " <td>0.591224</td>\n",
  316. " <td>0.518625</td>\n",
  317. " <td>...</td>\n",
  318. " <td>NaN</td>\n",
  319. " <td>NaN</td>\n",
  320. " <td>NaN</td>\n",
  321. " <td>NaN</td>\n",
  322. " <td>NaN</td>\n",
  323. " <td>NaN</td>\n",
  324. " <td>NaN</td>\n",
  325. " <td>NaN</td>\n",
  326. " <td>NaN</td>\n",
  327. " <td>NaN</td>\n",
  328. " </tr>\n",
  329. " <tr>\n",
  330. " <th>...</th>\n",
  331. " <td>...</td>\n",
  332. " <td>...</td>\n",
  333. " <td>...</td>\n",
  334. " <td>...</td>\n",
  335. " <td>...</td>\n",
  336. " <td>...</td>\n",
  337. " <td>...</td>\n",
  338. " <td>...</td>\n",
  339. " <td>...</td>\n",
  340. " <td>...</td>\n",
  341. " <td>...</td>\n",
  342. " <td>...</td>\n",
  343. " <td>...</td>\n",
  344. " <td>...</td>\n",
  345. " <td>...</td>\n",
  346. " <td>...</td>\n",
  347. " <td>...</td>\n",
  348. " <td>...</td>\n",
  349. " <td>...</td>\n",
  350. " <td>...</td>\n",
  351. " <td>...</td>\n",
  352. " </tr>\n",
  353. " <tr>\n",
  354. " <th>95</th>\n",
  355. " <td>0.666667</td>\n",
  356. " <td>1.000000</td>\n",
  357. " <td>1.000000</td>\n",
  358. " <td>1.000000</td>\n",
  359. " <td>1.000000</td>\n",
  360. " <td>NaN</td>\n",
  361. " <td>NaN</td>\n",
  362. " <td>NaN</td>\n",
  363. " <td>1.000000</td>\n",
  364. " <td>1.000000</td>\n",
  365. " <td>...</td>\n",
  366. " <td>NaN</td>\n",
  367. " <td>NaN</td>\n",
  368. " <td>NaN</td>\n",
  369. " <td>NaN</td>\n",
  370. " <td>NaN</td>\n",
  371. " <td>NaN</td>\n",
  372. " <td>NaN</td>\n",
  373. " <td>NaN</td>\n",
  374. " <td>NaN</td>\n",
  375. " <td>NaN</td>\n",
  376. " </tr>\n",
  377. " <tr>\n",
  378. " <th>96</th>\n",
  379. " <td>1.000000</td>\n",
  380. " <td>NaN</td>\n",
  381. " <td>1.000000</td>\n",
  382. " <td>NaN</td>\n",
  383. " <td>1.000000</td>\n",
  384. " <td>NaN</td>\n",
  385. " <td>NaN</td>\n",
  386. " <td>NaN</td>\n",
  387. " <td>NaN</td>\n",
  388. " <td>NaN</td>\n",
  389. " <td>...</td>\n",
  390. " <td>NaN</td>\n",
  391. " <td>NaN</td>\n",
  392. " <td>NaN</td>\n",
  393. " <td>NaN</td>\n",
  394. " <td>1.0</td>\n",
  395. " <td>NaN</td>\n",
  396. " <td>NaN</td>\n",
  397. " <td>NaN</td>\n",
  398. " <td>NaN</td>\n",
  399. " <td>NaN</td>\n",
  400. " </tr>\n",
  401. " <tr>\n",
  402. " <th>97</th>\n",
  403. " <td>0.923077</td>\n",
  404. " <td>NaN</td>\n",
  405. " <td>NaN</td>\n",
  406. " <td>1.000000</td>\n",
  407. " <td>1.000000</td>\n",
  408. " <td>NaN</td>\n",
  409. " <td>0.000000</td>\n",
  410. " <td>1.000000</td>\n",
  411. " <td>1.000000</td>\n",
  412. " <td>0.000000</td>\n",
  413. " <td>...</td>\n",
  414. " <td>NaN</td>\n",
  415. " <td>NaN</td>\n",
  416. " <td>NaN</td>\n",
  417. " <td>NaN</td>\n",
  418. " <td>NaN</td>\n",
  419. " <td>NaN</td>\n",
  420. " <td>NaN</td>\n",
  421. " <td>NaN</td>\n",
  422. " <td>1.0</td>\n",
  423. " <td>NaN</td>\n",
  424. " </tr>\n",
  425. " <tr>\n",
  426. " <th>98</th>\n",
  427. " <td>0.846154</td>\n",
  428. " <td>1.000000</td>\n",
  429. " <td>1.000000</td>\n",
  430. " <td>NaN</td>\n",
  431. " <td>NaN</td>\n",
  432. " <td>1.000000</td>\n",
  433. " <td>1.000000</td>\n",
  434. " <td>NaN</td>\n",
  435. " <td>1.000000</td>\n",
  436. " <td>1.000000</td>\n",
  437. " <td>...</td>\n",
  438. " <td>NaN</td>\n",
  439. " <td>NaN</td>\n",
  440. " <td>NaN</td>\n",
  441. " <td>NaN</td>\n",
  442. " <td>NaN</td>\n",
  443. " <td>NaN</td>\n",
  444. " <td>NaN</td>\n",
  445. " <td>NaN</td>\n",
  446. " <td>NaN</td>\n",
  447. " <td>NaN</td>\n",
  448. " </tr>\n",
  449. " <tr>\n",
  450. " <th>99</th>\n",
  451. " <td>0.777778</td>\n",
  452. " <td>0.666667</td>\n",
  453. " <td>1.000000</td>\n",
  454. " <td>1.000000</td>\n",
  455. " <td>1.000000</td>\n",
  456. " <td>1.000000</td>\n",
  457. " <td>1.000000</td>\n",
  458. " <td>NaN</td>\n",
  459. " <td>1.000000</td>\n",
  460. " <td>1.000000</td>\n",
  461. " <td>...</td>\n",
  462. " <td>NaN</td>\n",
  463. " <td>NaN</td>\n",
  464. " <td>1.0</td>\n",
  465. " <td>NaN</td>\n",
  466. " <td>NaN</td>\n",
  467. " <td>NaN</td>\n",
  468. " <td>NaN</td>\n",
  469. " <td>NaN</td>\n",
  470. " <td>NaN</td>\n",
  471. " <td>NaN</td>\n",
  472. " </tr>\n",
  473. " </tbody>\n",
  474. "</table>\n",
  475. "<p>100 rows × 100 columns</p>\n",
  476. "</div>"
  477. ],
  478. "text/plain": [
  479. " 0 1 2 3 4 5 6 \\\n",
  480. "0 NaN NaN NaN NaN NaN NaN NaN \n",
  481. "1 0.297453 0.351240 0.298851 0.466667 0.312500 0.000000 0.000000 \n",
  482. "2 0.377146 0.362297 0.348505 0.342369 0.369942 0.291339 0.326471 \n",
  483. "3 0.532556 0.543753 0.547119 0.547350 0.505400 0.514877 0.485997 \n",
  484. "4 0.595858 0.616777 0.618738 0.601467 0.636095 0.606115 0.554913 \n",
  485. ".. ... ... ... ... ... ... ... \n",
  486. "95 0.666667 1.000000 1.000000 1.000000 1.000000 NaN NaN \n",
  487. "96 1.000000 NaN 1.000000 NaN 1.000000 NaN NaN \n",
  488. "97 0.923077 NaN NaN 1.000000 1.000000 NaN 0.000000 \n",
  489. "98 0.846154 1.000000 1.000000 NaN NaN 1.000000 1.000000 \n",
  490. "99 0.777778 0.666667 1.000000 1.000000 1.000000 1.000000 1.000000 \n",
  491. "\n",
  492. " 7 8 9 ... 90 91 92 93 94 95 96 97 98 \\\n",
  493. "0 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  494. "1 NaN NaN NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  495. "2 0.328205 0.208333 0.237500 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  496. "3 0.444846 0.426966 0.346939 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  497. "4 0.496689 0.591224 0.518625 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  498. ".. ... ... ... ... .. .. ... .. ... .. .. .. ... \n",
  499. "95 NaN 1.000000 1.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  500. "96 NaN NaN NaN ... NaN NaN NaN NaN 1.0 NaN NaN NaN NaN \n",
  501. "97 1.000000 1.000000 0.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN 1.0 \n",
  502. "98 NaN 1.000000 1.000000 ... NaN NaN NaN NaN NaN NaN NaN NaN NaN \n",
  503. "99 NaN 1.000000 1.000000 ... NaN NaN 1.0 NaN NaN NaN NaN NaN NaN \n",
  504. "\n",
  505. " 99 \n",
  506. "0 NaN \n",
  507. "1 NaN \n",
  508. "2 NaN \n",
  509. "3 NaN \n",
  510. "4 NaN \n",
  511. ".. .. \n",
  512. "95 NaN \n",
  513. "96 NaN \n",
  514. "97 NaN \n",
  515. "98 NaN \n",
  516. "99 NaN \n",
  517. "\n",
  518. "[100 rows x 100 columns]"
  519. ]
  520. },
  521. "execution_count": 23,
  522. "metadata": {},
  523. "output_type": "execute_result"
  524. }
  525. ],
  526. "source": [
  527. "effs = np.divide(PdP_Velo_recoed[0], PdP_Velo_recoable[0])\n",
  528. "\n",
  529. "df = pd.DataFrame(effs)\n",
  530. "df"
  531. ]
  532. },
  533. {
  534. "cell_type": "code",
  535. "execution_count": 26,
  536. "metadata": {},
  537. "outputs": [
  538. {
  539. "data": {
  540. "image/png": "iVBORw0KGgoAAAANSUhEUgAABMIAAAOWCAYAAAANzz7PAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAD9EUlEQVR4nOz9f3gj13ng+b7o9u/IJMj2TCKTGYug5dyEnnE32Eqcmd2dtQhayqq1jt1At+5mM7FHIiDpTmYmdESIvrtks2evu0HJzMxk1hbYUqLMJM+TblCy86h1EzfQ0vzY2fGMSFjZTftmLAHdzpBpx4kINOWMHNti3T/agEESPKeAU4UqoL6f5+EjNk/VOaeqThXIV6fOG7IsyxIAAAAAAACgxx3wugMAAAAAAABAJxAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDAAAAAABAIBAIAwAAAAAAQCAQCAMAAAAAAEAgEAgDEHjVatXrLgAAAAAAOoBAGIBAKhaLkk6nZWBgQKamprzuDgAAAACgA97idQcAYLdisSjnz5+XYrEo5XJZNjc3pVqtSjgclkgkIoODgxKNRmVyclJisdie/ROJhJTLZVlbW6v/rFqtSqFQkPPnz0uhUGAWGAAAAAAEUMiyLMvrTgC9Znl5WVKpVMv7RaPRHcGbdoVCoZb3CYfDUqlUmpYlEglZWVlpuc58Pt80UNVMtVqVM2fOyOLiYsvtRKNRicViMjo6Kvl8XlZWVvacy1pwrFgs7tk/Ho9LLpdruV0AAAAAQHfh1UjABclkUiqViqytrUk8HlduG4vFJJ/P17d3gmVZUiqVJJvNSjgc3ne7SCQi2WxWSqXSvkEwEZFcLieVSsVWYGtmZkbW1takUqnYDoLVXlHcHQSrBahq9dWOK5/PSzKZrB9bsViUxcVFSaVS9YDd7hlftXosy5JIJGKrXwAAAACA3sKMMKADUqmULC8v7/l5J2YilctlGR0dbVpWqVSUgbL9jI+PN51Zlc1mJZlMttS3yclJKZfLO36eTCYlm83aqmNxcVHS6fSen0ciESmVSk332X09mBEGAAAAAMHAjDCgA/Z7TbKd1ydbFYlEJBqN7vl5PB5vKwgmsn+/WwmCFQoFGR0d3REEC4fDsra2ZjsIJnJzBlqpVNpzLJubm/vu0+5xAwAAAAC6G4EwoAP2exWvU6/oNWvHpO1m+7YSXCoWizI5Obln/8uXLzcN2tnpz9WrV3f0gcXwAQAAAAC7EQgDOmC/INHg4GBnO+ID5XJZJiYm9vw8l8u1FQSrqc0m6zUrKyt7Xh3FDxUKBa+7AAAAAKCLEAgDAqBZwO3QoUOO1mc3qJdIJPbM1komk7YX1leJRCIyMzNjXE8nFItFSaVSMjo6KqFQSAYGBmR0dFTGx8frWTpXVlZkampKG+wpFAr1/Xs9MFQul2V5eVkmJyclFArtmVnotSBdCwAAAKAbvcXrDgAIjkKh0HSR/Uwm41gbs7Oz9eyT1WrVd+uBVatVmZqaqme3jEQi9cyi5XJZisWiFIvFenltH5VacLFarUoqldo3SUA3K5fLkkgkpFwu+/q11yBcCwAAAKCbMSMMQMc0W2TfZNH+ZsLhcEuL9ndabbaXyM0sm6VSSXK5nORyOVlbW5NSqbRndpwumBKEV2wjkYisra1JpVLx9ay/IFwLAAAAoJsRCAPQEYVCoelaV7Ozs463lUgkRESdOVKlUChIIpHY8dri5OSkLC8vG/VrcXGx/rrczMxM04BdJBKRfD6/Y5acbo2wbDYrkUhEIpGI5HI5oz52A7+9DtkoaNcCAAAA6Da8GgmgI/YLCpgskL+fWCwmmUym5dk51WpVJiYm9ry+Wa1WpVAoSKFQkEwm0/bC/mfOnKl/32x2XKOZmRl57bXXZHFxURvQi8VigXoFz6tZV6lUSrLZrHKboF0LAAAAoNswIwxARzRbONyJBfL3MzMz09Irl+VyWUZGRpquYbZ7u/Hx8ZYXQm9nbatMJiPRaJSskT6wvLxsPCMQAAAAgPcIhAFwXblcbhrMcWM2WDuq1Wp9kfN4PC7ZbFbW1tYkn8/vux7V5ORkSwGq3UEwu4G02dlZXy8OHwTlclk7gw8AAABAd+DVSACu2y9gNDo62uGeNFcLSuXz+T2z1GKxmKRSqaaBr0QiIWtra7baiEQiO/6dTqflxIkT2llrtYySfsyAGQTVatXXa5IBAAAAaA0zwgC4br9AmJ8y7DULgtXUFrDfrVgs2p7ZFQ6HdwSyqtWqjI+P25pVZlkWQTAP1NaM49VUAAAAoHcQCAMCKp1OSygUautrfHy8pbb2e7XPL8GdcDisXa8sEonsyORY0+xn+9m9bblcltHRUUfWnioWi5JKpbSz7KrVqiwvL8v4+PiOdmuv/w0MDEgoFJLR0VFZXFzcs3+5XJZ0Ol3PqDk6OiqpVKrpNa61s3v87DY5OVmvr/HLyVdCl5eXd7QzMDAg4+PjTY9R5Ob5bLZmXGP/9jvXdq9FTbValcXFRZmcnKyf/1r/0um0rUBcuVyWxcVFGR0d3dHnxmswOjpafwUYAAAACCwLQEeIyJ6vSqXSkbaTyWTT9p38ikQiLbefz+c7cvy7zczM7OhHLBazvW84HN5zHK2IxWJNz0U0GrXW1tZaqmttbc1KJpM7+hQOh/dsV6lUrEwmY0Wj0R1tZrNZy7L2no/Gr2QyWa9HtV0kEtl3PO++/vvJZDK27o+1tTXb5z+Xy9XPSy6X21FHJBLZt++VSsVaW1vb06e1tbUdX4312bkWu2Wz2fr2mUzGWltbs0qlkpXL5XZcr3g8vmffSqVizczM1I+jsY+VSmXP9W7sV6lU0vYNAAAA6EXMCAMCKplMytraWltf2Wy2pbb2m/nll5kprcxMazZzTJdpslE+n6+v+7W7jvHxcdszdsrlspw/f972rKNoNLpnwfe1tTUZHx+XYrEouVxOSqWSVCqVHQkClpeXpVgsyuTkpBQKBcnn81KpVKRSqUg+n6+fu3K5LGfOnGnadiKRsNXHZufFRKFQqLc9Ozu7o/5oNCq5XE5EbvZ9ampqx77hcFii0eiehA61nzWWtXotatLptKRSKQmHw1IqlWRmZkai0ahEIhGJx+OytrZW7/PKyoqMjo7uGBubm5syOTm5Z0yurq7KyMhI/ZXeUqkk2Wy2fq2q1SqL/wMAACC4vI7EAUEhPpsRlslk2q5v94wc0cwI2z2rpvZVm5HUabtnNjWbbbOf2gwj0+PY75y0U2djXbpZSLtnCe03K2/3zLXGmWGNGs/Hfm3n83lbM7gqlYqjM8Li8bh2vOvqsdv3GrvXonEmmO5aN8742m/2YmMfw+Fw0+u6e+x26vkDAAAA+AkzwgC4zu8zwlqxO/ujSHvHMTMzI5VKZd9ZULVMlXbqbtan/TQmKEgmk/uujbY7U+J+swAb+1+tVn17Tfcbg40/d2JRfLvXIp1O19tPJpO2thW5OcutWYKGxuM4d+5c0+u6e6ytrq7a6isAAADQSwiEAXDdfsGBUqnU4Z6YaxZQee2119quK5fLydra2p5X8ERuBj0mJiYcDS7ZfQ208Zq18uqonzIsnjt3TjKZjORyOW2wSaRzgdnl5eV6W3YCZ8lkcsc1aCVBw26N7fnpWgEAAACdQiAMgOv2m3XUbGaL3zULXBw6dMiozmg0uu/aa8Vicc/6VZ3QbkbPzc1NZztiIBwOy8zMzL5rsrWytpuT8vl8/Xu7M8ga76FuvG8AAAAAvyAQBqAjms14KpfLvn2VrhWtvJqokkwmpVQq7QlCray
  541. "text/plain": [
  542. "<Figure size 1200x900 with 2 Axes>"
  543. ]
  544. },
  545. "metadata": {},
  546. "output_type": "display_data"
  547. }
  548. ],
  549. "source": [
  550. "# fig = plt.figure(figsize=(15, 7))\n",
  551. "ax = sns.heatmap(\n",
  552. " effs,\n",
  553. " robust=True,\n",
  554. " square=False,\n",
  555. " cmap=colormaps[\"rainbow\"],\n",
  556. " xticklabels=False,\n",
  557. " yticklabels=False,\n",
  558. " vmax=1,\n",
  559. " cbar_kws={\n",
  560. " \"label\": \"Efficiency\",\n",
  561. " \"pad\": 0.005,\n",
  562. " \"shrink\": 1,\n",
  563. " \"ticks\": [0.2, 0.4, 0.6, 0.8, 1.0],\n",
  564. " \"aspect\": 15,\n",
  565. " },\n",
  566. ")\n",
  567. "ax.set_ylabel(f\"$P$ [MeV]\")\n",
  568. "ax.set_xlabel(f\"$\\Delta P$ [MeV]\")\n",
  569. "ax.patch.set_edgecolor(\"black\")\n",
  570. "\n",
  571. "ax.set_yticks([0, 19, 39, 59, 79, 99], [0, 20000, 40000, 60000, 80000, 100000])\n",
  572. "ax.set_xticks([0, 19, 39, 59, 79, 99], [0, 2000, 4000, 6000, 8000, 10000])\n",
  573. "ax.invert_yaxis()\n",
  574. "# ax.set_ylim(0, 59)\n",
  575. "# ax.set_xlim(0, 59)\n",
  576. "\n",
  577. "ax.patch.set_linewidth(2)\n",
  578. "# ax.set_yticklabels([])\n",
  579. "# ax.set_title(\"EndVELO to EndUT $x/X_0$\", size=35)\n",
  580. "mplhep.lhcb.text(\"Simulation\", loc=0)\n",
  581. "plt.show()\n",
  582. "# plt.savefig(\n",
  583. "# \"/work/cetin/Projektpraktikum/thesis/Efficiency_PdP_Velo_hist2d.pdf\",\n",
  584. "# format=\"PDF\")"
  585. ]
  586. },
  587. {
  588. "cell_type": "code",
  589. "execution_count": 58,
  590. "metadata": {},
  591. "outputs": [
  592. {
  593. "data": {
  594. "text/plain": [
  595. "(array([6.4927e+04, 8.7210e+03, 5.4020e+03, 4.0560e+03, 3.3500e+03,\n",
  596. " 2.8240e+03, 2.3990e+03, 2.0600e+03, 1.8280e+03, 1.5610e+03,\n",
  597. " 1.5130e+03, 1.3480e+03, 1.2090e+03, 1.1250e+03, 1.0270e+03,\n",
  598. " 9.3000e+02, 9.0200e+02, 8.2300e+02, 7.8100e+02, 6.7500e+02,\n",
  599. " 6.8700e+02, 6.5400e+02, 6.6000e+02, 6.2300e+02, 5.3100e+02,\n",
  600. " 5.1900e+02, 5.1200e+02, 4.4000e+02, 4.7200e+02, 4.6700e+02,\n",
  601. " 4.1100e+02, 4.1300e+02, 3.7700e+02, 3.4600e+02, 3.5400e+02,\n",
  602. " 3.3100e+02, 3.3400e+02, 2.8600e+02, 3.0600e+02, 2.8800e+02,\n",
  603. " 2.7000e+02, 2.8100e+02, 2.5100e+02, 2.2500e+02, 2.7100e+02,\n",
  604. " 2.3000e+02, 2.4100e+02, 2.1700e+02, 2.2900e+02, 2.0700e+02,\n",
  605. " 2.2500e+02, 1.8500e+02, 1.9000e+02, 1.8600e+02, 1.9100e+02,\n",
  606. " 1.9900e+02, 1.8400e+02, 1.8500e+02, 1.7200e+02, 1.5700e+02,\n",
  607. " 1.5300e+02, 1.7100e+02, 1.3700e+02, 1.5200e+02, 1.4500e+02,\n",
  608. " 1.4600e+02, 1.2900e+02, 1.3900e+02, 1.4300e+02, 1.3700e+02,\n",
  609. " 1.1600e+02, 1.2200e+02, 1.2600e+02, 1.1900e+02, 1.1800e+02,\n",
  610. " 1.3100e+02, 1.1400e+02, 1.0700e+02, 1.1700e+02, 1.1700e+02,\n",
  611. " 1.1500e+02, 1.3000e+02, 8.7000e+01, 1.0300e+02, 9.9000e+01,\n",
  612. " 1.0100e+02, 7.7000e+01, 8.6000e+01, 1.0500e+02, 7.6000e+01,\n",
  613. " 8.5000e+01, 8.6000e+01, 7.4000e+01, 8.6000e+01, 7.9000e+01,\n",
  614. " 6.8000e+01, 7.1000e+01, 7.9000e+01, 6.9000e+01, 6.3000e+01]),\n",
  615. " array([ 0., 100., 200., 300., 400., 500., 600., 700.,\n",
  616. " 800., 900., 1000., 1100., 1200., 1300., 1400., 1500.,\n",
  617. " 1600., 1700., 1800., 1900., 2000., 2100., 2200., 2300.,\n",
  618. " 2400., 2500., 2600., 2700., 2800., 2900., 3000., 3100.,\n",
  619. " 3200., 3300., 3400., 3500., 3600., 3700., 3800., 3900.,\n",
  620. " 4000., 4100., 4200., 4300., 4400., 4500., 4600., 4700.,\n",
  621. " 4800., 4900., 5000., 5100., 5200., 5300., 5400., 5500.,\n",
  622. " 5600., 5700., 5800., 5900., 6000., 6100., 6200., 6300.,\n",
  623. " 6400., 6500., 6600., 6700., 6800., 6900., 7000., 7100.,\n",
  624. " 7200., 7300., 7400., 7500., 7600., 7700., 7800., 7900.,\n",
  625. " 8000., 8100., 8200., 8300., 8400., 8500., 8600., 8700.,\n",
  626. " 8800., 8900., 9000., 9100., 9200., 9300., 9400., 9500.,\n",
  627. " 9600., 9700., 9800., 9900., 10000.]))"
  628. ]
  629. },
  630. "execution_count": 58,
  631. "metadata": {},
  632. "output_type": "execute_result"
  633. }
  634. ],
  635. "source": [
  636. "dP_Velo_recoed = file[\"07_long_electrons_EndVelo_dP_reconstructed;1\"].to_numpy()\n",
  637. "dP_Velo_recoable = file[\"07_long_electrons_EndVelo_dP_reconstructible;1\"].to_numpy()\n",
  638. "\n",
  639. "dP_Velo_recoed"
  640. ]
  641. },
  642. {
  643. "cell_type": "code",
  644. "execution_count": 57,
  645. "metadata": {},
  646. "outputs": [
  647. {
  648. "data": {
  649. "image/png": "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
  650. "text/plain": [
  651. "<Figure size 1200x900 with 1 Axes>"
  652. ]
  653. },
  654. "metadata": {},
  655. "output_type": "display_data"
  656. }
  657. ],
  658. "source": [
  659. "fig = plt.figure()\n",
  660. "# plt.bar(\n",
  661. "# dP_Velo_recoable[1][1:],\n",
  662. "# dP_Velo_recoable[0] / np.max(dP_Velo_recoable[0]),\n",
  663. "# alpha=0.5,\n",
  664. "# color=\"#107E7D\",\n",
  665. "# label=\"p distribution, e\",\n",
  666. "# )\n",
  667. "plt.errorbar(\n",
  668. " dP_Velo_recoable[1][1:],\n",
  669. " dP_Velo_recoed[0] / dP_Velo_recoable[0],\n",
  670. " color=\"#107E7D\",\n",
  671. " label=\"Efficiency\",\n",
  672. " fmt=\"^\",\n",
  673. " ms=10,\n",
  674. ")\n",
  675. "plt.ylim(0, 1)\n",
  676. "plt.xlabel(r\"$dp$ [MeV]\")\n",
  677. "plt.ylabel(\"Efficiency of Long Tracks\")\n",
  678. "plt.legend(loc=\"best\")\n",
  679. "mplhep.lhcb.text(\"Simulation\", loc=0)\n",
  680. "plt.show()\n",
  681. "# plt.savefig(\"/work/cetin/Projektpraktikum/thesis/Efficiency_dP_Velo.pdf\",\n",
  682. "# format=\"PDF\")"
  683. ]
  684. },
  685. {
  686. "cell_type": "code",
  687. "execution_count": null,
  688. "metadata": {},
  689. "outputs": [],
  690. "source": []
  691. }
  692. ],
  693. "metadata": {
  694. "kernelspec": {
  695. "display_name": "tuner",
  696. "language": "python",
  697. "name": "python3"
  698. },
  699. "language_info": {
  700. "codemirror_mode": {
  701. "name": "ipython",
  702. "version": 3
  703. },
  704. "file_extension": ".py",
  705. "mimetype": "text/x-python",
  706. "name": "python",
  707. "nbconvert_exporter": "python",
  708. "pygments_lexer": "ipython3",
  709. "version": "3.10.12"
  710. }
  711. },
  712. "nbformat": 4,
  713. "nbformat_minor": 2
  714. }