cmssw icon indicating copy to clipboard operation
cmssw copied to clipboard

[15.0.X] Fix Jacobian for linefit in Brokenline.

Open mmusich opened this issue 6 months ago • 13 comments

backport of https://github.com/cms-sw/cmssw/pull/48410

PR description:

As per title. This PR is meant to fix a bug in the broken-line fit implementation that is mainly relevant for phase-2, with tilted modules in the Outer Tracker when pixel ntuplets are extended there (phase-2 "CA extension"). This was reported by @JanGerritSchulz and @rovere in this presentation

For phase-1 pixel (HLT) tracking, the impact is expected to be ~zero, and this was confirmed from private tracking validations (see below). However, we prefer to have a consistent, correct code in the releases in use for phase-1, too. There might be a follow-up to include the fix also for the Riemann-fit case (that is not used in production in any scenario).

PR validation:

here there is a high statistics comparison w.r.t. the current master branch done using:

#!/bin/bash -ex

cmsDriver.py step2 -s HLT:@relval2025,VALIDATION:hltMultiTrackValidation \
         --conditions auto:phase1_2025_realistic \
         --datatier DQMIO \
         -n 1000 \
         --eventcontent DQMIO \
         --geometry DB:Extended \
         --era Run3_2025 \
         --filein file:/eos/cms/store/relval/CMSSW_15_1_0_pre3/RelValTTbar_14TeV/GEN-SIM-DIGI-RAW/PU_150X_mcRun3_2025_realistic_v3_STD_2025_PU-v3/2590000/04cc6ed0-e6aa-4e4a-b232-05e10f57e6ab.root  \
         --fileout file:step2.root \
         --nThreads 24 \
         --process HLTX \
         --inputCommands='keep *, drop *_hlt*_*_HLT, drop triggerTriggerFilterObjectWithRefs_l1t*_*_HLT' \
         > step2.log  2>&1

cmsDriver.py step3 -s HARVESTING:postProcessorHLTtrackingSequence \
         --conditions auto:phase1_2025_realistic  \
         --mc \
         --geometry DB:Extended \
         --scenario pp \
         --filetype DQM \
         --era Run3_2025 \
         -n 1000  \
         --filein file:step2.root \
         --fileout file:step3.root > step3.log  2>&1

and comparing the resulting DQM files in outputs.

If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:

Verbatim backport of https://github.com/cms-sw/cmssw/pull/48410 for 2025 data-taking purposes.

mmusich avatar Jun 25 '25 15:06 mmusich

type ngt

mmusich avatar Jun 25 '25 15:06 mmusich

type bug-fix

mmusich avatar Jun 25 '25 15:06 mmusich

A new Pull Request was created by @mmusich for CMSSW_15_0_X.

It involves the following packages:

  • RecoTracker/PixelTrackFitting (reconstruction)

@cmsbuild, @jfernan2, @mandrenguyen can you please review it and eventually sign? Thanks. @GiacomoSguazzoni, @VinInn, @VourMa, @dgulhan, @felicepantaleo, @gpetruc, @missirol, @mmusich, @mtosi, @rovere this is something you requested to watch as well. @antoniovilela, @mandrenguyen, @rappoccio, @sextonkennedy you are the release manager for this.

cms-bot commands are listed here

  • Backported from #48410

cmsbuild avatar Jun 25 '25 15:06 cmsbuild

cms-bot internal usage

cmsbuild avatar Jun 25 '25 15:06 cmsbuild

@cmsbuild, please test

mmusich avatar Jun 25 '25 15:06 mmusich

Pull request #48411 was updated. @cmsbuild, @jfernan2, @mandrenguyen can you please check and sign again.

cmsbuild avatar Jun 25 '25 16:06 cmsbuild

@cmsbuild, please test

mmusich avatar Jun 25 '25 16:06 mmusich

assign tracking-pog

mmasciov avatar Jun 25 '25 16:06 mmasciov

New categories assigned: tracking-pog

@kskovpen,@mmasciov you have been requested to review this Pull request/Issue and eventually sign? Thanks

cmsbuild avatar Jun 25 '25 16:06 cmsbuild

+1

Size: This PR adds an extra 16KB to repository Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-fa2d4a/46918/summary.html COMMIT: 877dd9aabe97d94813a5fc132f5a6ac0a0de1661 CMSSW: CMSSW_15_0_X_2025-06-25-1100/el8_amd64_gcc12 User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/cmssw/48411/46918/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

Summary:

cmsbuild avatar Jun 25 '25 18:06 cmsbuild

+1

jfernan2 avatar Jun 26 '25 07:06 jfernan2

+1

mmasciov avatar Jun 26 '25 09:06 mmasciov

This pull request is fully signed and it will be integrated in one of the next CMSSW_15_0_X IBs (tests are also fine) and once validation in the development release cycle CMSSW_15_1_X is complete. This pull request will now be reviewed by the release team before it's merged. @antoniovilela, @sextonkennedy, @mandrenguyen, @rappoccio (and backports should be raised in the release meeting by the corresponding L2)

cmsbuild avatar Jun 26 '25 09:06 cmsbuild

Reading thru the PR description, it's not 100% obvious to me that we really want this in the production release. Perhaps someone could clarify why it's not sufficient to just put it in the master?

mandrenguyen avatar Jun 27 '25 15:06 mandrenguyen

@mandrenguyen

Reading thru the PR description, it's not 100% obvious to me that we really want this in the production release.

it's a honest bugfix. The math in the code was just wrong before (see discussion in the document attached).

Jacobian_xyz_sz.pdf

I don't think we need this urgently for the HLT in the light ions data-taking, but it would be good to have in the release for the pp after that (as the most of the luminosity of this year will be taken with that).

mmusich avatar Jun 27 '25 15:06 mmusich

For tracking POG, the preference is to be consistent and have this update in the release. @cms-sw/tracking-pog-l2

mmasciov avatar Jun 27 '25 15:06 mmasciov

+1

mandrenguyen avatar Jun 28 '25 06:06 mandrenguyen