trackreco / mkFit

Vectorized, Parallelized Tracking
https://trackreco.github.io/
Apache License 2.0
17 stars 15 forks source link

fake rate blows up below 0.8-0.9 GeV in initialStep #356

Open slava77 opened 3 years ago

slava77 commented 3 years ago

(moved from #355)

Perhaps this is already obvious, but still.

as seen in one of the recently shared fr plots http://uaf-8.t2.ucsd.edu/~cerati/plots_Sep08_ttbar_testzfix_edge_gcc/plots_building_initialStep/effandfakePtEtaPhi.pdf

image

the relative increase blows up just below 0.8 GeV. The first bin 0.65-0.8 and the bins below include tracks which turn around and loop back (0.71 GeV has max radius of 125 cm [inner edge of ECAL]; 0.63 GeV has max radius of 110 cm [outer extent of the tracker]).

Another coincidence in this region is the step in the scoring function at 0.9 GeV. I tried to move the threshold to 0.09 GeV and the step in the fake rate is still at the same bin but gets worse

image

I'll play around with the bonus and penalty enhancements used below 0.9 GeV, but it seems like these are a kludge to mitigate a problem that arises somewhere else.

cerati commented 3 years ago

On one hand we should probably not collect any hits for tracks with pt > 0.7 GeV that are propagated back. Where is the stopping logic in the code?

I think we don't loop back since that is not part of the layer plan

slava77 commented 3 years ago

On one hand we should probably not collect any hits for tracks with pt > 0.7 GeV that are propagated back. Where is the stopping logic in the code?

I think we don't loop back since that is not part of the layer plan

OK for the barrel. However, I recall @osschar mentioning that there is no restriction in the endcaps.

osschar commented 3 years ago

Here's the code: https://github.com/trackreco/mkFit/blob/devel/mkFit/MkBuilder.cc#L1545

And apparently in transition region we will happily let the looper go on pick up new hits in the endcaps.

I can revisit this and add an option to hard stop all tracks as they reach max_r / curve-back. Or just make it the default, without looping.

slava77 commented 3 years ago

about the low cluster-charge hits that appear in the tracker DQM plots: I was thinking that these may also contribute to the fake rate blow up at low pt. The low-charge hits are most likely fakes at least for the given track. In CMSSW the low-charge hits would not be considered. Do we have access to the cluster charge at the mkFit level? From some earlier discussion in mkfit skype, it sounds like a simple cosec(aspect angle to R/Z) scaled cut can do the job.

slava77 commented 3 years ago

Do we have access to the cluster charge at the mkFit level?

answering self: charge_pcm is available with 8-bit precision (saved after an offset of 1620). Something to try then (first hardcoded, but then perhaps to make configurable).