% rubber: module pdftex \documentclass[english,aspectratio=43,8pt]{beamer} \usepackage{graphicx} \usepackage{amssymb} \usepackage{booktabs} \usepackage{siunitx} \usepackage{subcaption} \usepackage{marvosym} \usepackage{verbatim} \usepackage[normalem]{ulem} % Needed for /sout \newcommand{\pb}{\si{\pico\barn}}% \newcommand{\fb}{\si{\femto\barn}}% \newcommand{\invfb}{\si{\per\femto\barn}} \newcommand{\GeV}{\si{\giga\electronvolt}} \hypersetup{colorlinks=true,urlcolor=blue} \usetheme[]{bjeldbak} \newcommand{\backupbegin}{% \newcounter{finalframe} \setcounter{finalframe}{\value{framenumber}} } \newcommand{\backupend}{% \setcounter{framenumber}{\value{finalframe}} } \newcommand\blfootnote[1]{% \begingroup \renewcommand\thefootnote{}\footnote{#1}% \addtocounter{footnote}{-1}% \endgroup } \begin{document} \title[$e$ Seeding Validation]{Offline Electron Seeding Validation \-- Update} \author[C. Fangmeier]{\textbf{Caleb Fangmeier} \\ Ilya Kravchenko, Greg Snow} \institute[UNL]{University of Nebraska \-- Lincoln} \date{EGM Reco/Comm/HLT meeting | June 22, 2018} \titlegraphic{% \begin{figure} \includegraphics[width=1in]{CMSlogo.png}\hspace{0.75in}\includegraphics[width=1in]{nebraska-n.png} \end{figure} } \begin{frame}[plain] \titlepage% \end{frame} \begin{frame}{Introduction} \begin{itemize} \item Our goal is to study \textbf{seeding} for the \textbf{offline} GSF tracking with the \textbf{Phase I pixel detector}. \item Specifically, we want to optimize the new pixel-matching scheme from HLT for use in off-line reconstruction. \item This Talk: \begin{itemize} \item Explain ``Hit Skipping'' and demonstrate effects on seeding performance \item Compare performance with pileup added \end{itemize} \end{itemize} \end{frame} \begin{frame}{N-Hit Electron Seeding} \begin{columns} \begin{column}{0.5\textwidth} {\small \begin{enumerate} \item Using the beam spot, the SC position, and SC energy, propagate a path through the pixels. \item Require the first hit to be within a $\delta\phi$ and $\delta z$ window. ($\delta\phi$ and $\delta R$ for FPIX) \item $\delta z$ window for first hit is huge as SC and beam spot positions give very little information about $z$. \item Forget the SC position, and propagate a new track based on the vertex and first hit positions, and the SC energy. \item Progress one-by-one through the remaining hits in the seed and require each one fit within a specified window around the track. \item Quit when all hits are matched, or a hit falls outside the window. \textbf{No skipping is allowed.} \end{enumerate} } \end{column} \begin{column}{0.5\textwidth} \begin{figure} \includegraphics[width=0.9\textwidth]{../common/diagrams/seeding_step2.png} \end{figure} \begin{figure} \includegraphics[width=0.9\textwidth]{../common/diagrams/seeding_step3.png} \end{figure} \end{column} \end{columns} \end{frame} \begin{frame}{Hit-Skipping} \begin{itemize} \item Normally, general tracking seeds are made with an iterative procedure \item Each iteration masks hits from use in subsequent steps \item Reduces combinatorics for CKF tracking % \end{itemize} \begin{figure} \includegraphics[width=0.7\textwidth]{figures/seeding_steps.png} \end{figure} % \begin{itemize} \item Each iteration works on a specific set of combinations of layers. eg. \texttt{initialStep} uses: \end{itemize} \begin{columns}[t] \begin{column}{0.5\textwidth} \texttt{BPix1+BPix2+BPix3+BPix4} \\ \texttt{BPix1+BPix2+BPix3+FPix1\_pos} \\ \texttt{BPix1+BPix2+BPix3+FPix1\_neg} \\ \texttt{BPix1+BPix2+FPix1\_pos+FPix2\_pos} \end{column} \begin{column}{0.5\textwidth} \texttt{BPix1+BPix2+FPix1\_neg+FPix2\_neg} \\ \texttt{BPix1+FPix1\_pos+FPix2\_pos+FPix3\_pos} \\ \texttt{BPix1+FPix1\_neg+FPix2\_neg+FPix3\_neg} \\ \end{column} \end{columns} \end{frame} \begin{frame}{Hit-Skipping} \begin{columns}[t] \begin{column}{0.6\textwidth} \begin{itemize} \item When \texttt{NHitElectronSeedProducer} was implemented for HLT, hit skipping was not added. \item Consider an example configuration where we are generating first quadruplet, then triplet, and then finally doublet seeds, masking hits along the way. \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}. \item But new method \emph{without} hit skipping wouldn't make any seed from these hits. \item The ``hack'' is to create seeds using only steps \texttt{tripletElectronSeeds}, and \texttt{pixelPairElectronSeeds} with \textbf{no masking}. \item Adding skipping and removing the hack would reduce cpu time from redundant seeds. \end{itemize} \end{column} \begin{column}{0.4\textwidth} \begin{figure} \includegraphics[width=\textwidth]{figures/seeds_available.png} \end{figure} \end{column} \end{columns} % \begin{figure} % \includegraphics[width=\textwidth]{figures/hacked_seeding_steps.png} % \end{figure} \end{frame} \begin{frame}{Hit-Skipping - Performance} \begin{columns}[t] \begin{column}{0.5\textwidth} \begin{itemize} \item Enabling hit skipping and removing hack reduces number of seeds by 35\% to 50\%. \item 3-5x fewer seeds with respect to old seeding \item Efficiency reduced by between 4\% and 6\% to align more with old seeding performance. \item Purity improved by between about 1\%. \item (table in backup) \end{itemize} \end{column} \begin{column}{0.5\textwidth} \begin{figure} \includegraphics[width=\textwidth]{figures/tracking_roc_curve_dR.png} \end{figure} \end{column} \end{columns} {\footnotesize \begin{table}[] \begin{tabular}{l|cccc} \hline Process & Seeding Method & $$(no-skip) & $$(with-skip) & Percent Reduction \\ \hline $t\bar{t}$ & Old - default settings & - & 12.69 & - \\ & New - HLT settings & 4.40 & 2.56 & 41\% \\ & New - ``wide'' settings & 7.28 & 4.65 & 36\% \\ \hline Drell-Yan & Old - default settings & - & 11.40 & - \\ & New - HLT settings & 4.70 & 2.32 & 51\% \\ & New - ``wide'' settings & 5.38 & 2.65 & 51\% \end{tabular} \end{table} } \end{frame} \begin{frame}{Adding Pileup} \begin{itemize} % \item All previous results are \emph{without} pileup. \item The simhit-rechit linkage that was previously used in efficiency/purity measurements is not saved in \texttt{GEN-SIM-RAW}. \item Therefore, the \texttt{DIGI} step was re-run, but only for the signal event. \item However, running this instead of the \texttt{RAW2DIGI} step discarded the previously mixed pileup in the \texttt{RAW}. \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). \item In the end, abandon simhit-rechit linkage and just use $\Delta R$ matching for efficiency/purity. \item Some technical details in backup. \end{itemize} \begin{columns}[t] \begin{column}{0.5\textwidth} \end{column} \begin{column}{0.5\textwidth} \end{column} \end{columns} \end{frame} % ask for conclusion to project and find out % - what changes need to be made % - who is going to implement them \begin{frame}{Conclusions \& Outlook} \begin{itemize} \item TODO \end{itemize} \blfootnote{\tiny Analysis and ploting code is available at \url{https://git.fangmeier.tech/caleb/EGamma\_ElectronTrackingValidation}} % \blfootnote{\tiny Additional plots are available at \url{https://eg.fangmeier.tech/seeding\_studies\_2018\_06\_20\_17/hists.html}} \end{frame} \appendix \backupbegin% \begin{frame} \begin{center} {\Huge BACKUP} \end{center} \end{frame} \begin{frame}{Definitions} \begin{itemize} \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$. \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$. \item \textbf{GSF Track \--} A track from GSF-Tracking resulting from an \textbf{ECAL-Driven Seed} % \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) \item \textbf{GSF Tracking Efficiency \--} The fraction of \textbf{Sim-Tracks} that have a matching \textbf{GSF Track} (based on $\Delta R$ matching) % \item \textbf{ECAL-Driven Seed Purity \--} The fraction of \textbf{ECAL-Driven Seeds} that have a matching \textbf{Sim-Track} \item \textbf{GSF Tracking Purity \--} The fraction of \textbf{GSF Tracks} that have a matching \textbf{Sim-Track} \item \textbf{GSF Tracking Fake Rate \--} The fraction of nontruth-matched Super-Clusters which result in at least one \textbf{GSF Track}. \end{itemize} \end{frame} \begin{frame}{Matching Window Parameters} \begin{table}[] \centering \begin{tabular}{@{}llrrrr@{}} \toprule & & \textbf{narrow} & \textbf{default (HLT)} & \textbf{wide} & \textbf{extra-wide} \\ \midrule Hit 1 & dPhiMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\ & dPhiMaxHighEtThres & 20.0 & 20.0 & 20.0 & 20.0 \\ & dPhiMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\ & dRzMaxHighEt & 9999.0 & 9999.0 & 9999.0 & 9999.0 \\ & dRzMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\ & dRzMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\ \midrule Hit 2 & dPhiMaxHighEt & \textbf{0.0015} & \textbf{0.003} & \textbf{0.006} & \textbf{0.009} \\ & dPhiMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\ & dPhiMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\ & dRzMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\ & dRzMaxHighEtThres & 30.0 & 30.0 & 30.0 & 30.0 \\ & dRzMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\ \midrule Hit 3+ & dPhiMaxHighEt & \textbf{0.0015} & \textbf{0.003} & \textbf{0.006} & \textbf{0.009} \\ & dPhiMaxHighEtThres & 0.0 & 0.0 & 0.0 & 0.0 \\ & dPhiMaxLowEtGrad & 0.0 & 0.0 & 0.0 & 0.0 \\ & dRzMaxHighEt & \textbf{0.025} & \textbf{0.05} & \textbf{0.1} & \textbf{0.15} \\ & dRzMaxHighEtThres & 30.0 & 30.0 & 30.0 & 30.0 \\ & dRzMaxLowEtGrad & -0.002 & -0.002 & -0.002 & -0.002 \\ \bottomrule \end{tabular} \end{table} \centering \texttt{NHit} Seeding window parameters. Bold designates modified values. \end{frame} \begin{frame}{Samples} \begin{itemize} \item {\tiny /ZToEE\_NNPDF30\_13TeV-powheg\_M\_120\_200/RunIISummer17DRStdmix-NZSFlatPU28to62\_92X\_upgrade2017\_realistic\_v10-v1} \item {\tiny /TT\_TuneCUETP8M2T4\_13TeV-powheg-pythia8/RunIISummer17DRStdmix-NZSFlatPU28to62\_92X\_upgrade2017\_realistic\_v10-v2} \end{itemize} \end{frame} \begin{frame}[fragile]{cmsDriver invocations} \begin{columns}[t] \begin{column}{0.5\textwidth} {\Large \texttt{RAW}$\rightarrow$Step2 (old) } {\footnotesize \begin{verbatim} cmsDriver.py RAW2Step2 \ --mc \ --conditions 92X_upgrade2017_realistic_v10 \ --era Run2_2017 \ --eventcontent FEVTDEBUG \ --datatier GEN-SIM-DIGI-RAW \ --step DIGI:pdigi_valid,L1,DIGI2RAW \ --geometry DB:Extended \ --filein file:input.root \ --fileout file:step2.root \ --runUnscheduled \end{verbatim} } {\Large Step2$\rightarrow$TrackingNtuple (old) } {\footnotesize \begin{verbatim} cmsDriver.py Step2ToTrackingNtuple \ --mc \ --conditions 92X_upgrade2017_realistic_v10 \ --era Run2_2017 \ --eventcontent RECOSIM,MINIAODSIM,DQM \ --datatier GEN-SIM-RECO,MINIAODSIM,DQMIO \ --step RAW2DIGI,L1Reco,RECO,EI,PAT,VALIDATION:@standardValidation+@miniAODValidation \ --filein file:step2.root \ --fileout file:trackingNtuple.root \ --customise Validation/RecoTrack/customiseTrackingNtuple.customiseTrackingNtuple \ --runUnscheduled \end{verbatim} } \end{column} \begin{column}{0.5\textwidth} {\large \texttt{RAW}$\rightarrow$TrackingNtuple (new) } {\footnotesize \begin{verbatim} cmsDriver.py RAW2TrackingNtuple \ --mc \ --conditions 92X_upgrade2017_realistic_v7 \ --era Run2_2017 \ --eventcontent FEVTDEBUG \ --datatier GEN-SIM-RECO \ --step RAW2DIGI,RECO,EI,PAT,VALIDATION \ --customise Validation/RecoTrack/customiseTrackingNtuple .customiseTrackingNtuple \ --filein file:input.root \ --fileout file:trackingNtuple.root \ --runUnscheduled \end{verbatim} } \end{column} \end{columns} \end{frame} \backupend% \end{document}