Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-06-22 02:24:05

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 _thresholdsHB = cms.vdouble(0.8, 0.8, 0.8, 0.8)
0004 _thresholdsHE = cms.vdouble(0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8)
0005 _thresholdsHBphase1 = cms.vdouble(0.1, 0.2, 0.3, 0.3)
0006 _thresholdsHEphase1 = cms.vdouble(0.1, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2)
0007 #updated HB RecHit threshold for 2023
0008 _thresholdsHBphase1_2023 = cms.vdouble(0.4, 0.3, 0.3, 0.3)
0009 
0010 particleFlowClusterHCAL = cms.EDProducer('PFMultiDepthClusterProducer',
0011        clustersSource = cms.InputTag("particleFlowClusterHBHE"),
0012        usePFThresholdsFromDB = cms.bool(False),
0013        pfClusterBuilder =cms.PSet(
0014            algoName = cms.string("PFMultiDepthClusterizer"),
0015            nSigmaEta = cms.double(2.),
0016            nSigmaPhi = cms.double(2.),
0017            #pf clustering parameters
0018            minFractionToKeep = cms.double(1e-7),
0019            allCellsPositionCalc = cms.PSet(
0020                algoName = cms.string("Basic2DGenericPFlowPositionCalc"),
0021                minFractionInCalc = cms.double(1e-9),    
0022                posCalcNCrystals = cms.int32(-1),
0023                logWeightDenominatorByDetector = cms.VPSet(
0024                 cms.PSet( detector = cms.string("HCAL_BARREL1"),
0025                           depths = cms.vint32(1, 2, 3, 4),
0026                           logWeightDenominator = _thresholdsHB,
0027                           ),
0028                 cms.PSet( detector = cms.string("HCAL_ENDCAP"),
0029                           depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
0030                           logWeightDenominator = _thresholdsHE,
0031                           )
0032                 ),
0033                minAllowedNormalization = cms.double(1e-9)
0034            )
0035        ),
0036        positionReCalc = cms.PSet(),
0037        energyCorrector = cms.PSet()
0038 )
0039 
0040 # offline 2018 -- uncollapsed
0041 from Configuration.Eras.Modifier_run2_HE_2018_cff import run2_HE_2018
0042 from Configuration.ProcessModifiers.run2_HECollapse_2018_cff import run2_HECollapse_2018
0043 (run2_HE_2018 & ~run2_HECollapse_2018).toModify(particleFlowClusterHCAL,
0044     pfClusterBuilder = dict(
0045         allCellsPositionCalc = dict(logWeightDenominatorByDetector = {1 : dict(logWeightDenominator = _thresholdsHEphase1) } ),
0046     ),
0047 )
0048 
0049 # offline 2021
0050 from Configuration.Eras.Modifier_run3_HB_cff import run3_HB
0051 run3_HB.toModify(particleFlowClusterHCAL,
0052     pfClusterBuilder = dict(
0053         allCellsPositionCalc = dict(logWeightDenominatorByDetector = {0 : dict(logWeightDenominator = _thresholdsHBphase1) } ),
0054     ),
0055 )
0056 
0057 # offline 2023
0058 from Configuration.Eras.Modifier_run3_egamma_2023_cff import run3_egamma_2023
0059 run3_egamma_2023.toModify(particleFlowClusterHCAL,
0060     pfClusterBuilder = dict(
0061         allCellsPositionCalc = dict(logWeightDenominatorByDetector = {0 : dict(logWeightDenominator = _thresholdsHBphase1_2023) } ),
0062     ),
0063 )
0064 
0065 # HCALonly WF
0066 particleFlowClusterHCALOnly = particleFlowClusterHCAL.clone(
0067     clustersSource = "particleFlowClusterHBHEOnly"
0068 )
0069 
0070 #--- Use DB conditions for cuts&seeds for Run3 and Phase2
0071 from Configuration.Eras.Modifier_hcalPfCutsFromDB_cff import hcalPfCutsFromDB
0072 hcalPfCutsFromDB.toModify( particleFlowClusterHCAL,
0073                            usePFThresholdsFromDB = True)