CMS 3D CMS Logo

particleFlowClusterHCAL_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 _thresholdsHB = cms.vdouble(0.8, 0.8, 0.8, 0.8)
4 _thresholdsHE = cms.vdouble(0.8, 0.8, 0.8, 0.8, 0.8, 0.8, 0.8)
5 _thresholdsHBphase1 = cms.vdouble(0.1, 0.2, 0.3, 0.3)
6 _thresholdsHEphase1 = cms.vdouble(0.1, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2)
7 
8 particleFlowClusterHCAL = cms.EDProducer('PFMultiDepthClusterProducer',
9  clustersSource = cms.InputTag("particleFlowClusterHBHE"),
10  pfClusterBuilder =cms.PSet(
11  algoName = cms.string("PFMultiDepthClusterizer"),
12  nSigmaEta = cms.double(2.),
13  nSigmaPhi = cms.double(2.),
14  #pf clustering parameters
15  minFractionToKeep = cms.double(1e-7),
16  allCellsPositionCalc = cms.PSet(
17  algoName = cms.string("Basic2DGenericPFlowPositionCalc"),
18  minFractionInCalc = cms.double(1e-9),
19  posCalcNCrystals = cms.int32(-1),
20  logWeightDenominatorByDetector = cms.VPSet(
21  cms.PSet( detector = cms.string("HCAL_BARREL1"),
22  depths = cms.vint32(1, 2, 3, 4),
23  logWeightDenominator = _thresholdsHB,
24  ),
25  cms.PSet( detector = cms.string("HCAL_ENDCAP"),
26  depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
27  logWeightDenominator = _thresholdsHE,
28  )
29  ),
30  minAllowedNormalization = cms.double(1e-9)
31  )
32  ),
33  positionReCalc = cms.PSet(),
34  energyCorrector = cms.PSet()
35 )
36 
37 
38 logWeightDenominatorByDetector2017= particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc.logWeightDenominatorByDetector
39 
40 logWeightDenominatorByDetector2018 = cms.VPSet(
41  cms.PSet( detector = cms.string("HCAL_BARREL1"),
42  depths = cms.vint32(1, 2, 3, 4),
43  logWeightDenominator = _thresholdsHB
44  ),
45  cms.PSet( detector = cms.string("HCAL_ENDCAP"),
46  depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
47  logWeightDenominator = _thresholdsHEphase1,
48  )
49  )
50 
51 logWeightDenominatorByDetector2019 = cms.VPSet(
52  cms.PSet( detector = cms.string("HCAL_BARREL1"),
53  depths = cms.vint32(1, 2, 3, 4),
54  logWeightDenominator = _thresholdsHBphase1,
55  ),
56  cms.PSet( detector = cms.string("HCAL_ENDCAP"),
57  depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
58  logWeightDenominator = _thresholdsHEphase1,
59  )
60  )
61 
62 logWeightDenominatorByDetectorPhase2 = cms.VPSet(
63  cms.PSet( detector = cms.string("HCAL_BARREL1"),
64  depths = cms.vint32(1, 2, 3, 4),
65  logWeightDenominator = _thresholdsHB,
66  ),
67  cms.PSet( detector = cms.string("HCAL_ENDCAP"),
68  depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
69  logWeightDenominator = _thresholdsHE,
70  )
71  )
72 
73 # offline 2018 -- uncollapsed
74 from Configuration.Eras.Modifier_run2_HCAL_2018_cff import run2_HCAL_2018
75 run2_HCAL_2018.toModify(particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc, logWeightDenominatorByDetector= logWeightDenominatorByDetector2018)
76 
77 from Configuration.Eras.Modifier_run2_HE_2018_cff import run2_HE_2018
78 run2_HE_2018.toModify(particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc, logWeightDenominatorByDetector= logWeightDenominatorByDetector2018)
79 
80 # offline 2018 -- collapsed
81 run2_HECollapse_2018 = cms.Modifier()
82 run2_HECollapse_2018.toModify(particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc, logWeightDenominatorByDetector= logWeightDenominatorByDetector2017)
83 
84 # offline 2019
85 from Configuration.Eras.Modifier_run3_HB_cff import run3_HB
86 run3_HB.toModify(particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc, logWeightDenominatorByDetector= logWeightDenominatorByDetector2019)
87 
88 # offline phase2 restore what has been studied in the TDR
89 from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal
90 phase2_hcal.toModify(particleFlowClusterHCAL.pfClusterBuilder.allCellsPositionCalc, logWeightDenominatorByDetector= logWeightDenominatorByDetectorPhase2)