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.

1532 lines
79 KiB

10 months ago
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "code",
  5. "execution_count": 1,
  6. "metadata": {},
  7. "outputs": [
  8. {
  9. "name": "stdout",
  10. "output_type": "stream",
  11. "text": [
  12. "Welcome to JupyROOT 6.28/04\n"
  13. ]
  14. }
  15. ],
  16. "source": [
  17. "import uproot\n",
  18. "import ROOT\n",
  19. "from ROOT import TMultiGraph, TLatex, TCanvas, TFile, TGaxis, TGraphAsymmErrors\n",
  20. "from ROOT import gROOT, gStyle, gPad\n",
  21. "from ROOT import TEfficiency\n",
  22. "\n",
  23. "ROOT.gROOT.SetBatch(True)\n",
  24. "\n",
  25. "\n",
  26. "import matplotlib.pyplot as plt\n",
  27. "import awkward as ak\n",
  28. "import numpy as np\n",
  29. "from array import array\n",
  30. "%matplotlib inline"
  31. ]
  32. },
  33. {
  34. "cell_type": "code",
  35. "execution_count": null,
  36. "metadata": {},
  37. "outputs": [
  38. {
  39. "ename": "",
  40. "evalue": "",
  41. "output_type": "error",
  42. "traceback": [
  43. "\u001b[1;31mThe kernel failed to start due to an error with the 'pyzmq' module. Consider re-installing this module.\n",
  44. "\u001b[1;31mClick <a href='https://aka.ms/kernelFailuresPyzmq'>here</a> for more info."
  45. ]
  46. }
  47. ],
  48. "source": [
  49. "from collections import defaultdict\n",
  50. "\n",
  51. "basedict = defaultdict(lambda: defaultdict(dict))"
  52. ]
  53. },
  54. {
  55. "cell_type": "code",
  56. "execution_count": null,
  57. "metadata": {},
  58. "outputs": [],
  59. "source": []
  60. },
  61. {
  62. "cell_type": "code",
  63. "execution_count": null,
  64. "metadata": {},
  65. "outputs": [],
  66. "source": []
  67. },
  68. {
  69. "cell_type": "code",
  70. "execution_count": 2,
  71. "metadata": {},
  72. "outputs": [],
  73. "source": [
  74. "def getEfficiencyHistoNames():\n",
  75. " return [\"p\", \"pt\", \"phi\", \"eta\", \"nPV\"]\n",
  76. "\n",
  77. "\n",
  78. "def getTrackers(trackers):\n",
  79. " return trackers\n",
  80. "\n",
  81. "#data/resolutions_and_effs_Bd2KstEE_MDmaster.root:Track/...\n",
  82. "def getOriginFolders():\n",
  83. " basedict = {\n",
  84. " \"Velo\": {},\n",
  85. " \"Upstream\": {},\n",
  86. " \"Forward\": {},\n",
  87. " \"Match\": {},\n",
  88. " \"BestLong\": {},\n",
  89. " \"Seed\": {},\n",
  90. " }\n",
  91. "\n",
  92. " basedict[\"Velo\"][\"folder\"] = \"VeloTrackChecker/\" #evtl anpassen wenn die folders anders heissen\n",
  93. " basedict[\"Upstream\"][\"folder\"] = \"UpstreamTrackChecker/\"\n",
  94. " basedict[\"Forward\"][\"folder\"] = \"ForwardTrackChecker_7a0dbfa7/\"\n",
  95. " basedict[\"Match\"][\"folder\"] = \"MatchTrackChecker_29e3152a/\"\n",
  96. " basedict[\"BestLong\"][\"folder\"] = \"BestLongTrackChecker_4ddacce1/\"\n",
  97. " basedict[\"Seed\"][\"folder\"] = \"SeedTrackChecker_1b1d5575/\"\n",
  98. "\n",
  99. " return basedict\n",
  100. "\n",
  101. "\n",
  102. "def getTrackNames():\n",
  103. " basedict = {\n",
  104. " \"Velo\": {},\n",
  105. " \"Upstream\": {},\n",
  106. " \"Forward\": {},\n",
  107. " \"Match\": {},\n",
  108. " \"BestLong\": {},\n",
  109. " \"Seed\": {},\n",
  110. " }\n",
  111. "\n",
  112. " basedict[\"Velo\"] = \"Velo\"\n",
  113. " basedict[\"Upstream\"] = \"VeloUT\"\n",
  114. " basedict[\"Forward\"] = \"Forward\"\n",
  115. " basedict[\"Match\"] = \"Match\"\n",
  116. " basedict[\"BestLong\"] = \"BestLong\"\n",
  117. " basedict[\"Seed\"] = \"Seed\"\n",
  118. " return basedict\n",
  119. "\n",
  120. "trackers = [\"Forward\", \"Match\", \"BestLong\", \"Seed\"]\n",
  121. "label = [\"EffChecker\"]\n",
  122. "filename = [\"/work/cetin/LHCb/stack/data/resolutions_and_effs_Bd2KstEE_MDmaster.root\"]"
  123. ]
  124. },
  125. {
  126. "cell_type": "code",
  127. "execution_count": 3,
  128. "metadata": {},
  129. "outputs": [],
  130. "source": [
  131. "def get_files(tf, filename, label):\n",
  132. " for i, f in enumerate(filename):\n",
  133. " tf[label[i]] = TFile(f, \"read\")\n",
  134. " return tf\n",
  135. "\n",
  136. "\n",
  137. "def get_nicer_var_string(var: str):\n",
  138. " nice_vars = dict(pt=\"p_{T}\", eta=\"#eta\", phi=\"#phi\")\n",
  139. " try:\n",
  140. " return nice_vars[var]\n",
  141. " except KeyError:\n",
  142. " return var\n"
  143. ]
  144. },
  145. {
  146. "cell_type": "code",
  147. "execution_count": 4,
  148. "metadata": {},
  149. "outputs": [],
  150. "source": [
  151. "def Efficiency(numerator, denominator):\n",
  152. " return (numerator.GetEntries()+1.)/(denominator.GetEntries()+2.)"
  153. ]
  154. },
  155. {
  156. "cell_type": "code",
  157. "execution_count": null,
  158. "metadata": {},
  159. "outputs": [],
  160. "source": []
  161. },
  162. {
  163. "cell_type": "code",
  164. "execution_count": 5,
  165. "metadata": {},
  166. "outputs": [],
  167. "source": [
  168. "def get_eff(eff, hist, tf, histoName, label, var):\n",
  169. " eff = {}\n",
  170. " hist = {}\n",
  171. " var = get_nicer_var_string(var)\n",
  172. " for i, lab in enumerate(label):\n",
  173. " numeratorName = histoName + \"_reconstructed\"\n",
  174. " numerator = tf[lab].Get(numeratorName)\n",
  175. " denominatorName = histoName + \"_reconstructible\"\n",
  176. " denominator = tf[lab].Get(denominatorName)\n",
  177. " if numerator.GetEntries() == 0 or denominator.GetEntries() == 0:\n",
  178. " continue\n",
  179. "\n",
  180. " teff = Efficiency(numerator, denominator)\n",
  181. " #print(\"TBetaAlpha: \"+ str(teff.GetBetaAlpha()))\n",
  182. " #print(\"TBetaBeta: \"+ str(teff.GetBetaBeta()))\n",
  183. " eff[lab] = teff\n",
  184. "\n",
  185. " hist[lab] = denominator.Clone()\n",
  186. " hist[lab].SetName(\"h_numerator_notElectrons\")\n",
  187. " hist[lab].SetTitle(var + \" distribution, not e^{-}\")\n",
  188. " if histoName.find(\"strange\") != -1:\n",
  189. " hist[lab].SetTitle(var + \" distribution, stranges\")\n",
  190. " if histoName.find(\"electron\") != -1:\n",
  191. " hist[lab].SetTitle(var + \" distribution, e^{-}\")\n",
  192. "\n",
  193. " return eff, hist"
  194. ]
  195. },
  196. {
  197. "cell_type": "code",
  198. "execution_count": 6,
  199. "metadata": {},
  200. "outputs": [],
  201. "source": [
  202. "tf = {}\n",
  203. "tf = get_files(tf, filename, label)\n",
  204. "\n",
  205. "latex = TLatex()\n",
  206. "latex.SetNDC()\n",
  207. "latex.SetTextSize(0.05)\n",
  208. "\n",
  209. "efficiencyHistoDict = efficiencyHistoDict()\n",
  210. "efficiencyHistos = getEfficiencyHistoNames()"
  211. ]
  212. },
  213. {
  214. "cell_type": "code",
  215. "execution_count": 7,
  216. "metadata": {},
  217. "outputs": [
  218. {
  219. "name": "stdout",
  220. "output_type": "stream",
  221. "text": [
  222. "ForwardTrackChecker_7a0dbfa7/\n",
  223. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/01_long_P\n",
  224. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/01_long_Pt\n",
  225. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/01_long_Phi\n",
  226. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/01_long_Eta\n",
  227. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/01_long_nPV\n",
  228. "ForwardTrackChecker_7a0dbfa7/\n",
  229. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/02_long_P>5GeV_P\n",
  230. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/02_long_P>5GeV_Pt\n",
  231. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/02_long_P>5GeV_Phi\n",
  232. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/02_long_P>5GeV_Eta\n",
  233. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/02_long_P>5GeV_nPV\n",
  234. "ForwardTrackChecker_7a0dbfa7/\n",
  235. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/03_long_strange_P\n",
  236. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/03_long_strange_Pt\n",
  237. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/03_long_strange_Phi\n",
  238. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/03_long_strange_Eta\n",
  239. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/03_long_strange_nPV\n",
  240. "ForwardTrackChecker_7a0dbfa7/\n",
  241. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/04_long_strange_P>5GeV_P\n",
  242. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/04_long_strange_P>5GeV_Pt\n",
  243. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/04_long_strange_P>5GeV_Phi\n",
  244. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/04_long_strange_P>5GeV_Eta\n",
  245. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/04_long_strange_P>5GeV_nPV\n",
  246. "ForwardTrackChecker_7a0dbfa7/\n",
  247. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/05_long_fromB_P\n",
  248. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/05_long_fromB_Pt\n",
  249. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/05_long_fromB_Phi\n",
  250. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/05_long_fromB_Eta\n",
  251. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/05_long_fromB_nPV\n",
  252. "ForwardTrackChecker_7a0dbfa7/\n",
  253. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/06_long_fromB_P>5GeV_P\n",
  254. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/06_long_fromB_P>5GeV_Pt\n",
  255. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/06_long_fromB_P>5GeV_Phi\n",
  256. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/06_long_fromB_P>5GeV_Eta\n",
  257. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/06_long_fromB_P>5GeV_nPV\n",
  258. "ForwardTrackChecker_7a0dbfa7/\n",
  259. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/10_long_fromB_P>3GeV_Pt>0.5GeV_P\n",
  260. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/10_long_fromB_P>3GeV_Pt>0.5GeV_Pt\n",
  261. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/10_long_fromB_P>3GeV_Pt>0.5GeV_Phi\n",
  262. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/10_long_fromB_P>3GeV_Pt>0.5GeV_Eta\n",
  263. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/10_long_fromB_P>3GeV_Pt>0.5GeV_nPV\n",
  264. "ForwardTrackChecker_7a0dbfa7/\n",
  265. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_P\n",
  266. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Pt\n",
  267. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Phi\n",
  268. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Eta\n",
  269. "not electrons: Track/ForwardTrackChecker_7a0dbfa7/Forward/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV\n",
  270. "MatchTrackChecker_29e3152a/\n",
  271. "not electrons: Track/MatchTrackChecker_29e3152a/Match/01_long_P\n",
  272. "not electrons: Track/MatchTrackChecker_29e3152a/Match/01_long_Pt\n",
  273. "not electrons: Track/MatchTrackChecker_29e3152a/Match/01_long_Phi\n",
  274. "not electrons: Track/MatchTrackChecker_29e3152a/Match/01_long_Eta\n",
  275. "not electrons: Track/MatchTrackChecker_29e3152a/Match/01_long_nPV\n",
  276. "MatchTrackChecker_29e3152a/\n",
  277. "not electrons: Track/MatchTrackChecker_29e3152a/Match/02_long_P>5GeV_P\n",
  278. "not electrons: Track/MatchTrackChecker_29e3152a/Match/02_long_P>5GeV_Pt\n",
  279. "not electrons: Track/MatchTrackChecker_29e3152a/Match/02_long_P>5GeV_Phi\n",
  280. "not electrons: Track/MatchTrackChecker_29e3152a/Match/02_long_P>5GeV_Eta\n",
  281. "not electrons: Track/MatchTrackChecker_29e3152a/Match/02_long_P>5GeV_nPV\n",
  282. "MatchTrackChecker_29e3152a/\n",
  283. "not electrons: Track/MatchTrackChecker_29e3152a/Match/03_long_strange_P\n",
  284. "not electrons: Track/MatchTrackChecker_29e3152a/Match/03_long_strange_Pt\n",
  285. "not electrons: Track/MatchTrackChecker_29e3152a/Match/03_long_strange_Phi\n",
  286. "not electrons: Track/MatchTrackChecker_29e3152a/Match/03_long_strange_Eta\n",
  287. "not electrons: Track/MatchTrackChecker_29e3152a/Match/03_long_strange_nPV\n",
  288. "MatchTrackChecker_29e3152a/\n",
  289. "not electrons: Track/MatchTrackChecker_29e3152a/Match/04_long_strange_P>5GeV_P\n",
  290. "not electrons: Track/MatchTrackChecker_29e3152a/Match/04_long_strange_P>5GeV_Pt\n",
  291. "not electrons: Track/MatchTrackChecker_29e3152a/Match/04_long_strange_P>5GeV_Phi\n",
  292. "not electrons: Track/MatchTrackChecker_29e3152a/Match/04_long_strange_P>5GeV_Eta\n",
  293. "not electrons: Track/MatchTrackChecker_29e3152a/Match/04_long_strange_P>5GeV_nPV\n",
  294. "MatchTrackChecker_29e3152a/\n",
  295. "not electrons: Track/MatchTrackChecker_29e3152a/Match/05_long_fromB_P\n",
  296. "not electrons: Track/MatchTrackChecker_29e3152a/Match/05_long_fromB_Pt\n",
  297. "not electrons: Track/MatchTrackChecker_29e3152a/Match/05_long_fromB_Phi\n",
  298. "not electrons: Track/MatchTrackChecker_29e3152a/Match/05_long_fromB_Eta\n",
  299. "not electrons: Track/MatchTrackChecker_29e3152a/Match/05_long_fromB_nPV\n",
  300. "MatchTrackChecker_29e3152a/\n",
  301. "not electrons: Track/MatchTrackChecker_29e3152a/Match/06_long_fromB_P>5GeV_P\n",
  302. "not electrons: Track/MatchTrackChecker_29e3152a/Match/06_long_fromB_P>5GeV_Pt\n",
  303. "not electrons: Track/MatchTrackChecker_29e3152a/Match/06_long_fromB_P>5GeV_Phi\n",
  304. "not electrons: Track/MatchTrackChecker_29e3152a/Match/06_long_fromB_P>5GeV_Eta\n",
  305. "not electrons: Track/MatchTrackChecker_29e3152a/Match/06_long_fromB_P>5GeV_nPV\n",
  306. "MatchTrackChecker_29e3152a/\n",
  307. "not electrons: Track/MatchTrackChecker_29e3152a/Match/10_long_fromB_P>3GeV_Pt>0.5GeV_P\n",
  308. "not electrons: Track/MatchTrackChecker_29e3152a/Match/10_long_fromB_P>3GeV_Pt>0.5GeV_Pt\n",
  309. "not electrons: Track/MatchTrackChecker_29e3152a/Match/10_long_fromB_P>3GeV_Pt>0.5GeV_Phi\n",
  310. "not electrons: Track/MatchTrackChecker_29e3152a/Match/10_long_fromB_P>3GeV_Pt>0.5GeV_Eta\n",
  311. "not electrons: Track/MatchTrackChecker_29e3152a/Match/10_long_fromB_P>3GeV_Pt>0.5GeV_nPV\n",
  312. "MatchTrackChecker_29e3152a/\n",
  313. "not electrons: Track/MatchTrackChecker_29e3152a/Match/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_P\n",
  314. "not electrons: Track/MatchTrackChecker_29e3152a/Match/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Pt\n",
  315. "not electrons: Track/MatchTrackChecker_29e3152a/Match/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Phi\n",
  316. "not electrons: Track/MatchTrackChecker_29e3152a/Match/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_Eta\n",
  317. "not electrons: Track/MatchTrackChecker_29e3152a/Match/11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV\n",
  318. "BestLongTrackChecker_4ddacce1/\n",
  319. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/01_long_P\n",
  320. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/01_long_Pt\n",
  321. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/01_long_Phi\n",
  322. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/01_long_Eta\n",
  323. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/01_long_nPV\n",
  324. "BestLongTrackChecker_4ddacce1/\n",
  325. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/02_long_P>5GeV_P\n",
  326. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/02_long_P>5GeV_Pt\n",
  327. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/02_long_P>5GeV_Phi\n",
  328. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/02_long_P>5GeV_Eta\n",
  329. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/02_long_P>5GeV_nPV\n",
  330. "BestLongTrackChecker_4ddacce1/\n",
  331. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/03_long_strange_P\n",
  332. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/03_long_strange_Pt\n",
  333. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/03_long_strange_Phi\n",
  334. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/03_long_strange_Eta\n",
  335. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/03_long_strange_nPV\n",
  336. "BestLongTrackChecker_4ddacce1/\n",
  337. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/04_long_strange_P>5GeV_P\n",
  338. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/04_long_strange_P>5GeV_Pt\n",
  339. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/04_long_strange_P>5GeV_Phi\n",
  340. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/04_long_strange_P>5GeV_Eta\n",
  341. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/04_long_strange_P>5GeV_nPV\n",
  342. "BestLongTrackChecker_4ddacce1/\n",
  343. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/05_long_fromB_P\n",
  344. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/05_long_fromB_Pt\n",
  345. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/05_long_fromB_Phi\n",
  346. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/05_long_fromB_Eta\n",
  347. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/05_long_fromB_nPV\n",
  348. "BestLongTrackChecker_4ddacce1/\n",
  349. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/06_long_fromB_P>5GeV_P\n",
  350. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/06_long_fromB_P>5GeV_Pt\n",
  351. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/06_long_fromB_P>5GeV_Phi\n",
  352. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/06_long_fromB_P>5GeV_Eta\n",
  353. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/06_long_fromB_P>5GeV_nPV\n",
  354. "BestLongTrackChecker_4ddacce1/\n",
  355. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/10_long_fromB_P>3GeV_Pt>0.5GeV_P\n",
  356. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/10_long_fromB_P>3GeV_Pt>0.5GeV_Pt\n",
  357. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/10_long_fromB_P>3GeV_Pt>0.5GeV_Phi\n",
  358. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/10_long_fromB_P>3GeV_Pt>0.5GeV_Eta\n",
  359. "not electrons: Track/BestLongTrackChecker_4ddacce1/BestLong/10_long_fromB_P>3GeV_Pt>0.5GeV_nPV\n",
  360. "SeedTrackChecker_1b1d5575/\n",
  361. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/01_hasT_P\n",
  362. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/01_hasT_Pt\n",
  363. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/01_hasT_Phi\n",
  364. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/01_hasT_Eta\n",
  365. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/01_hasT_nPV\n",
  366. "SeedTrackChecker_1b1d5575/\n",
  367. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/02_long_P\n",
  368. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/02_long_Pt\n",
  369. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/02_long_Phi\n",
  370. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/02_long_Eta\n",
  371. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/02_long_nPV\n",
  372. "SeedTrackChecker_1b1d5575/\n",
  373. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/03_long_P>5GeV_P\n",
  374. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/03_long_P>5GeV_Pt\n",
  375. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/03_long_P>5GeV_Phi\n",
  376. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/03_long_P>5GeV_Eta\n",
  377. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/03_long_P>5GeV_nPV\n",
  378. "SeedTrackChecker_1b1d5575/\n",
  379. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/04_long_fromB_P\n",
  380. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/04_long_fromB_Pt\n",
  381. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/04_long_fromB_Phi\n",
  382. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/04_long_fromB_Eta\n",
  383. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/04_long_fromB_nPV\n",
  384. "SeedTrackChecker_1b1d5575/\n",
  385. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/05_long_fromB_P>5GeV_P\n",
  386. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/05_long_fromB_P>5GeV_Pt\n",
  387. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/05_long_fromB_P>5GeV_Phi\n",
  388. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/05_long_fromB_P>5GeV_Eta\n",
  389. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/05_long_fromB_P>5GeV_nPV\n",
  390. "SeedTrackChecker_1b1d5575/\n",
  391. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/08_noVelo+UT+T_strange_P\n",
  392. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/08_noVelo+UT+T_strange_Pt\n",
  393. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/08_noVelo+UT+T_strange_Phi\n",
  394. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/08_noVelo+UT+T_strange_Eta\n",
  395. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/08_noVelo+UT+T_strange_nPV\n",
  396. "SeedTrackChecker_1b1d5575/\n",
  397. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/09_noVelo+UT+T_strange_P>5GeV_P\n",
  398. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/09_noVelo+UT+T_strange_P>5GeV_Pt\n",
  399. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/09_noVelo+UT+T_strange_P>5GeV_Phi\n",
  400. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/09_noVelo+UT+T_strange_P>5GeV_Eta\n",
  401. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/09_noVelo+UT+T_strange_P>5GeV_nPV\n",
  402. "SeedTrackChecker_1b1d5575/\n",
  403. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/12_noVelo+UT+T_SfromDB_P>5GeV_P\n",
  404. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/12_noVelo+UT+T_SfromDB_P>5GeV_Pt\n",
  405. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/12_noVelo+UT+T_SfromDB_P>5GeV_Phi\n",
  406. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/12_noVelo+UT+T_SfromDB_P>5GeV_Eta\n",
  407. "not electrons: Track/SeedTrackChecker_1b1d5575/Seed/12_noVelo+UT+T_SfromDB_P>5GeV_nPV\n"
  408. ]
  409. },
  410. {
  411. "data": {
  412. "text/html": [
  413. "<pre>[{Forward_01_long_p: [0.872], Forward_01_long_pt: [0.872], ...},\n",
  414. " {Forward_01_long_p: None, Forward_01_long_pt: None, ...},\n",
  415. " {Forward_01_long_p: None, Forward_01_long_pt: None, ...},\n",
  416. " {Forward_01_long_p: None, Forward_01_long_pt: None, ...}]\n",
  417. "---------------------------------------------------------------------------\n",
  418. "type: 4 * {\n",
  419. " Forward_01_long_p: option[var * float64],\n",
  420. " Forward_01_long_pt: option[var * float64],\n",
  421. " Forward_01_long_phi: option[var * float64],\n",
  422. " Forward_01_long_eta: option[var * float64],\n",
  423. " Forward_01_long_nPV: option[var * float64],\n",
  424. " &quot;Forward_02_long_P&gt;5GeV_p&quot;: option[var * float64],\n",
  425. " &quot;Forward_02_long_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  426. " &quot;Forward_02_long_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  427. " &quot;Forward_02_long_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  428. " &quot;Forward_02_long_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  429. " Forward_03_long_strange_p: option[var * float64],\n",
  430. " Forward_03_long_strange_pt: option[var * float64],\n",
  431. " Forward_03_long_strange_phi: option[var * float64],\n",
  432. " Forward_03_long_strange_eta: option[var * float64],\n",
  433. " Forward_03_long_strange_nPV: option[var * float64],\n",
  434. " &quot;Forward_04_long_strange_P&gt;5GeV_p&quot;: option[var * float64],\n",
  435. " &quot;Forward_04_long_strange_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  436. " &quot;Forward_04_long_strange_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  437. " &quot;Forward_04_long_strange_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  438. " &quot;Forward_04_long_strange_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  439. " Forward_05_long_fromB_p: option[var * float64],\n",
  440. " Forward_05_long_fromB_pt: option[var * float64],\n",
  441. " Forward_05_long_fromB_phi: option[var * float64],\n",
  442. " Forward_05_long_fromB_eta: option[var * float64],\n",
  443. " Forward_05_long_fromB_nPV: option[var * float64],\n",
  444. " &quot;Forward_06_long_fromB_P&gt;5GeV_p&quot;: option[var * float64],\n",
  445. " &quot;Forward_06_long_fromB_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  446. " &quot;Forward_06_long_fromB_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  447. " &quot;Forward_06_long_fromB_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  448. " &quot;Forward_06_long_fromB_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  449. " &quot;Forward_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_p&quot;: option[var * float64],\n",
  450. " &quot;Forward_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_pt&quot;: option[var * float64],\n",
  451. " &quot;Forward_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_phi&quot;: option[var * float64],\n",
  452. " &quot;Forward_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_eta&quot;: option[var * float64],\n",
  453. " &quot;Forward_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_nPV&quot;: option[var * float64],\n",
  454. " &quot;Forward_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_p&quot;: option[var * float64],\n",
  455. " &quot;Forward_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_pt&quot;: option[var * float64],\n",
  456. " &quot;Forward_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_phi&quot;: option[var * float64],\n",
  457. " &quot;Forward_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_eta&quot;: option[var * float64],\n",
  458. " &quot;Forward_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_nPV&quot;: option[var * float64],\n",
  459. " Match_01_long_p: option[var * float64],\n",
  460. " Match_01_long_pt: option[var * float64],\n",
  461. " Match_01_long_phi: option[var * float64],\n",
  462. " Match_01_long_eta: option[var * float64],\n",
  463. " Match_01_long_nPV: option[var * float64],\n",
  464. " &quot;Match_02_long_P&gt;5GeV_p&quot;: option[var * float64],\n",
  465. " &quot;Match_02_long_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  466. " &quot;Match_02_long_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  467. " &quot;Match_02_long_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  468. " &quot;Match_02_long_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  469. " Match_03_long_strange_p: option[var * float64],\n",
  470. " Match_03_long_strange_pt: option[var * float64],\n",
  471. " Match_03_long_strange_phi: option[var * float64],\n",
  472. " Match_03_long_strange_eta: option[var * float64],\n",
  473. " Match_03_long_strange_nPV: option[var * float64],\n",
  474. " &quot;Match_04_long_strange_P&gt;5GeV_p&quot;: option[var * float64],\n",
  475. " &quot;Match_04_long_strange_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  476. " &quot;Match_04_long_strange_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  477. " &quot;Match_04_long_strange_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  478. " &quot;Match_04_long_strange_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  479. " Match_05_long_fromB_p: option[var * float64],\n",
  480. " Match_05_long_fromB_pt: option[var * float64],\n",
  481. " Match_05_long_fromB_phi: option[var * float64],\n",
  482. " Match_05_long_fromB_eta: option[var * float64],\n",
  483. " Match_05_long_fromB_nPV: option[var * float64],\n",
  484. " &quot;Match_06_long_fromB_P&gt;5GeV_p&quot;: option[var * float64],\n",
  485. " &quot;Match_06_long_fromB_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  486. " &quot;Match_06_long_fromB_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  487. " &quot;Match_06_long_fromB_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  488. " &quot;Match_06_long_fromB_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  489. " &quot;Match_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_p&quot;: option[var * float64],\n",
  490. " &quot;Match_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_pt&quot;: option[var * float64],\n",
  491. " &quot;Match_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_phi&quot;: option[var * float64],\n",
  492. " &quot;Match_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_eta&quot;: option[var * float64],\n",
  493. " &quot;Match_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_nPV&quot;: option[var * float64],\n",
  494. " &quot;Match_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_p&quot;: option[var * float64],\n",
  495. " &quot;Match_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_pt&quot;: option[var * float64],\n",
  496. " &quot;Match_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_phi&quot;: option[var * float64],\n",
  497. " &quot;Match_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_eta&quot;: option[var * float64],\n",
  498. " &quot;Match_11_UT_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_nPV&quot;: option[var * float64],\n",
  499. " BestLong_01_long_p: option[var * float64],\n",
  500. " BestLong_01_long_pt: option[var * float64],\n",
  501. " BestLong_01_long_phi: option[var * float64],\n",
  502. " BestLong_01_long_eta: option[var * float64],\n",
  503. " BestLong_01_long_nPV: option[var * float64],\n",
  504. " &quot;BestLong_02_long_P&gt;5GeV_p&quot;: option[var * float64],\n",
  505. " &quot;BestLong_02_long_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  506. " &quot;BestLong_02_long_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  507. " &quot;BestLong_02_long_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  508. " &quot;BestLong_02_long_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  509. " BestLong_03_long_strange_p: option[var * float64],\n",
  510. " BestLong_03_long_strange_pt: option[var * float64],\n",
  511. " BestLong_03_long_strange_phi: option[var * float64],\n",
  512. " BestLong_03_long_strange_eta: option[var * float64],\n",
  513. " BestLong_03_long_strange_nPV: option[var * float64],\n",
  514. " &quot;BestLong_04_long_strange_P&gt;5GeV_p&quot;: option[var * float64],\n",
  515. " &quot;BestLong_04_long_strange_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  516. " &quot;BestLong_04_long_strange_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  517. " &quot;BestLong_04_long_strange_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  518. " &quot;BestLong_04_long_strange_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  519. " BestLong_05_long_fromB_p: option[var * float64],\n",
  520. " BestLong_05_long_fromB_pt: option[var * float64],\n",
  521. " BestLong_05_long_fromB_phi: option[var * float64],\n",
  522. " BestLong_05_long_fromB_eta: option[var * float64],\n",
  523. " BestLong_05_long_fromB_nPV: option[var * float64],\n",
  524. " &quot;BestLong_06_long_fromB_P&gt;5GeV_p&quot;: option[var * float64],\n",
  525. " &quot;BestLong_06_long_fromB_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  526. " &quot;BestLong_06_long_fromB_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  527. " &quot;BestLong_06_long_fromB_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  528. " &quot;BestLong_06_long_fromB_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  529. " &quot;BestLong_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_p&quot;: option[var * float64],\n",
  530. " &quot;BestLong_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_pt&quot;: option[var * float64],\n",
  531. " &quot;BestLong_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_phi&quot;: option[var * float64],\n",
  532. " &quot;BestLong_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_eta&quot;: option[var * float64],\n",
  533. " &quot;BestLong_10_long_fromB_P&gt;3GeV_Pt&gt;0.5GeV_nPV&quot;: option[var * float64],\n",
  534. " Seed_01_hasT_p: option[var * float64],\n",
  535. " Seed_01_hasT_pt: option[var * float64],\n",
  536. " Seed_01_hasT_phi: option[var * float64],\n",
  537. " Seed_01_hasT_eta: option[var * float64],\n",
  538. " Seed_01_hasT_nPV: option[var * float64],\n",
  539. " Seed_02_long_p: option[var * float64],\n",
  540. " Seed_02_long_pt: option[var * float64],\n",
  541. " Seed_02_long_phi: option[var * float64],\n",
  542. " Seed_02_long_eta: option[var * float64],\n",
  543. " Seed_02_long_nPV: option[var * float64],\n",
  544. " &quot;Seed_03_long_P&gt;5GeV_p&quot;: option[var * float64],\n",
  545. " &quot;Seed_03_long_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  546. " &quot;Seed_03_long_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  547. " &quot;Seed_03_long_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  548. " &quot;Seed_03_long_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  549. " Seed_04_long_fromB_p: option[var * float64],\n",
  550. " Seed_04_long_fromB_pt: option[var * float64],\n",
  551. " Seed_04_long_fromB_phi: option[var * float64],\n",
  552. " Seed_04_long_fromB_eta: option[var * float64],\n",
  553. " Seed_04_long_fromB_nPV: option[var * float64],\n",
  554. " &quot;Seed_05_long_fromB_P&gt;5GeV_p&quot;: option[var * float64],\n",
  555. " &quot;Seed_05_long_fromB_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  556. " &quot;Seed_05_long_fromB_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  557. " &quot;Seed_05_long_fromB_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  558. " &quot;Seed_05_long_fromB_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  559. " &quot;Seed_08_noVelo+UT+T_strange_p&quot;: option[var * float64],\n",
  560. " &quot;Seed_08_noVelo+UT+T_strange_pt&quot;: option[var * float64],\n",
  561. " &quot;Seed_08_noVelo+UT+T_strange_phi&quot;: option[var * float64],\n",
  562. " &quot;Seed_08_noVelo+UT+T_strange_eta&quot;: option[var * float64],\n",
  563. " &quot;Seed_08_noVelo+UT+T_strange_nPV&quot;: option[var * float64],\n",
  564. " &quot;Seed_09_noVelo+UT+T_strange_P&gt;5GeV_p&quot;: option[var * float64],\n",
  565. " &quot;Seed_09_noVelo+UT+T_strange_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  566. " &quot;Seed_09_noVelo+UT+T_strange_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  567. " &quot;Seed_09_noVelo+UT+T_strange_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  568. " &quot;Seed_09_noVelo+UT+T_strange_P&gt;5GeV_nPV&quot;: option[var * float64],\n",
  569. " &quot;Seed_12_noVelo+UT+T_SfromDB_P&gt;5GeV_p&quot;: option[var * float64],\n",
  570. " &quot;Seed_12_noVelo+UT+T_SfromDB_P&gt;5GeV_pt&quot;: option[var * float64],\n",
  571. " &quot;Seed_12_noVelo+UT+T_SfromDB_P&gt;5GeV_phi&quot;: option[var * float64],\n",
  572. " &quot;Seed_12_noVelo+UT+T_SfromDB_P&gt;5GeV_eta&quot;: option[var * float64],\n",
  573. " &quot;Seed_12_noVelo+UT+T_SfromDB_P&gt;5GeV_nPV&quot;: option[var * float64]\n",
  574. "}</pre>"
  575. ],
  576. "text/plain": [
  577. "<Array [{Forward_01_long_p: [0.872], ...}, ...] type='4 * {Forward_01_long_...'>"
  578. ]
  579. },
  580. "execution_count": 7,
  581. "metadata": {},
  582. "output_type": "execute_result"
  583. }
  584. ],
  585. "source": [
  586. "\n",
  587. "\n",
  588. "plot_electrons = False\n",
  589. "plot_electrons_only = False\n",
  590. "\n",
  591. "categories = categoriesDict()\n",
  592. "cuts = getCuts()\n",
  593. "trackers = getTrackers(trackers)\n",
  594. "folders = getOriginFolders()\n",
  595. "effdata = ak.ArrayBuilder()\n",
  596. "#effdata.begin_list()\n",
  597. "for tracker in trackers:\n",
  598. " effdata.begin_record()\n",
  599. "\n",
  600. " for cut in cuts[tracker]:\n",
  601. " folder = folders[tracker][\"folder\"]\n",
  602. " print(folder)\n",
  603. " histoBaseName = \"Track/\" + folder + tracker + \"/\" + cut + \"_\"\n",
  604. "\n",
  605. "\n",
  606. " # calculate efficiency\n",
  607. " for histo in efficiencyHistos:\n",
  608. " effdata.field(str(tracker)+\"_\"+str(cut)+\"_\"+str(histo))\n",
  609. " effdata.begin_list()\n",
  610. " canvastitle = (\n",
  611. " \"efficiency_\" + histo + \", \" + categories[tracker][cut][\"title\"]\n",
  612. " )\n",
  613. " # get efficiency for not electrons category\n",
  614. " histoName = histoBaseName + \"\" + efficiencyHistoDict[histo][\"variable\"]\n",
  615. " print(\"not electrons: \" + histoName)\n",
  616. " eff = {}\n",
  617. " hist_den = {}\n",
  618. " eff, hist_den = get_eff(eff, hist_den, tf, histoName, label, histo)\n",
  619. "\n",
  620. " if categories[tracker][cut][\"plotElectrons\"] and plot_electrons:\n",
  621. " histoNameElec = (\n",
  622. " \"Track/\"\n",
  623. " + folder\n",
  624. " + tracker\n",
  625. " + \"/\"\n",
  626. " + categories[tracker][cut][\"Electrons\"]\n",
  627. " )\n",
  628. " histoName_e = (\n",
  629. " histoNameElec + \"_\" + efficiencyHistoDict[histo][\"variable\"]\n",
  630. " )\n",
  631. " print(\"electrons: \" + histoName_e)\n",
  632. " eff_elec = {}\n",
  633. " hist_elec = {}\n",
  634. " eff_elec, hist_elec = get_eff(eff_elec, hist_elec, tf, histoName_e, label, histo,)\n",
  635. "\n",
  636. " #print(type(eff))\n",
  637. " if not plot_electrons_only:\n",
  638. " effdata.append(eff[label[0]])\n",
  639. " if categories[tracker][cut][\"plotElectrons\"] and plot_electrons:\n",
  640. " effdata.append(eff_elec[label[0]])\n",
  641. "\n",
  642. " #print(eff[label[0]])\n",
  643. " effdata.end_list()\n",
  644. " effdata.end_record()\n",
  645. "\n",
  646. "#effdata.end_list()\n",
  647. "\n",
  648. "effdata = ak.Array(effdata)\n",
  649. "effdata"
  650. ]
  651. },
  652. {
  653. "cell_type": "code",
  654. "execution_count": 8,
  655. "metadata": {},
  656. "outputs": [
  657. {
  658. "data": {
  659. "text/plain": [
  660. "[{'Forward_01_long_p': [0.8723027753520721],\n",
  661. " 'Forward_01_long_pt': [0.8723027753520721],\n",
  662. " 'Forward_01_long_phi': [0.8723027753520721],\n",
  663. " 'Forward_01_long_eta': [0.8723027753520721],\n",
  664. " 'Forward_01_long_nPV': [0.8723027753520721],\n",
  665. " 'Forward_02_long_P>5GeV_p': [0.9274755004618178],\n",
  666. " 'Forward_02_long_P>5GeV_pt': [0.9274755004618178],\n",
  667. " 'Forward_02_long_P>5GeV_phi': [0.9274755004618178],\n",
  668. " 'Forward_02_long_P>5GeV_eta': [0.9274755004618178],\n",
  669. " 'Forward_02_long_P>5GeV_nPV': [0.9274755004618178],\n",
  670. " 'Forward_03_long_strange_p': [0.7989988259848683],\n",
  671. " 'Forward_03_long_strange_pt': [0.7989988259848683],\n",
  672. " 'Forward_03_long_strange_phi': [0.7989988259848683],\n",
  673. " 'Forward_03_long_strange_eta': [0.7989988259848683],\n",
  674. " 'Forward_03_long_strange_nPV': [0.7989988259848683],\n",
  675. " 'Forward_04_long_strange_P>5GeV_p': [0.8857386703080994],\n",
  676. " 'Forward_04_long_strange_P>5GeV_pt': [0.8857386703080994],\n",
  677. " 'Forward_04_long_strange_P>5GeV_phi': [0.8857386703080994],\n",
  678. " 'Forward_04_long_strange_P>5GeV_eta': [0.8857386703080994],\n",
  679. " 'Forward_04_long_strange_P>5GeV_nPV': [0.8857386703080994],\n",
  680. " 'Forward_05_long_fromB_p': [0.9057863426557181],\n",
  681. " 'Forward_05_long_fromB_pt': [0.9057863426557181],\n",
  682. " 'Forward_05_long_fromB_phi': [0.9057863426557181],\n",
  683. " 'Forward_05_long_fromB_eta': [0.9057863426557181],\n",
  684. " 'Forward_05_long_fromB_nPV': [0.9057863426557181],\n",
  685. " 'Forward_06_long_fromB_P>5GeV_p': [0.9462021519139234],\n",
  686. " 'Forward_06_long_fromB_P>5GeV_pt': [0.9462021519139234],\n",
  687. " 'Forward_06_long_fromB_P>5GeV_phi': [0.9462021519139234],\n",
  688. " 'Forward_06_long_fromB_P>5GeV_eta': [0.9462021519139234],\n",
  689. " 'Forward_06_long_fromB_P>5GeV_nPV': [0.9462021519139234],\n",
  690. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_p': [0.9467674812116038],\n",
  691. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': [0.9467674812116038],\n",
  692. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': [0.9467674812116038],\n",
  693. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': [0.9467674812116038],\n",
  694. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': [0.9467674812116038],\n",
  695. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': [0.9473434752694748],\n",
  696. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': [0.9473434752694748],\n",
  697. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': [0.9473434752694748],\n",
  698. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': [0.9473434752694748],\n",
  699. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': [0.9473434752694748],\n",
  700. " 'Match_01_long_p': None,\n",
  701. " 'Match_01_long_pt': None,\n",
  702. " 'Match_01_long_phi': None,\n",
  703. " 'Match_01_long_eta': None,\n",
  704. " 'Match_01_long_nPV': None,\n",
  705. " 'Match_02_long_P>5GeV_p': None,\n",
  706. " 'Match_02_long_P>5GeV_pt': None,\n",
  707. " 'Match_02_long_P>5GeV_phi': None,\n",
  708. " 'Match_02_long_P>5GeV_eta': None,\n",
  709. " 'Match_02_long_P>5GeV_nPV': None,\n",
  710. " 'Match_03_long_strange_p': None,\n",
  711. " 'Match_03_long_strange_pt': None,\n",
  712. " 'Match_03_long_strange_phi': None,\n",
  713. " 'Match_03_long_strange_eta': None,\n",
  714. " 'Match_03_long_strange_nPV': None,\n",
  715. " 'Match_04_long_strange_P>5GeV_p': None,\n",
  716. " 'Match_04_long_strange_P>5GeV_pt': None,\n",
  717. " 'Match_04_long_strange_P>5GeV_phi': None,\n",
  718. " 'Match_04_long_strange_P>5GeV_eta': None,\n",
  719. " 'Match_04_long_strange_P>5GeV_nPV': None,\n",
  720. " 'Match_05_long_fromB_p': None,\n",
  721. " 'Match_05_long_fromB_pt': None,\n",
  722. " 'Match_05_long_fromB_phi': None,\n",
  723. " 'Match_05_long_fromB_eta': None,\n",
  724. " 'Match_05_long_fromB_nPV': None,\n",
  725. " 'Match_06_long_fromB_P>5GeV_p': None,\n",
  726. " 'Match_06_long_fromB_P>5GeV_pt': None,\n",
  727. " 'Match_06_long_fromB_P>5GeV_phi': None,\n",
  728. " 'Match_06_long_fromB_P>5GeV_eta': None,\n",
  729. " 'Match_06_long_fromB_P>5GeV_nPV': None,\n",
  730. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  731. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  732. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  733. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  734. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  735. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  736. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  737. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  738. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  739. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  740. " 'BestLong_01_long_p': None,\n",
  741. " 'BestLong_01_long_pt': None,\n",
  742. " 'BestLong_01_long_phi': None,\n",
  743. " 'BestLong_01_long_eta': None,\n",
  744. " 'BestLong_01_long_nPV': None,\n",
  745. " 'BestLong_02_long_P>5GeV_p': None,\n",
  746. " 'BestLong_02_long_P>5GeV_pt': None,\n",
  747. " 'BestLong_02_long_P>5GeV_phi': None,\n",
  748. " 'BestLong_02_long_P>5GeV_eta': None,\n",
  749. " 'BestLong_02_long_P>5GeV_nPV': None,\n",
  750. " 'BestLong_03_long_strange_p': None,\n",
  751. " 'BestLong_03_long_strange_pt': None,\n",
  752. " 'BestLong_03_long_strange_phi': None,\n",
  753. " 'BestLong_03_long_strange_eta': None,\n",
  754. " 'BestLong_03_long_strange_nPV': None,\n",
  755. " 'BestLong_04_long_strange_P>5GeV_p': None,\n",
  756. " 'BestLong_04_long_strange_P>5GeV_pt': None,\n",
  757. " 'BestLong_04_long_strange_P>5GeV_phi': None,\n",
  758. " 'BestLong_04_long_strange_P>5GeV_eta': None,\n",
  759. " 'BestLong_04_long_strange_P>5GeV_nPV': None,\n",
  760. " 'BestLong_05_long_fromB_p': None,\n",
  761. " 'BestLong_05_long_fromB_pt': None,\n",
  762. " 'BestLong_05_long_fromB_phi': None,\n",
  763. " 'BestLong_05_long_fromB_eta': None,\n",
  764. " 'BestLong_05_long_fromB_nPV': None,\n",
  765. " 'BestLong_06_long_fromB_P>5GeV_p': None,\n",
  766. " 'BestLong_06_long_fromB_P>5GeV_pt': None,\n",
  767. " 'BestLong_06_long_fromB_P>5GeV_phi': None,\n",
  768. " 'BestLong_06_long_fromB_P>5GeV_eta': None,\n",
  769. " 'BestLong_06_long_fromB_P>5GeV_nPV': None,\n",
  770. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  771. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  772. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  773. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  774. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  775. " 'Seed_01_hasT_p': None,\n",
  776. " 'Seed_01_hasT_pt': None,\n",
  777. " 'Seed_01_hasT_phi': None,\n",
  778. " 'Seed_01_hasT_eta': None,\n",
  779. " 'Seed_01_hasT_nPV': None,\n",
  780. " 'Seed_02_long_p': None,\n",
  781. " 'Seed_02_long_pt': None,\n",
  782. " 'Seed_02_long_phi': None,\n",
  783. " 'Seed_02_long_eta': None,\n",
  784. " 'Seed_02_long_nPV': None,\n",
  785. " 'Seed_03_long_P>5GeV_p': None,\n",
  786. " 'Seed_03_long_P>5GeV_pt': None,\n",
  787. " 'Seed_03_long_P>5GeV_phi': None,\n",
  788. " 'Seed_03_long_P>5GeV_eta': None,\n",
  789. " 'Seed_03_long_P>5GeV_nPV': None,\n",
  790. " 'Seed_04_long_fromB_p': None,\n",
  791. " 'Seed_04_long_fromB_pt': None,\n",
  792. " 'Seed_04_long_fromB_phi': None,\n",
  793. " 'Seed_04_long_fromB_eta': None,\n",
  794. " 'Seed_04_long_fromB_nPV': None,\n",
  795. " 'Seed_05_long_fromB_P>5GeV_p': None,\n",
  796. " 'Seed_05_long_fromB_P>5GeV_pt': None,\n",
  797. " 'Seed_05_long_fromB_P>5GeV_phi': None,\n",
  798. " 'Seed_05_long_fromB_P>5GeV_eta': None,\n",
  799. " 'Seed_05_long_fromB_P>5GeV_nPV': None,\n",
  800. " 'Seed_08_noVelo+UT+T_strange_p': None,\n",
  801. " 'Seed_08_noVelo+UT+T_strange_pt': None,\n",
  802. " 'Seed_08_noVelo+UT+T_strange_phi': None,\n",
  803. " 'Seed_08_noVelo+UT+T_strange_eta': None,\n",
  804. " 'Seed_08_noVelo+UT+T_strange_nPV': None,\n",
  805. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_p': None,\n",
  806. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_pt': None,\n",
  807. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_phi': None,\n",
  808. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_eta': None,\n",
  809. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_nPV': None,\n",
  810. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_p': None,\n",
  811. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_pt': None,\n",
  812. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_phi': None,\n",
  813. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_eta': None,\n",
  814. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_nPV': None},\n",
  815. " {'Forward_01_long_p': None,\n",
  816. " 'Forward_01_long_pt': None,\n",
  817. " 'Forward_01_long_phi': None,\n",
  818. " 'Forward_01_long_eta': None,\n",
  819. " 'Forward_01_long_nPV': None,\n",
  820. " 'Forward_02_long_P>5GeV_p': None,\n",
  821. " 'Forward_02_long_P>5GeV_pt': None,\n",
  822. " 'Forward_02_long_P>5GeV_phi': None,\n",
  823. " 'Forward_02_long_P>5GeV_eta': None,\n",
  824. " 'Forward_02_long_P>5GeV_nPV': None,\n",
  825. " 'Forward_03_long_strange_p': None,\n",
  826. " 'Forward_03_long_strange_pt': None,\n",
  827. " 'Forward_03_long_strange_phi': None,\n",
  828. " 'Forward_03_long_strange_eta': None,\n",
  829. " 'Forward_03_long_strange_nPV': None,\n",
  830. " 'Forward_04_long_strange_P>5GeV_p': None,\n",
  831. " 'Forward_04_long_strange_P>5GeV_pt': None,\n",
  832. " 'Forward_04_long_strange_P>5GeV_phi': None,\n",
  833. " 'Forward_04_long_strange_P>5GeV_eta': None,\n",
  834. " 'Forward_04_long_strange_P>5GeV_nPV': None,\n",
  835. " 'Forward_05_long_fromB_p': None,\n",
  836. " 'Forward_05_long_fromB_pt': None,\n",
  837. " 'Forward_05_long_fromB_phi': None,\n",
  838. " 'Forward_05_long_fromB_eta': None,\n",
  839. " 'Forward_05_long_fromB_nPV': None,\n",
  840. " 'Forward_06_long_fromB_P>5GeV_p': None,\n",
  841. " 'Forward_06_long_fromB_P>5GeV_pt': None,\n",
  842. " 'Forward_06_long_fromB_P>5GeV_phi': None,\n",
  843. " 'Forward_06_long_fromB_P>5GeV_eta': None,\n",
  844. " 'Forward_06_long_fromB_P>5GeV_nPV': None,\n",
  845. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  846. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  847. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  848. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  849. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  850. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  851. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  852. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  853. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  854. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  855. " 'Match_01_long_p': [0.8630041712287172],\n",
  856. " 'Match_01_long_pt': [0.8630041712287172],\n",
  857. " 'Match_01_long_phi': [0.8630041712287172],\n",
  858. " 'Match_01_long_eta': [0.8630041712287172],\n",
  859. " 'Match_01_long_nPV': [0.8630041712287172],\n",
  860. " 'Match_02_long_P>5GeV_p': [0.9188646785079396],\n",
  861. " 'Match_02_long_P>5GeV_pt': [0.9188646785079396],\n",
  862. " 'Match_02_long_P>5GeV_phi': [0.9188646785079396],\n",
  863. " 'Match_02_long_P>5GeV_eta': [0.9188646785079396],\n",
  864. " 'Match_02_long_P>5GeV_nPV': [0.9188646785079396],\n",
  865. " 'Match_03_long_strange_p': [0.7842013435950952],\n",
  866. " 'Match_03_long_strange_pt': [0.7842013435950952],\n",
  867. " 'Match_03_long_strange_phi': [0.7842013435950952],\n",
  868. " 'Match_03_long_strange_eta': [0.7842013435950952],\n",
  869. " 'Match_03_long_strange_nPV': [0.7842013435950952],\n",
  870. " 'Match_04_long_strange_P>5GeV_p': [0.8778356234531023],\n",
  871. " 'Match_04_long_strange_P>5GeV_pt': [0.8778356234531023],\n",
  872. " 'Match_04_long_strange_P>5GeV_phi': [0.8778356234531023],\n",
  873. " 'Match_04_long_strange_P>5GeV_eta': [0.8778356234531023],\n",
  874. " 'Match_04_long_strange_P>5GeV_nPV': [0.8778356234531023],\n",
  875. " 'Match_05_long_fromB_p': [0.8985445767556485],\n",
  876. " 'Match_05_long_fromB_pt': [0.8985445767556485],\n",
  877. " 'Match_05_long_fromB_phi': [0.8985445767556485],\n",
  878. " 'Match_05_long_fromB_eta': [0.8985445767556485],\n",
  879. " 'Match_05_long_fromB_nPV': [0.8985445767556485],\n",
  880. " 'Match_06_long_fromB_P>5GeV_p': [0.9376291615002067],\n",
  881. " 'Match_06_long_fromB_P>5GeV_pt': [0.9376291615002067],\n",
  882. " 'Match_06_long_fromB_P>5GeV_phi': [0.9376291615002067],\n",
  883. " 'Match_06_long_fromB_P>5GeV_eta': [0.9376291615002067],\n",
  884. " 'Match_06_long_fromB_P>5GeV_nPV': [0.9376291615002067],\n",
  885. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_p': [0.9395112730376988],\n",
  886. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': [0.9395112730376988],\n",
  887. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': [0.9395112730376988],\n",
  888. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': [0.9395112730376988],\n",
  889. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': [0.9395112730376988],\n",
  890. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': [0.9404785566852687],\n",
  891. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': [0.9404785566852687],\n",
  892. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': [0.9404785566852687],\n",
  893. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': [0.9404785566852687],\n",
  894. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': [0.9404785566852687],\n",
  895. " 'BestLong_01_long_p': None,\n",
  896. " 'BestLong_01_long_pt': None,\n",
  897. " 'BestLong_01_long_phi': None,\n",
  898. " 'BestLong_01_long_eta': None,\n",
  899. " 'BestLong_01_long_nPV': None,\n",
  900. " 'BestLong_02_long_P>5GeV_p': None,\n",
  901. " 'BestLong_02_long_P>5GeV_pt': None,\n",
  902. " 'BestLong_02_long_P>5GeV_phi': None,\n",
  903. " 'BestLong_02_long_P>5GeV_eta': None,\n",
  904. " 'BestLong_02_long_P>5GeV_nPV': None,\n",
  905. " 'BestLong_03_long_strange_p': None,\n",
  906. " 'BestLong_03_long_strange_pt': None,\n",
  907. " 'BestLong_03_long_strange_phi': None,\n",
  908. " 'BestLong_03_long_strange_eta': None,\n",
  909. " 'BestLong_03_long_strange_nPV': None,\n",
  910. " 'BestLong_04_long_strange_P>5GeV_p': None,\n",
  911. " 'BestLong_04_long_strange_P>5GeV_pt': None,\n",
  912. " 'BestLong_04_long_strange_P>5GeV_phi': None,\n",
  913. " 'BestLong_04_long_strange_P>5GeV_eta': None,\n",
  914. " 'BestLong_04_long_strange_P>5GeV_nPV': None,\n",
  915. " 'BestLong_05_long_fromB_p': None,\n",
  916. " 'BestLong_05_long_fromB_pt': None,\n",
  917. " 'BestLong_05_long_fromB_phi': None,\n",
  918. " 'BestLong_05_long_fromB_eta': None,\n",
  919. " 'BestLong_05_long_fromB_nPV': None,\n",
  920. " 'BestLong_06_long_fromB_P>5GeV_p': None,\n",
  921. " 'BestLong_06_long_fromB_P>5GeV_pt': None,\n",
  922. " 'BestLong_06_long_fromB_P>5GeV_phi': None,\n",
  923. " 'BestLong_06_long_fromB_P>5GeV_eta': None,\n",
  924. " 'BestLong_06_long_fromB_P>5GeV_nPV': None,\n",
  925. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  926. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  927. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  928. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  929. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  930. " 'Seed_01_hasT_p': None,\n",
  931. " 'Seed_01_hasT_pt': None,\n",
  932. " 'Seed_01_hasT_phi': None,\n",
  933. " 'Seed_01_hasT_eta': None,\n",
  934. " 'Seed_01_hasT_nPV': None,\n",
  935. " 'Seed_02_long_p': None,\n",
  936. " 'Seed_02_long_pt': None,\n",
  937. " 'Seed_02_long_phi': None,\n",
  938. " 'Seed_02_long_eta': None,\n",
  939. " 'Seed_02_long_nPV': None,\n",
  940. " 'Seed_03_long_P>5GeV_p': None,\n",
  941. " 'Seed_03_long_P>5GeV_pt': None,\n",
  942. " 'Seed_03_long_P>5GeV_phi': None,\n",
  943. " 'Seed_03_long_P>5GeV_eta': None,\n",
  944. " 'Seed_03_long_P>5GeV_nPV': None,\n",
  945. " 'Seed_04_long_fromB_p': None,\n",
  946. " 'Seed_04_long_fromB_pt': None,\n",
  947. " 'Seed_04_long_fromB_phi': None,\n",
  948. " 'Seed_04_long_fromB_eta': None,\n",
  949. " 'Seed_04_long_fromB_nPV': None,\n",
  950. " 'Seed_05_long_fromB_P>5GeV_p': None,\n",
  951. " 'Seed_05_long_fromB_P>5GeV_pt': None,\n",
  952. " 'Seed_05_long_fromB_P>5GeV_phi': None,\n",
  953. " 'Seed_05_long_fromB_P>5GeV_eta': None,\n",
  954. " 'Seed_05_long_fromB_P>5GeV_nPV': None,\n",
  955. " 'Seed_08_noVelo+UT+T_strange_p': None,\n",
  956. " 'Seed_08_noVelo+UT+T_strange_pt': None,\n",
  957. " 'Seed_08_noVelo+UT+T_strange_phi': None,\n",
  958. " 'Seed_08_noVelo+UT+T_strange_eta': None,\n",
  959. " 'Seed_08_noVelo+UT+T_strange_nPV': None,\n",
  960. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_p': None,\n",
  961. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_pt': None,\n",
  962. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_phi': None,\n",
  963. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_eta': None,\n",
  964. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_nPV': None,\n",
  965. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_p': None,\n",
  966. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_pt': None,\n",
  967. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_phi': None,\n",
  968. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_eta': None,\n",
  969. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_nPV': None},\n",
  970. " {'Forward_01_long_p': None,\n",
  971. " 'Forward_01_long_pt': None,\n",
  972. " 'Forward_01_long_phi': None,\n",
  973. " 'Forward_01_long_eta': None,\n",
  974. " 'Forward_01_long_nPV': None,\n",
  975. " 'Forward_02_long_P>5GeV_p': None,\n",
  976. " 'Forward_02_long_P>5GeV_pt': None,\n",
  977. " 'Forward_02_long_P>5GeV_phi': None,\n",
  978. " 'Forward_02_long_P>5GeV_eta': None,\n",
  979. " 'Forward_02_long_P>5GeV_nPV': None,\n",
  980. " 'Forward_03_long_strange_p': None,\n",
  981. " 'Forward_03_long_strange_pt': None,\n",
  982. " 'Forward_03_long_strange_phi': None,\n",
  983. " 'Forward_03_long_strange_eta': None,\n",
  984. " 'Forward_03_long_strange_nPV': None,\n",
  985. " 'Forward_04_long_strange_P>5GeV_p': None,\n",
  986. " 'Forward_04_long_strange_P>5GeV_pt': None,\n",
  987. " 'Forward_04_long_strange_P>5GeV_phi': None,\n",
  988. " 'Forward_04_long_strange_P>5GeV_eta': None,\n",
  989. " 'Forward_04_long_strange_P>5GeV_nPV': None,\n",
  990. " 'Forward_05_long_fromB_p': None,\n",
  991. " 'Forward_05_long_fromB_pt': None,\n",
  992. " 'Forward_05_long_fromB_phi': None,\n",
  993. " 'Forward_05_long_fromB_eta': None,\n",
  994. " 'Forward_05_long_fromB_nPV': None,\n",
  995. " 'Forward_06_long_fromB_P>5GeV_p': None,\n",
  996. " 'Forward_06_long_fromB_P>5GeV_pt': None,\n",
  997. " 'Forward_06_long_fromB_P>5GeV_phi': None,\n",
  998. " 'Forward_06_long_fromB_P>5GeV_eta': None,\n",
  999. " 'Forward_06_long_fromB_P>5GeV_nPV': None,\n",
  1000. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1001. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1002. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1003. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1004. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1005. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1006. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1007. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1008. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1009. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1010. " 'Match_01_long_p': None,\n",
  1011. " 'Match_01_long_pt': None,\n",
  1012. " 'Match_01_long_phi': None,\n",
  1013. " 'Match_01_long_eta': None,\n",
  1014. " 'Match_01_long_nPV': None,\n",
  1015. " 'Match_02_long_P>5GeV_p': None,\n",
  1016. " 'Match_02_long_P>5GeV_pt': None,\n",
  1017. " 'Match_02_long_P>5GeV_phi': None,\n",
  1018. " 'Match_02_long_P>5GeV_eta': None,\n",
  1019. " 'Match_02_long_P>5GeV_nPV': None,\n",
  1020. " 'Match_03_long_strange_p': None,\n",
  1021. " 'Match_03_long_strange_pt': None,\n",
  1022. " 'Match_03_long_strange_phi': None,\n",
  1023. " 'Match_03_long_strange_eta': None,\n",
  1024. " 'Match_03_long_strange_nPV': None,\n",
  1025. " 'Match_04_long_strange_P>5GeV_p': None,\n",
  1026. " 'Match_04_long_strange_P>5GeV_pt': None,\n",
  1027. " 'Match_04_long_strange_P>5GeV_phi': None,\n",
  1028. " 'Match_04_long_strange_P>5GeV_eta': None,\n",
  1029. " 'Match_04_long_strange_P>5GeV_nPV': None,\n",
  1030. " 'Match_05_long_fromB_p': None,\n",
  1031. " 'Match_05_long_fromB_pt': None,\n",
  1032. " 'Match_05_long_fromB_phi': None,\n",
  1033. " 'Match_05_long_fromB_eta': None,\n",
  1034. " 'Match_05_long_fromB_nPV': None,\n",
  1035. " 'Match_06_long_fromB_P>5GeV_p': None,\n",
  1036. " 'Match_06_long_fromB_P>5GeV_pt': None,\n",
  1037. " 'Match_06_long_fromB_P>5GeV_phi': None,\n",
  1038. " 'Match_06_long_fromB_P>5GeV_eta': None,\n",
  1039. " 'Match_06_long_fromB_P>5GeV_nPV': None,\n",
  1040. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1041. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1042. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1043. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1044. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1045. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1046. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1047. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1048. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1049. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1050. " 'BestLong_01_long_p': [0.8798947662383141],\n",
  1051. " 'BestLong_01_long_pt': [0.8798947662383141],\n",
  1052. " 'BestLong_01_long_phi': [0.8798947662383141],\n",
  1053. " 'BestLong_01_long_eta': [0.8798947662383141],\n",
  1054. " 'BestLong_01_long_nPV': [0.8798947662383141],\n",
  1055. " 'BestLong_02_long_P>5GeV_p': [0.9180836129025216],\n",
  1056. " 'BestLong_02_long_P>5GeV_pt': [0.9180836129025216],\n",
  1057. " 'BestLong_02_long_P>5GeV_phi': [0.9180836129025216],\n",
  1058. " 'BestLong_02_long_P>5GeV_eta': [0.9180836129025216],\n",
  1059. " 'BestLong_02_long_P>5GeV_nPV': [0.9180836129025216],\n",
  1060. " 'BestLong_03_long_strange_p': [0.8013060918340725],\n",
  1061. " 'BestLong_03_long_strange_pt': [0.8013060918340725],\n",
  1062. " 'BestLong_03_long_strange_phi': [0.8013060918340725],\n",
  1063. " 'BestLong_03_long_strange_eta': [0.8013060918340725],\n",
  1064. " 'BestLong_03_long_strange_nPV': [0.8013060918340725],\n",
  1065. " 'BestLong_04_long_strange_P>5GeV_p': [0.8679354783647691],\n",
  1066. " 'BestLong_04_long_strange_P>5GeV_pt': [0.8679354783647691],\n",
  1067. " 'BestLong_04_long_strange_P>5GeV_phi': [0.8679354783647691],\n",
  1068. " 'BestLong_04_long_strange_P>5GeV_eta': [0.8679354783647691],\n",
  1069. " 'BestLong_04_long_strange_P>5GeV_nPV': [0.8679354783647691],\n",
  1070. " 'BestLong_05_long_fromB_p': [0.9091900736296701],\n",
  1071. " 'BestLong_05_long_fromB_pt': [0.9091900736296701],\n",
  1072. " 'BestLong_05_long_fromB_phi': [0.9091900736296701],\n",
  1073. " 'BestLong_05_long_fromB_eta': [0.9091900736296701],\n",
  1074. " 'BestLong_05_long_fromB_nPV': [0.9091900736296701],\n",
  1075. " 'BestLong_06_long_fromB_P>5GeV_p': [0.9379224831006759],\n",
  1076. " 'BestLong_06_long_fromB_P>5GeV_pt': [0.9379224831006759],\n",
  1077. " 'BestLong_06_long_fromB_P>5GeV_phi': [0.9379224831006759],\n",
  1078. " 'BestLong_06_long_fromB_P>5GeV_eta': [0.9379224831006759],\n",
  1079. " 'BestLong_06_long_fromB_P>5GeV_nPV': [0.9379224831006759],\n",
  1080. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_p': [0.9435662128995869],\n",
  1081. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': [0.9435662128995869],\n",
  1082. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': [0.9435662128995869],\n",
  1083. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': [0.9435662128995869],\n",
  1084. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': [0.9435662128995869],\n",
  1085. " 'Seed_01_hasT_p': None,\n",
  1086. " 'Seed_01_hasT_pt': None,\n",
  1087. " 'Seed_01_hasT_phi': None,\n",
  1088. " 'Seed_01_hasT_eta': None,\n",
  1089. " 'Seed_01_hasT_nPV': None,\n",
  1090. " 'Seed_02_long_p': None,\n",
  1091. " 'Seed_02_long_pt': None,\n",
  1092. " 'Seed_02_long_phi': None,\n",
  1093. " 'Seed_02_long_eta': None,\n",
  1094. " 'Seed_02_long_nPV': None,\n",
  1095. " 'Seed_03_long_P>5GeV_p': None,\n",
  1096. " 'Seed_03_long_P>5GeV_pt': None,\n",
  1097. " 'Seed_03_long_P>5GeV_phi': None,\n",
  1098. " 'Seed_03_long_P>5GeV_eta': None,\n",
  1099. " 'Seed_03_long_P>5GeV_nPV': None,\n",
  1100. " 'Seed_04_long_fromB_p': None,\n",
  1101. " 'Seed_04_long_fromB_pt': None,\n",
  1102. " 'Seed_04_long_fromB_phi': None,\n",
  1103. " 'Seed_04_long_fromB_eta': None,\n",
  1104. " 'Seed_04_long_fromB_nPV': None,\n",
  1105. " 'Seed_05_long_fromB_P>5GeV_p': None,\n",
  1106. " 'Seed_05_long_fromB_P>5GeV_pt': None,\n",
  1107. " 'Seed_05_long_fromB_P>5GeV_phi': None,\n",
  1108. " 'Seed_05_long_fromB_P>5GeV_eta': None,\n",
  1109. " 'Seed_05_long_fromB_P>5GeV_nPV': None,\n",
  1110. " 'Seed_08_noVelo+UT+T_strange_p': None,\n",
  1111. " 'Seed_08_noVelo+UT+T_strange_pt': None,\n",
  1112. " 'Seed_08_noVelo+UT+T_strange_phi': None,\n",
  1113. " 'Seed_08_noVelo+UT+T_strange_eta': None,\n",
  1114. " 'Seed_08_noVelo+UT+T_strange_nPV': None,\n",
  1115. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_p': None,\n",
  1116. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_pt': None,\n",
  1117. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_phi': None,\n",
  1118. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_eta': None,\n",
  1119. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_nPV': None,\n",
  1120. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_p': None,\n",
  1121. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_pt': None,\n",
  1122. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_phi': None,\n",
  1123. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_eta': None,\n",
  1124. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_nPV': None},\n",
  1125. " {'Forward_01_long_p': None,\n",
  1126. " 'Forward_01_long_pt': None,\n",
  1127. " 'Forward_01_long_phi': None,\n",
  1128. " 'Forward_01_long_eta': None,\n",
  1129. " 'Forward_01_long_nPV': None,\n",
  1130. " 'Forward_02_long_P>5GeV_p': None,\n",
  1131. " 'Forward_02_long_P>5GeV_pt': None,\n",
  1132. " 'Forward_02_long_P>5GeV_phi': None,\n",
  1133. " 'Forward_02_long_P>5GeV_eta': None,\n",
  1134. " 'Forward_02_long_P>5GeV_nPV': None,\n",
  1135. " 'Forward_03_long_strange_p': None,\n",
  1136. " 'Forward_03_long_strange_pt': None,\n",
  1137. " 'Forward_03_long_strange_phi': None,\n",
  1138. " 'Forward_03_long_strange_eta': None,\n",
  1139. " 'Forward_03_long_strange_nPV': None,\n",
  1140. " 'Forward_04_long_strange_P>5GeV_p': None,\n",
  1141. " 'Forward_04_long_strange_P>5GeV_pt': None,\n",
  1142. " 'Forward_04_long_strange_P>5GeV_phi': None,\n",
  1143. " 'Forward_04_long_strange_P>5GeV_eta': None,\n",
  1144. " 'Forward_04_long_strange_P>5GeV_nPV': None,\n",
  1145. " 'Forward_05_long_fromB_p': None,\n",
  1146. " 'Forward_05_long_fromB_pt': None,\n",
  1147. " 'Forward_05_long_fromB_phi': None,\n",
  1148. " 'Forward_05_long_fromB_eta': None,\n",
  1149. " 'Forward_05_long_fromB_nPV': None,\n",
  1150. " 'Forward_06_long_fromB_P>5GeV_p': None,\n",
  1151. " 'Forward_06_long_fromB_P>5GeV_pt': None,\n",
  1152. " 'Forward_06_long_fromB_P>5GeV_phi': None,\n",
  1153. " 'Forward_06_long_fromB_P>5GeV_eta': None,\n",
  1154. " 'Forward_06_long_fromB_P>5GeV_nPV': None,\n",
  1155. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1156. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1157. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1158. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1159. " 'Forward_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1160. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1161. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1162. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1163. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1164. " 'Forward_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1165. " 'Match_01_long_p': None,\n",
  1166. " 'Match_01_long_pt': None,\n",
  1167. " 'Match_01_long_phi': None,\n",
  1168. " 'Match_01_long_eta': None,\n",
  1169. " 'Match_01_long_nPV': None,\n",
  1170. " 'Match_02_long_P>5GeV_p': None,\n",
  1171. " 'Match_02_long_P>5GeV_pt': None,\n",
  1172. " 'Match_02_long_P>5GeV_phi': None,\n",
  1173. " 'Match_02_long_P>5GeV_eta': None,\n",
  1174. " 'Match_02_long_P>5GeV_nPV': None,\n",
  1175. " 'Match_03_long_strange_p': None,\n",
  1176. " 'Match_03_long_strange_pt': None,\n",
  1177. " 'Match_03_long_strange_phi': None,\n",
  1178. " 'Match_03_long_strange_eta': None,\n",
  1179. " 'Match_03_long_strange_nPV': None,\n",
  1180. " 'Match_04_long_strange_P>5GeV_p': None,\n",
  1181. " 'Match_04_long_strange_P>5GeV_pt': None,\n",
  1182. " 'Match_04_long_strange_P>5GeV_phi': None,\n",
  1183. " 'Match_04_long_strange_P>5GeV_eta': None,\n",
  1184. " 'Match_04_long_strange_P>5GeV_nPV': None,\n",
  1185. " 'Match_05_long_fromB_p': None,\n",
  1186. " 'Match_05_long_fromB_pt': None,\n",
  1187. " 'Match_05_long_fromB_phi': None,\n",
  1188. " 'Match_05_long_fromB_eta': None,\n",
  1189. " 'Match_05_long_fromB_nPV': None,\n",
  1190. " 'Match_06_long_fromB_P>5GeV_p': None,\n",
  1191. " 'Match_06_long_fromB_P>5GeV_pt': None,\n",
  1192. " 'Match_06_long_fromB_P>5GeV_phi': None,\n",
  1193. " 'Match_06_long_fromB_P>5GeV_eta': None,\n",
  1194. " 'Match_06_long_fromB_P>5GeV_nPV': None,\n",
  1195. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1196. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1197. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1198. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1199. " 'Match_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1200. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1201. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1202. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1203. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1204. " 'Match_11_UT_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1205. " 'BestLong_01_long_p': None,\n",
  1206. " 'BestLong_01_long_pt': None,\n",
  1207. " 'BestLong_01_long_phi': None,\n",
  1208. " 'BestLong_01_long_eta': None,\n",
  1209. " 'BestLong_01_long_nPV': None,\n",
  1210. " 'BestLong_02_long_P>5GeV_p': None,\n",
  1211. " 'BestLong_02_long_P>5GeV_pt': None,\n",
  1212. " 'BestLong_02_long_P>5GeV_phi': None,\n",
  1213. " 'BestLong_02_long_P>5GeV_eta': None,\n",
  1214. " 'BestLong_02_long_P>5GeV_nPV': None,\n",
  1215. " 'BestLong_03_long_strange_p': None,\n",
  1216. " 'BestLong_03_long_strange_pt': None,\n",
  1217. " 'BestLong_03_long_strange_phi': None,\n",
  1218. " 'BestLong_03_long_strange_eta': None,\n",
  1219. " 'BestLong_03_long_strange_nPV': None,\n",
  1220. " 'BestLong_04_long_strange_P>5GeV_p': None,\n",
  1221. " 'BestLong_04_long_strange_P>5GeV_pt': None,\n",
  1222. " 'BestLong_04_long_strange_P>5GeV_phi': None,\n",
  1223. " 'BestLong_04_long_strange_P>5GeV_eta': None,\n",
  1224. " 'BestLong_04_long_strange_P>5GeV_nPV': None,\n",
  1225. " 'BestLong_05_long_fromB_p': None,\n",
  1226. " 'BestLong_05_long_fromB_pt': None,\n",
  1227. " 'BestLong_05_long_fromB_phi': None,\n",
  1228. " 'BestLong_05_long_fromB_eta': None,\n",
  1229. " 'BestLong_05_long_fromB_nPV': None,\n",
  1230. " 'BestLong_06_long_fromB_P>5GeV_p': None,\n",
  1231. " 'BestLong_06_long_fromB_P>5GeV_pt': None,\n",
  1232. " 'BestLong_06_long_fromB_P>5GeV_phi': None,\n",
  1233. " 'BestLong_06_long_fromB_P>5GeV_eta': None,\n",
  1234. " 'BestLong_06_long_fromB_P>5GeV_nPV': None,\n",
  1235. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_p': None,\n",
  1236. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_pt': None,\n",
  1237. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_phi': None,\n",
  1238. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_eta': None,\n",
  1239. " 'BestLong_10_long_fromB_P>3GeV_Pt>0.5GeV_nPV': None,\n",
  1240. " 'Seed_01_hasT_p': [0.8301846485044814],\n",
  1241. " 'Seed_01_hasT_pt': [0.8301846485044814],\n",
  1242. " 'Seed_01_hasT_phi': [0.8301846485044814],\n",
  1243. " 'Seed_01_hasT_eta': [0.8301846485044814],\n",
  1244. " 'Seed_01_hasT_nPV': [0.8301846485044814],\n",
  1245. " 'Seed_02_long_p': [0.9333472226531851],\n",
  1246. " 'Seed_02_long_pt': [0.9333472226531851],\n",
  1247. " 'Seed_02_long_phi': [0.9333472226531851],\n",
  1248. " 'Seed_02_long_eta': [0.9333472226531851],\n",
  1249. " 'Seed_02_long_nPV': [0.9333472226531851],\n",
  1250. " 'Seed_03_long_P>5GeV_p': [0.9665492453337299],\n",
  1251. " 'Seed_03_long_P>5GeV_pt': [0.9665492453337299],\n",
  1252. " 'Seed_03_long_P>5GeV_phi': [0.9665492453337299],\n",
  1253. " 'Seed_03_long_P>5GeV_eta': [0.9665492453337299],\n",
  1254. " 'Seed_03_long_P>5GeV_nPV': [0.9665492453337299],\n",
  1255. " 'Seed_04_long_fromB_p': [0.9503378480744175],\n",
  1256. " 'Seed_04_long_fromB_pt': [0.9503378480744175],\n",
  1257. " 'Seed_04_long_fromB_phi': [0.9503378480744175],\n",
  1258. " 'Seed_04_long_fromB_eta': [0.9503378480744175],\n",
  1259. " 'Seed_04_long_fromB_nPV': [0.9503378480744175],\n",
  1260. " 'Seed_05_long_fromB_P>5GeV_p': [0.9703078543524926],\n",
  1261. " 'Seed_05_long_fromB_P>5GeV_pt': [0.9703078543524926],\n",
  1262. " 'Seed_05_long_fromB_P>5GeV_phi': [0.9703078543524926],\n",
  1263. " 'Seed_05_long_fromB_P>5GeV_eta': [0.9703078543524926],\n",
  1264. " 'Seed_05_long_fromB_P>5GeV_nPV': [0.9703078543524926],\n",
  1265. " 'Seed_08_noVelo+UT+T_strange_p': [0.9160309601840876],\n",
  1266. " 'Seed_08_noVelo+UT+T_strange_pt': [0.9160309601840876],\n",
  1267. " 'Seed_08_noVelo+UT+T_strange_phi': [0.9160309601840876],\n",
  1268. " 'Seed_08_noVelo+UT+T_strange_eta': [0.9160309601840876],\n",
  1269. " 'Seed_08_noVelo+UT+T_strange_nPV': [0.9160309601840876],\n",
  1270. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_p': [0.9642032180145458],\n",
  1271. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_pt': [0.9642032180145458],\n",
  1272. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_phi': [0.9642032180145458],\n",
  1273. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_eta': [0.9642032180145458],\n",
  1274. " 'Seed_09_noVelo+UT+T_strange_P>5GeV_nPV': [0.9642032180145458],\n",
  1275. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_p': [0.9665521605496293],\n",
  1276. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_pt': [0.9665521605496293],\n",
  1277. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_phi': [0.9665521605496293],\n",
  1278. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_eta': [0.9665521605496293],\n",
  1279. " 'Seed_12_noVelo+UT+T_SfromDB_P>5GeV_nPV': [0.9665521605496293]}]"
  1280. ]
  1281. },
  1282. "execution_count": 8,
  1283. "metadata": {},
  1284. "output_type": "execute_result"
  1285. }
  1286. ],
  1287. "source": [
  1288. "effdata.tolist()"
  1289. ]
  1290. },
  1291. {
  1292. "cell_type": "code",
  1293. "execution_count": 78,
  1294. "metadata": {},
  1295. "outputs": [
  1296. {
  1297. "name": "stdout",
  1298. "output_type": "stream",
  1299. "text": [
  1300. "[[{'8': [8], '9': [9]}, {'8': [8], '9': [9]}],\n",
  1301. " [{'8': [8], '9': [9]}, {'8': [8], '9': [9]}],\n",
  1302. " [{'8': [8], '9': [9]}, {'8': [8], '9': [9]}],\n",
  1303. " [{'8': [8], '9': [9]}, {'8': [8], '9': [9]}]]\n"
  1304. ]
  1305. }
  1306. ],
  1307. "source": [
  1308. "arr = ak.ArrayBuilder()\n",
  1309. "\n",
  1310. "for i in range(4):\n",
  1311. " arr.begin_list()\n",
  1312. " for j in range(5,7):\n",
  1313. " arr.begin_record()\n",
  1314. " for k in range(8,10):\n",
  1315. " arr.field(str(k))\n",
  1316. " arr.begin_list()\n",
  1317. " arr.append(k)\n",
  1318. " arr.end_list()\n",
  1319. " arr.end_record()\n",
  1320. " arr.end_list()\n",
  1321. "\n",
  1322. "arr = ak.Array(arr)\n",
  1323. "arr.show()"
  1324. ]
  1325. },
  1326. {
  1327. "cell_type": "markdown",
  1328. "metadata": {},
  1329. "source": [
  1330. "### try reading data"
  1331. ]
  1332. },
  1333. {
  1334. "cell_type": "code",
  1335. "execution_count": 9,
  1336. "metadata": {},
  1337. "outputs": [],
  1338. "source": [
  1339. "upFile = uproot.open(\"/work/cetin/LHCb/stack/data/efficiency_plots.root\")\n",
  1340. "inFile = TFile.Open(\"/work/cetin/LHCb/stack/data/efficiency_plots.root\")"
  1341. ]
  1342. },
  1343. {
  1344. "cell_type": "code",
  1345. "execution_count": 10,
  1346. "metadata": {},
  1347. "outputs": [
  1348. {
  1349. "data": {
  1350. "text/plain": [
  1351. "{'efficiency_p;1': 'TCanvas',\n",
  1352. " 'efficiency_pt;1': 'TCanvas',\n",
  1353. " 'efficiency_phi;1': 'TCanvas',\n",
  1354. " 'efficiency_eta;1': 'TCanvas',\n",
  1355. " 'efficiency_nPV;1': 'TCanvas'}"
  1356. ]
  1357. },
  1358. "execution_count": 10,
  1359. "metadata": {},
  1360. "output_type": "execute_result"
  1361. }
  1362. ],
  1363. "source": [
  1364. "upFile[\"BestLong/01_long;1\"].classnames()"
  1365. ]
  1366. },
  1367. {
  1368. "cell_type": "code",
  1369. "execution_count": 31,
  1370. "metadata": {},
  1371. "outputs": [
  1372. {
  1373. "ename": "AttributeError",
  1374. "evalue": "'bool' object has no attribute 'Get'",
  1375. "output_type": "error",
  1376. "traceback": [
  1377. "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
  1378. "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
  1379. "\u001b[1;32m/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb Cell 14\u001b[0m line \u001b[0;36m3\n\u001b[1;32m <a href='vscode-notebook-cell://ssh-remote%2Blhcba2/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb#X16sdnNjb2RlLXJlbW90ZQ%3D%3D?line=0'>1</a>\u001b[0m tree1 \u001b[39m=\u001b[39m inFile\u001b[39m.\u001b[39mCd(\u001b[39m\"\u001b[39m\u001b[39mBestLong\u001b[39m\u001b[39m\"\u001b[39m)\n\u001b[1;32m <a href='vscode-notebook-cell://ssh-remote%2Blhcba2/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb#X16sdnNjb2RlLXJlbW90ZQ%3D%3D?line=1'>2</a>\u001b[0m tree2 \u001b[39m=\u001b[39m inFile\u001b[39m.\u001b[39mGet(\u001b[39m\"\u001b[39m\u001b[39mSeed/02_long\u001b[39m\u001b[39m\"\u001b[39m)\n\u001b[0;32m----> <a href='vscode-notebook-cell://ssh-remote%2Blhcba2/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb#X16sdnNjb2RlLXJlbW90ZQ%3D%3D?line=2'>3</a>\u001b[0m c1 \u001b[39m=\u001b[39m tree1\u001b[39m.\u001b[39;49mGet(\u001b[39m\"\u001b[39m\u001b[39mefficiency_p;1\u001b[39m\u001b[39m\"\u001b[39m)\u001b[39m.\u001b[39mClone()\n\u001b[1;32m <a href='vscode-notebook-cell://ssh-remote%2Blhcba2/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb#X16sdnNjb2RlLXJlbW90ZQ%3D%3D?line=3'>4</a>\u001b[0m c2 \u001b[39m=\u001b[39m tree2\u001b[39m.\u001b[39mGet(\u001b[39m\"\u001b[39m\u001b[39mefficiency_p;1\u001b[39m\u001b[39m\"\u001b[39m)\u001b[39m.\u001b[39mClone()\n\u001b[1;32m <a href='vscode-notebook-cell://ssh-remote%2Blhcba2/work/cetin/LHCb/stack/Moore/Hlt/RecoConf/scripts/Task.ipynb#X16sdnNjb2RlLXJlbW90ZQ%3D%3D?line=5'>6</a>\u001b[0m c \u001b[39m=\u001b[39m tree1\u001b[39m.\u001b[39mCd(\u001b[39m\"\u001b[39m\u001b[39m01_long\u001b[39m\u001b[39m\"\u001b[39m)\n",
  1380. "\u001b[0;31mAttributeError\u001b[0m: 'bool' object has no attribute 'Get'"
  1381. ]
  1382. },
  1383. {
  1384. "name": "stderr",
  1385. "output_type": "stream",
  1386. "text": [
  1387. "Error in <TDirectoryFile::Cd>: Unknown directory BestLong\n"
  1388. ]
  1389. }
  1390. ],
  1391. "source": [
  1392. "tree1 = inFile.Get(\"BestLong/01_long\")\n",
  1393. "tree2 = inFile.Get(\"Seed/02_long\")\n",
  1394. "c1 = tree1.Get(\"efficiency_p;1\").Clone()\n",
  1395. "c2 = tree2.Get(\"efficiency_p;1\").Clone()\n",
  1396. "\n",
  1397. "\n"
  1398. ]
  1399. },
  1400. {
  1401. "cell_type": "code",
  1402. "execution_count": 251,
  1403. "metadata": {},
  1404. "outputs": [
  1405. {
  1406. "name": "stdout",
  1407. "output_type": "stream",
  1408. "text": [
  1409. "Canvas Name=efficiency_p Title=efficiency_p, Long, 2 <#eta < 5 Option=\n",
  1410. " TCanvas fXlowNDC=0 fYlowNDC=0 fWNDC=1 fHNDC=1 Name= efficiency_p Title= efficiency_p, Long, 2 <#eta < 5 Option=\n",
  1411. " OBJ: TList\tTList\tDoubly linked list : 0\n",
  1412. " TFrame X1= -600.000000 Y1=0.000000 X2=51100.000000 Y2=1.050000\n",
  1413. " OBJ: TMultiGraph\t\t : 1 at: 0x563287220c50\n",
  1414. " OBJ: TH1D\th_numerator_notElectrons\tp distribution, not e^{-} : 1 at: 0x5632879f5320\n",
  1415. " OBJ: TH1D\th_numerator_notElectrons\tp distribution, e^{-} : 1 at: 0x563287d3a6b0\n",
  1416. " OBJ: TLegend\tTPave \tX1= 25930.263182 Y1=0.318987 X2=58582.894927 Y2=0.731013\n",
  1417. " OBJ: TLegend\tTPave \tX1= 25930.263182 Y1=0.318987 X2=58582.894927 Y2=0.731013\n",
  1418. " OBJ: TGraphAsymmErrors\tEffChecker\tEffChecker not e^{-} : 1 at: 0x563287d374e0\n",
  1419. " OBJ: TGraphAsymmErrors\tEffChecker\tEffChecker e^{-} : 1 at: 0x563287cd4630\n",
  1420. " Text X=0.540000 Y=0.350000 Text=Long, 2 <#eta < 5\n",
  1421. " TGaxis X1=51100.000000 Y1=0.000000 X2=51100.000000 Y2=1.050000\n",
  1422. " OBJ: TH1F\t_copy\t : 1 at: 0x563287d3b260\n"
  1423. ]
  1424. }
  1425. ],
  1426. "source": [
  1427. "ep = inFile.Get(\"BestLong/01_long/efficiency_p;1/EffChecker;2:p\")\n",
  1428. "ep.Get"
  1429. ]
  1430. },
  1431. {
  1432. "cell_type": "code",
  1433. "execution_count": null,
  1434. "metadata": {},
  1435. "outputs": [],
  1436. "source": [
  1437. "#c1.Draw()\n",
  1438. "c2.Draw()"
  1439. ]
  1440. },
  1441. {
  1442. "cell_type": "code",
  1443. "execution_count": 203,
  1444. "metadata": {},
  1445. "outputs": [
  1446. {
  1447. "name": "stdout",
  1448. "output_type": "stream",
  1449. "text": [
  1450. "Canvas Name=efficiency_p Title=efficiency_p, Long, 2 <#eta < 5 Option=\n",
  1451. " TCanvas fXlowNDC=0 fYlowNDC=0 fWNDC=1 fHNDC=1 Name= efficiency_p Title= efficiency_p, Long, 2 <#eta < 5 Option=\n",
  1452. " OBJ: TList\tTList\tDoubly linked list : 0\n",
  1453. " TFrame X1= -600.000000 Y1=0.000000 X2=51100.000000 Y2=1.050000\n",
  1454. " OBJ: TMultiGraph\t\t : 1 at: 0x56328666c520\n",
  1455. " OBJ: TH1D\th_numerator_notElectrons\tp distribution, not e^{-} : 1 at: 0x563286cadc10\n",
  1456. " OBJ: TH1D\th_numerator_notElectrons\tp distribution, e^{-} : 1 at: 0x563286cae7c0\n",
  1457. " OBJ: TLegend\tTPave \tX1= 25930.263182 Y1=0.318987 X2=58582.894927 Y2=0.731013\n",
  1458. " OBJ: TLegend\tTPave \tX1= 25930.263182 Y1=0.318987 X2=58582.894927 Y2=0.731013\n",
  1459. " OBJ: TGraphAsymmErrors\tEffChecker\tEffChecker not e^{-} : 1 at: 0x563287222b00\n",
  1460. " OBJ: TGraphAsymmErrors\tEffChecker\tEffChecker e^{-} : 1 at: 0x563287b37170\n",
  1461. " Text X=0.540000 Y=0.350000 Text=Long, 2 <#eta < 5\n",
  1462. " TGaxis X1=51100.000000 Y1=0.000000 X2=51100.000000 Y2=1.050000\n",
  1463. " OBJ: TH1F\t_copy\t : 1 at: 0x563286caf970\n"
  1464. ]
  1465. }
  1466. ],
  1467. "source": [
  1468. "data = c1.getf\n"
  1469. ]
  1470. },
  1471. {
  1472. "cell_type": "code",
  1473. "execution_count": 215,
  1474. "metadata": {},
  1475. "outputs": [
  1476. {
  1477. "data": {
  1478. "text/plain": [
  1479. "<cppyy.gbl.TH1F object at 0x563287230640>"
  1480. ]
  1481. },
  1482. "execution_count": 215,
  1483. "metadata": {},
  1484. "output_type": "execute_result"
  1485. }
  1486. ],
  1487. "source": []
  1488. },
  1489. {
  1490. "cell_type": "code",
  1491. "execution_count": null,
  1492. "metadata": {},
  1493. "outputs": [],
  1494. "source": []
  1495. },
  1496. {
  1497. "cell_type": "code",
  1498. "execution_count": null,
  1499. "metadata": {},
  1500. "outputs": [],
  1501. "source": []
  1502. },
  1503. {
  1504. "cell_type": "code",
  1505. "execution_count": null,
  1506. "metadata": {},
  1507. "outputs": [],
  1508. "source": []
  1509. }
  1510. ],
  1511. "metadata": {
  1512. "kernelspec": {
  1513. "display_name": "Python 3",
  1514. "language": "python",
  1515. "name": "python3"
  1516. },
  1517. "language_info": {
  1518. "codemirror_mode": {
  1519. "name": "ipython",
  1520. "version": 3
  1521. },
  1522. "file_extension": ".py",
  1523. "mimetype": "text/x-python",
  1524. "name": "python",
  1525. "nbconvert_exporter": "python",
  1526. "pygments_lexer": "ipython3",
  1527. "version": "3.10.12"
  1528. }
  1529. },
  1530. "nbformat": 4,
  1531. "nbformat_minor": 2
  1532. }