CMS 3D CMS Logo

HGCalRecHit_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
4 
5 dEdX = cms.PSet(
6  # for v10 geometry
7  weights = cms.vdouble(0.0, # there is no layer zero
8  8.894541, # MeV
9  10.937907,
10  10.937907,
11  10.937907,
12  10.937907,
13  10.937907,
14  10.937907,
15  10.937907,
16  10.937907,
17  10.932882,
18  10.932882,
19  10.937907,
20  10.937907,
21  10.938169,
22  10.938169,
23  10.938169,
24  10.938169,
25  10.938169,
26  10.938169,
27  10.938169,
28  10.938169,
29  10.938169,
30  10.938169,
31  10.938169,
32  10.938169,
33  10.938169,
34  10.938169,
35  32.332097,
36  51.574301,
37  51.444192,
38  51.444192,
39  51.444192,
40  51.444192,
41  51.444192,
42  51.444192,
43  51.444192,
44  51.444192,
45  51.444192,
46  51.444192,
47  69.513118,
48  87.582044,
49  87.582044,
50  87.582044,
51  87.582044,
52  87.582044,
53  87.214571,
54  86.888309,
55  86.929520,
56  86.929520,
57  86.929520),
58 
59  weightsNose = cms.vdouble(0.0, # there is no layer zero
60  39.500245, # MeV
61  39.756638,
62  39.756638,
63  39.756638,
64  39.756638,
65  66.020266,
66  92.283895,
67  92.283895)
68 )
69 
70 # HGCAL rechit producer
71 HGCalRecHit = cms.EDProducer(
72  "HGCalRecHitProducer",
73  HGCEErechitCollection = cms.string('HGCEERecHits'),
74  HGCEEuncalibRecHitCollection = cms.InputTag('HGCalUncalibRecHit:HGCEEUncalibRecHits'),
75  HGCHEFrechitCollection = cms.string('HGCHEFRecHits'),
76  HGCHEFuncalibRecHitCollection = cms.InputTag('HGCalUncalibRecHit:HGCHEFUncalibRecHits'),
77  HGCHEBrechitCollection = cms.string('HGCHEBRecHits'),
78  HGCHEBuncalibRecHitCollection = cms.InputTag('HGCalUncalibRecHit:HGCHEBUncalibRecHits'),
79  HGCHFNoserechitCollection = cms.string('HGCHFNoseRecHits'),
80  HGCHFNoseuncalibRecHitCollection = cms.InputTag('HGCalUncalibRecHit:HGCHFNoseUncalibRecHits'),
81 
82 
83  # digi constants
84  HGCEE_keV2DIGI = hgceeDigitizer.digiCfg.keV2fC,
85  HGCEE_isSiFE = HGCalUncalibRecHit.HGCEEConfig.isSiFE,
86  HGCEE_fCPerMIP = HGCalUncalibRecHit.HGCEEConfig.fCPerMIP,
87  HGCHEF_keV2DIGI = hgchefrontDigitizer.digiCfg.keV2fC,
88  HGCHEF_isSiFE = HGCalUncalibRecHit.HGCHEFConfig.isSiFE,
89  HGCHEF_fCPerMIP = HGCalUncalibRecHit.HGCHEFConfig.fCPerMIP,
90  HGCHEB_keV2DIGI = hgchebackDigitizer.digiCfg.keV2MIP,
91  HGCHEB_isSiFE = HGCalUncalibRecHit.HGCHEBConfig.isSiFE,
92  HGCHFNose_keV2DIGI = hfnoseDigitizer.digiCfg.keV2fC,
93  HGCHFNose_isSiFE = HGCalUncalibRecHit.HGCHFNoseConfig.isSiFE,
94  HGCHFNose_fCPerMIP = HGCalUncalibRecHit.HGCHFNoseConfig.fCPerMIP,
95  # don't produce rechit if detid is a ghost one
96  rangeMask = cms.uint32(4294442496),
97  rangeMatch = cms.uint32(1161838592),
98 
99 
100  # EM Scale calibrations
101  layerWeights = dEdX.weights,
102  layerNoseWeights = dEdX.weightsNose,
103 
104  #With the new regional em factors there are 7 different factors used.
105  #Six of them are for silicon and one for scint. For silicon it is in the following order
106  # CE_E_120um, CE_E_200um, CE_E_300um, CE_H_120um, CE_H_200um, CE_H_300um
107  thicknessCorrection = cms.vdouble(1.132,1.092,1.084,1.0,1.0,1.0),
108  deltasi_index_regemfac = cms.int32(3),
109  #One factor for scint
110  sciThicknessCorrection = cms.double(1.0),
111  thicknessNoseCorrection = cms.vdouble(1.132,1.092,1.084), # 100, 200, 300 um
112 
113  HGCEE_noise_fC = hgceeDigitizer.digiCfg.noise_fC,
114  HGCEE_cce = hgceeDigitizer.digiCfg.chargeCollectionEfficiencies,
115  HGCHEF_noise_fC = hgchefrontDigitizer.digiCfg.noise_fC,
116  HGCHEF_cce = hgchefrontDigitizer.digiCfg.chargeCollectionEfficiencies,
117  HGCHEB_noise_MIP = hgchebackDigitizer.digiCfg.noise,
118  HGCHFNose_noise_fC = hfnoseDigitizer.digiCfg.noise_fC,
119  HGCHFNose_cce = hfnoseDigitizer.digiCfg.chargeCollectionEfficiencies,
120 
121  # expected resolution on time for recHits - ns units
122  minValSiPar = cms.double(10.),
123  maxValSiPar = cms.double(1.e4),
124  noiseSiPar = cms.double(5.5),
125  constSiPar = cms.double(0.02),
126 
127  # algo
128  algo = cms.string("HGCalRecHitWorkerSimple")
129 
130  )
131 
132 # For silicon the order is: CE_E_120um, CE_E_200um, CE_E_300um, CE_H_120um, CE_H_200um, CE_H_300um
133 phase2_hgcalV10.toModify( HGCalRecHit , thicknessCorrection = [0.77, 0.77, 0.77, 0.84, 0.84, 0.84] , sciThicknessCorrection = 0.90 )
134 
135 phase2_hfnose.toModify( HGCalRecHit , thicknessNoseCorrection = [0.759,0.760,0.773])
hgcalDigitizer_cfi
HGCalUncalibRecHit_cfi