Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:26:24

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from RecoLocalTracker.SiPixelRecHits._generic_default_cfi import _generic_default
0004 PixelCPEGenericESProducer = _generic_default.clone()
0005 
0006 # This customizes the Run3 Pixel CPE generic reconstruction in order to activate the IrradiationBiasCorrection
0007 # because of the expected resolution loss due to radiation damage
0008 from Configuration.Eras.Modifier_run3_common_cff import run3_common
0009 run3_common.toModify(PixelCPEGenericESProducer, IrradiationBiasCorrection = True)
0010 
0011 # customize the Pixel CPE generic producer for phase2
0012 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0013 phase2_tracker.toModify(PixelCPEGenericESProducer,
0014   UseErrorsFromTemplates = True,
0015   LoadTemplatesFromDB = True,
0016   NoTemplateErrorsWhenNoTrkAngles = True,
0017   TruncatePixelCharge = False,
0018   IrradiationBiasCorrection = False, # set IBC off
0019   DoCosmics = False,
0020   isPhase2 = True,                    # use 'Phase2' version of hardcoded CPE errors
0021   xerr_barrel_ln = [0.00025, 0.00030, 0.00035, 0.00035],
0022   xerr_barrel_ln_def = 0.00035,
0023   yerr_barrel_ln = [0.00210, 0.00115, 0.00125],
0024   yerr_barrel_ln_def = 0.00125,
0025   xerr_endcap = [0.00072, 0.00025],
0026   xerr_endcap_def = 0.00060,
0027   yerr_endcap = [0.00289, 0.00025],
0028   yerr_endcap_def = 0.00180,
0029   # if SmallPitch
0030   # xerr_barrel_l1 = [0.00104, 0.000691, 0.00122],
0031   # xerr_barrel_l1_def = 0.00321,
0032   # yerr_barrel_l1 = [0.00199, 0.00136, 0.0015, 0.00153, 0.00152, 0.00171, 0.00154, 0.00157, 0.00154],
0033   # yerr_barrel_l1_def = 0.00164
0034   # else
0035   xerr_barrel_l1 = [0.00025, 0.00030, 0.00035, 0.00035],
0036   xerr_barrel_l1_def = 0.00035,
0037   yerr_barrel_l1 = [0.00210, 0.00115, 0.00125],
0038   yerr_barrel_l1_def = 0.00125
0039 )
0040 
0041 # customize the Pixel CPE generic producer for phase2 3D pixels
0042 # Will remove any usage of template / genError payloads from the reconstruction
0043 from Configuration.Eras.Modifier_phase2_3DPixels_cff import phase2_3DPixels
0044 from Configuration.ProcessModifiers.PixelCPEGeneric_cff import PixelCPEGeneric
0045 (phase2_tracker & (phase2_3DPixels & PixelCPEGeneric)).toModify(PixelCPEGenericESProducer,
0046                                                                 UseErrorsFromTemplates = False,    # no GenErrors
0047                                                                 LoadTemplatesFromDB = False        # do not load templates
0048                                                                 )
0049 # customize the Pixel CPE generic producer for phase2 square pixels
0050 # Do use Template errors for square pixels even in the first tracking step
0051 # This is needed because hardcoded errors in https://github.com/cms-sw/cmssw/blob/master/RecoLocalTracker/SiPixelRecHits/src/PixelCPEGeneric.cc#L113
0052 # have been optimized for rectangular 25x100 pixels, and in the current generic reco setup we use hardcoded errors for the first tracking pass
0053 from Configuration.Eras.Modifier_phase2_squarePixels_cff import phase2_squarePixels
0054 (phase2_tracker & (phase2_squarePixels | phase2_3DPixels)).toModify(PixelCPEGenericESProducer,
0055                                                                     NoTemplateErrorsWhenNoTrkAngles = False # use genErrors in the seeding step (when no track angles are available)
0056                                                                     )