main.tex 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333
  1. % rubber: module pdftex
  2. \documentclass[english,aspectratio=43,8pt]{beamer}
  3. \usepackage{graphicx}
  4. \usepackage{amssymb}
  5. \usepackage{booktabs}
  6. \usepackage{siunitx}
  7. \usepackage{subcaption}
  8. \usepackage{marvosym}
  9. \usepackage{verbatim}
  10. \usepackage[normalem]{ulem} % Needed for /sout
  11. \newcommand{\pb}{\si{\pico\barn}}%
  12. \newcommand{\fb}{\si{\femto\barn}}%
  13. \newcommand{\invfb}{\si{\per\femto\barn}}
  14. \newcommand{\GeV}{\si{\giga\electronvolt}}
  15. \hypersetup{colorlinks=true,urlcolor=blue}
  16. \usetheme[]{bjeldbak}
  17. \newcommand{\backupbegin}{%
  18. \newcounter{finalframe}
  19. \setcounter{finalframe}{\value{framenumber}}
  20. }
  21. \newcommand{\backupend}{%
  22. \setcounter{framenumber}{\value{finalframe}}
  23. }
  24. \newcommand\blfootnote[1]{%
  25. \begingroup
  26. \renewcommand\thefootnote{}\footnote{#1}%
  27. \addtocounter{footnote}{-1}%
  28. \endgroup
  29. }
  30. \begin{document}
  31. \title[$e$ Seeding Validation]{Offline Electron Seeding Validation \-- Update}
  32. \author[C. Fangmeier]{\textbf{Caleb Fangmeier} \\ Ilya Kravchenko, Greg Snow}
  33. \institute[UNL]{University of Nebraska \-- Lincoln}
  34. \date{EGM Reco/Comm/HLT meeting | June 22, 2018}
  35. \titlegraphic{%
  36. \begin{figure}
  37. \includegraphics[width=1in]{CMSlogo.png}\hspace{0.75in}\includegraphics[width=1in]{nebraska-n.png}
  38. \end{figure}
  39. }
  40. \begin{frame}[plain]
  41. \titlepage%
  42. \end{frame}
  43. \begin{frame}{Introduction}
  44. \begin{itemize}
  45. \item Our goal is to study \textbf{seeding} for the \textbf{offline} GSF tracking with the \textbf{Phase I pixel detector}.
  46. \item Specifically, we want to optimize the new pixel-matching scheme from HLT for use in off-line reconstruction.
  47. \item This Talk:
  48. \begin{itemize}
  49. \item Explain ``Hit Skipping'' and demonstrate effects on seeding performance
  50. \item Compare performance with pileup added
  51. \end{itemize}
  52. \end{itemize}
  53. \end{frame}
  54. \begin{frame}{N-Hit Electron Seeding}
  55. \begin{columns}
  56. \begin{column}{0.5\textwidth}
  57. {\small
  58. \begin{enumerate}
  59. \item Using the beam spot, the SC position, and SC energy, propagate a path through the pixels.
  60. \item Require the first hit to be within a $\delta\phi$ and $\delta z$ window. ($\delta\phi$ and $\delta R$ for FPIX)
  61. \item $\delta z$ window for first hit is huge as SC and beam spot positions give very little information about $z$.
  62. \item Forget the SC position, and propagate a new track based on the vertex and first hit positions, and the SC energy.
  63. \item Progress one-by-one through the remaining hits in the seed and require each one fit within a specified window around the track.
  64. \item Quit when all hits are matched, or a hit falls outside the window. \textbf{No skipping is allowed.}
  65. \end{enumerate}
  66. }
  67. \end{column}
  68. \begin{column}{0.5\textwidth}
  69. \begin{figure}
  70. \includegraphics[width=0.9\textwidth]{../common/diagrams/seeding_step2.png}
  71. \end{figure}
  72. \begin{figure}
  73. \includegraphics[width=0.9\textwidth]{../common/diagrams/seeding_step3.png}
  74. \end{figure}
  75. \end{column}
  76. \end{columns}
  77. \end{frame}
  78. \begin{frame}{Hit-Skipping}
  79. \begin{itemize}
  80. \item Normally, general tracking seeds are made with an iterative procedure
  81. \item Each iteration masks hits from use in subsequent steps
  82. \item Reduces combinatorics for CKF tracking
  83. % \end{itemize}
  84. \begin{figure}
  85. \includegraphics[width=0.7\textwidth]{figures/seeding_steps.png}
  86. \end{figure}
  87. % \begin{itemize}
  88. \item Each iteration works on a specific set of combinations of layers. eg. \texttt{initialStep} uses:
  89. \end{itemize}
  90. \begin{columns}[t]
  91. \begin{column}{0.5\textwidth}
  92. \texttt{BPix1+BPix2+BPix3+BPix4} \\
  93. \texttt{BPix1+BPix2+BPix3+FPix1\_pos} \\
  94. \texttt{BPix1+BPix2+BPix3+FPix1\_neg} \\
  95. \texttt{BPix1+BPix2+FPix1\_pos+FPix2\_pos}
  96. \end{column}
  97. \begin{column}{0.5\textwidth}
  98. \texttt{BPix1+BPix2+FPix1\_neg+FPix2\_neg} \\
  99. \texttt{BPix1+FPix1\_pos+FPix2\_pos+FPix3\_pos} \\
  100. \texttt{BPix1+FPix1\_neg+FPix2\_neg+FPix3\_neg} \\
  101. \end{column}
  102. \end{columns}
  103. \end{frame}
  104. \begin{frame}{Hit-Skipping}
  105. \begin{columns}[t]
  106. \begin{column}{0.6\textwidth}
  107. \begin{itemize}
  108. \item When \texttt{NHitElectronSeedProducer} was implemented for HLT, hit skipping was not added.
  109. \item Consider an example configuration where we are generating first quadruplet, then triplet, and then finally doublet seeds, masking hits along the way.
  110. \item If we require at least 3 matched hits, the old method \emph{with} hit skipping would create a seed of hits \texttt{BPIX1, BPIX2, BPIX3}.
  111. \item But new method \emph{without} hit skipping wouldn't make any seed from these hits.
  112. \item The ``hack'' is to create seeds using only steps \texttt{tripletElectronSeeds}, and \texttt{pixelPairElectronSeeds} with \textbf{no masking}.
  113. \item Adding skipping and removing the hack would reduce cpu time from redundant seeds.
  114. \end{itemize}
  115. \end{column}
  116. \begin{column}{0.4\textwidth}
  117. \begin{figure}
  118. \includegraphics[width=\textwidth]{figures/seeds_available.png}
  119. \end{figure}
  120. \end{column}
  121. \end{columns}
  122. % \begin{figure}
  123. % \includegraphics[width=\textwidth]{figures/hacked_seeding_steps.png}
  124. % \end{figure}
  125. \end{frame}
  126. \begin{frame}{Hit-Skipping - Performance}
  127. \begin{columns}[t]
  128. \begin{column}{0.5\textwidth}
  129. \begin{itemize}
  130. \item Enabling hit skipping and removing hack reduces number of seeds by 35\% to 50\%.
  131. \item 3-5x fewer seeds with respect to old seeding
  132. \item Efficiency reduced by between 4\% and 6\% to align more with old seeding performance.
  133. \item Purity improved by between about 1\%.
  134. \item (table in backup)
  135. \end{itemize}
  136. \end{column}
  137. \begin{column}{0.5\textwidth}
  138. \begin{figure}
  139. \includegraphics[width=\textwidth]{figures/tracking_roc_curve_dR.png}
  140. \end{figure}
  141. \end{column}
  142. \end{columns}
  143. {\footnotesize
  144. \begin{table}[]
  145. \begin{tabular}{l|cccc}
  146. \hline
  147. Process & Seeding Method & $<N_{seeds}>$(no-skip) & $<N_{seeds}>$(with-skip) & Percent Reduction \\ \hline
  148. $t\bar{t}$ & Old - default settings & - & 12.69 & - \\
  149. & New - HLT settings & 4.40 & 2.56 & 41\% \\
  150. & New - ``wide'' settings & 7.28 & 4.65 & 36\% \\ \hline
  151. Drell-Yan & Old - default settings & - & 11.40 & - \\
  152. & New - HLT settings & 4.70 & 2.32 & 51\% \\
  153. & New - ``wide'' settings & 5.38 & 2.65 & 51\%
  154. \end{tabular}
  155. \end{table}
  156. }
  157. \end{frame}
  158. \begin{frame}{Adding Pileup}
  159. \begin{itemize}
  160. % \item All previous results are \emph{without} pileup.
  161. \item The simhit-rechit linkage that was previously used in efficiency/purity measurements is not saved in \texttt{GEN-SIM-RAW}.
  162. \item Therefore, the \texttt{DIGI} step was re-run, but only for the signal event.
  163. \item However, running this instead of the \texttt{RAW2DIGI} step discarded the previously mixed pileup in the \texttt{RAW}.
  164. \item So even though there is a \texttt{PileupInfo} collection with reasonable values, there's no actual pileup hits being used for tracking (caused quite some confusion for me).
  165. \item In the end, abandon simhit-rechit linkage and just use $\Delta R$ matching for efficiency/purity.
  166. \item Some technical details in backup.
  167. \end{itemize}
  168. \begin{columns}[t]
  169. \begin{column}{0.5\textwidth}
  170. \end{column}
  171. \begin{column}{0.5\textwidth}
  172. \end{column}
  173. \end{columns}
  174. \end{frame}
  175. % ask for conclusion to project and find out
  176. % - what changes need to be made
  177. % - who is going to implement them
  178. \begin{frame}{Conclusions \& Outlook}
  179. \begin{itemize}
  180. \item TODO
  181. \end{itemize}
  182. \blfootnote{\tiny Analysis and ploting code is available at \url{https://git.fangmeier.tech/caleb/EGamma\_ElectronTrackingValidation}}
  183. % \blfootnote{\tiny Additional plots are available at \url{https://eg.fangmeier.tech/seeding\_studies\_2018\_06\_20\_17/hists.html}}
  184. \end{frame}
  185. \appendix
  186. \backupbegin%
  187. \begin{frame}
  188. \begin{center}
  189. {\Huge BACKUP}
  190. \end{center}
  191. \end{frame}
  192. \begin{frame}{Definitions}
  193. \begin{itemize}
  194. \item \textbf{Sim-Track \--} A track from a simulated electron both originating from the luminous region of CMS (beam-spot +- 5$\sigma$) and having $|\eta|<3.0$.
  195. \item \textbf{ECAL-Driven Seed \--} A seed created via a matching procedure between Super-Clusters and General Tracking Seeds (Either from \texttt{ElectronSeedProducer} or \texttt{ElectronNHitSeedProducer}). Must have $HOE<0.15$.
  196. \item \textbf{GSF Track \--} A track from GSF-Tracking resulting from an \textbf{ECAL-Driven Seed}
  197. % \item \textbf{Seeding Efficiency \--} The fraction of \textbf{Sim-Tracks} that have a matching \textbf{ECAL-Driven Seed} (based on simhit-rechit linkage or $\Delta R$ matching)
  198. \item \textbf{GSF Tracking Efficiency \--} The fraction of \textbf{Sim-Tracks} that have a matching \textbf{GSF Track} (based on $\Delta R$ matching)
  199. % \item \textbf{ECAL-Driven Seed Purity \--} The fraction of \textbf{ECAL-Driven Seeds} that have a matching \textbf{Sim-Track}
  200. \item \textbf{GSF Tracking Purity \--} The fraction of \textbf{GSF Tracks} that have a matching \textbf{Sim-Track}
  201. \item \textbf{GSF Tracking Fake Rate \--} The fraction of nontruth-matched Super-Clusters which result in at least one \textbf{GSF Track}.
  202. \end{itemize}
  203. \end{frame}
  204. \begin{frame}{Matching Window Parameters}
  205. \begin{table}[]
  206. \centering
  207. \begin{tabular}{@{}llrrrr@{}}
  208. \toprule
  209. & & \textbf{narrow} & \textbf{default (HLT)} & \textbf{wide} & \textbf{extra-wide} \\ \midrule
  210. Hit 1 & dPhiMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\
  211. & dPhiMaxHighEtThres & 20.0 & 20.0 & 20.0 & 20.0 \\
  212. & dPhiMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\
  213. & dRzMaxHighEt & 9999.0 & 9999.0 & 9999.0 & 9999.0 \\
  214. & dRzMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\
  215. & dRzMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\ \midrule
  216. Hit 2 & dPhiMaxHighEt & \textbf{0.0015} & \textbf{0.003} & \textbf{0.006} & \textbf{0.009} \\
  217. & dPhiMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\
  218. & dPhiMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\
  219. & dRzMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\
  220. & dRzMaxHighEtThres & 30.0 & 30.0 & 30.0 & 30.0 \\
  221. & dRzMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\ \midrule
  222. Hit 3+ & dPhiMaxHighEt & \textbf{0.0015} & \textbf{0.003} & \textbf{0.006} & \textbf{0.009} \\
  223. & dPhiMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\
  224. & dPhiMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\
  225. & dRzMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\
  226. & dRzMaxHighEtThres & 30.0 & 30.0 & 30.0 & 30.0 \\
  227. & dRzMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\ \bottomrule
  228. \end{tabular}
  229. \end{table}
  230. \centering
  231. \texttt{NHit} Seeding window parameters. Bold designates modified values.
  232. \end{frame}
  233. \begin{frame}{Samples}
  234. \begin{itemize}
  235. \item {\tiny /ZToEE\_NNPDF30\_13TeV-powheg\_M\_120\_200/RunIISummer17DRStdmix-NZSFlatPU28to62\_92X\_upgrade2017\_realistic\_v10-v1}
  236. \item {\tiny /TT\_TuneCUETP8M2T4\_13TeV-powheg-pythia8/RunIISummer17DRStdmix-NZSFlatPU28to62\_92X\_upgrade2017\_realistic\_v10-v2}
  237. \end{itemize}
  238. \end{frame}
  239. \begin{frame}[fragile]{cmsDriver invocations}
  240. \begin{columns}[t]
  241. \begin{column}{0.5\textwidth}
  242. {\Large \texttt{RAW}$\rightarrow$Step2 (old) }
  243. {\footnotesize
  244. \begin{verbatim}
  245. cmsDriver.py RAW2Step2 \
  246. --mc \
  247. --conditions 92X_upgrade2017_realistic_v10 \
  248. --era Run2_2017 \
  249. --eventcontent FEVTDEBUG \
  250. --datatier GEN-SIM-DIGI-RAW \
  251. --step DIGI:pdigi_valid,L1,DIGI2RAW \
  252. --geometry DB:Extended \
  253. --filein file:input.root \
  254. --fileout file:step2.root \
  255. --runUnscheduled
  256. \end{verbatim}
  257. }
  258. {\Large Step2$\rightarrow$TrackingNtuple (old) }
  259. {\footnotesize
  260. \begin{verbatim}
  261. cmsDriver.py Step2ToTrackingNtuple \
  262. --mc \
  263. --conditions 92X_upgrade2017_realistic_v10 \
  264. --era Run2_2017 \
  265. --eventcontent RECOSIM,MINIAODSIM,DQM \
  266. --datatier GEN-SIM-RECO,MINIAODSIM,DQMIO \
  267. --step RAW2DIGI,L1Reco,RECO,EI,PAT,VALIDATION:@standardValidation+@miniAODValidation \
  268. --filein file:step2.root \
  269. --fileout file:trackingNtuple.root \
  270. --customise Validation/RecoTrack/customiseTrackingNtuple.customiseTrackingNtuple \
  271. --runUnscheduled
  272. \end{verbatim}
  273. }
  274. \end{column}
  275. \begin{column}{0.5\textwidth}
  276. {\large \texttt{RAW}$\rightarrow$TrackingNtuple (new) }
  277. {\footnotesize
  278. \begin{verbatim}
  279. cmsDriver.py RAW2TrackingNtuple \
  280. --mc \
  281. --conditions 92X_upgrade2017_realistic_v7 \
  282. --era Run2_2017 \
  283. --eventcontent FEVTDEBUG \
  284. --datatier GEN-SIM-RECO \
  285. --step RAW2DIGI,RECO,EI,PAT,VALIDATION \
  286. --customise Validation/RecoTrack/customiseTrackingNtuple
  287. .customiseTrackingNtuple \
  288. --filein file:input.root \
  289. --fileout file:trackingNtuple.root \
  290. --runUnscheduled
  291. \end{verbatim}
  292. }
  293. \end{column}
  294. \end{columns}
  295. \end{frame}
  296. \backupend%
  297. \end{document}