Skip to content

Recipes for reconstruction tests

This section contains recipes for testing new reconstruction modifications in the HLT Phase2 menu.

Enabling trimmed tracking

The recipe to test trimmed tracking works under CMSSW_14_1_0_pre5. First you need to setup a work area and merge the needed changes from the test branch.

1
2
3
4
5
6
cmsrel CMSSW_14_1_0_pre5
cd CMSSW_14_1_0_pre5/src
cmsenv
git cms-init
git cms-merge-topic theochatzis:testTrimming
scram b -j 12
Then you can add the customization in the cmsDriver command:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
   cmsDriver.py Phase2 -s L1P2GT,HLT:75e33 --processName=HLTX \
   --conditions auto:phase2_realistic_T33 \
   --geometry Extended2026D110 \
   --era Phase2C17I13M9 \
   --eventcontent FEVTDEBUGHLT \
   --customise SLHCUpgradeSimulations/Configuration/aging.customise_aging_1000,HLTrigger/Configuration/customizeHLTforTrimmedTracking.customizeHLTforTrimmedTrackingMixedPF \
   --filein /store/mc/Phase2Spring24DIGIRECOMiniAOD/TT_TuneCP5_14TeV-powheg-pythia8/GEN-SIM-DIGI-RAW-MINIAOD/PU200_AllTP_140X_mcRun4_realistic_v4-v1/2560000/11d1f6f0-5f03-421e-90c7-b5815197fc85.root \
   --inputCommands='keep *, drop *_hlt*_*_HLT, drop triggerTriggerFilterObjectWithRefs_l1t*_*_HLT' \
   --mc \
   -n 1 --nThreads 1
This introduces the trimmed tracking + mixed tracks for PF/HGCAL modules and HLT vertices. If you want to test only the effect of trimmed tracking alone use customizeHLTforTrimmedTracking instead of customizeHLTforTrimmedTrackingMixedPF above.

Physics meanings: - Trimmed tracking is the selection of a subset of the pixel tracks, as seeds for full tracking (so tracks seeds). The selection requires the tracks to be close (dz<0.3cm) to the first N=100 vertices that have at least \sum p_T^2>0.3 \left(\sum p_T^2\right)_{leading vertex} - When using mixed PF you expect to have a collection of mixedGeneralTracks along with the standard generalTracks which also contains pu pixel tracks (i.e. tracks rejected by the trimming step with dz>0.3cm from the primary vertices).

Or you can add in the end of your generated configuration file the customization:

1
2
3
4
5
from HLTrigger.Configuration.customizeHLTforTrimmedTracking import customizeHLTforTrimmedTracking,customizeHLTforTrimmedTrackingMixedPF
# to use Trimmed tracking alone
process = customizeHLTforTrimmedTracking(process)
# to use Trimmed tracking + Mixed tracks in PF
process = customizeHLTforTrimmedTrackingMixedPF(process)

Note: This recipe currently isn't affecting EGamma/Muons.

Precision Timing

You can find a codi with instructions here. The recipe works in CMSSW_13_1_X, needs to be updated for the new CMSSW_14_1_X releases.

Running patatrack tracking with alpaka

To run base tracking (ie. hltPhase2PixelTracks as input to generalTracks) with patatrack via alpaka, after #45508 (14_2_0_pre2, under 14_2_0_pre1 cherry-pick b4e8c8652) add --procModifiers alpaka to the cmsDriver.py command. The modifiers will enable patatrack reconstruction of tight 4-hits pixel tracks via patatrack (also replacing the pixel cluster and rec. hits producers). Pixel tracks are then used to build the initialStep tracks. highPtTripletStep 3-hits tracks are still build as in the original algorithm (now starting from alpaka rec. hits) and added to the hltGeneralTracks collection together with the initialStep. Please note that the alpaka process modifier could enable other reconstruction via alpaka (eg. HGCAL). To run alpaka tracking in 14_1_X cherry-pick b4e8c8652 (using at least 14_1_X_pre7).