CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
muonCSCDigis_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # This object is used to customise for different running scenarios, e.g. run2
4 
5 simMuonCSCDigis = cms.EDProducer("CSCDigiProducer",
6  strips = cms.PSet(
7  peakTimeSigma = cms.double(3.0),
8  timeBitForBxZero = cms.int32(6),
9  doNoise = cms.bool(True),
10  nScaBins = cms.int32(8),
11  doCrosstalk = cms.bool(True),
12  pedestal = cms.double(600.0),
13  gainsConstant = cms.double(0.27),
14  signalStartTime = cms.double(-250.0),
15  shapingTime = cms.int32(100),
16  comparatorTimeOffset = cms.double(15.0),
17  # bunchTimingOffsets
18  # Latest tuning by Vadim Khotilovich 16-Nov-2012 based on SingleMuPt10 relval sample.
19  # Validation plots: http://khotilov.web.cern.ch/khotilov/csc/digiBunchTimingOffsets/
20  # [Previous tuning by Chris Farrell
21  # http://indico.cern.ch/getFile.py/access?contribId=5&resId=0&materialId=slides&confId=111101]
22  bunchTimingOffsets = cms.vdouble(0.00, 40.52, 39.27, 57.28, 49.32, 56.27, 56.23, 54.73, 56.13, 53.65, 53.27),
23  signalSpeed = cms.vdouble(0.0, -78, -76, -188, -262, -97, -99, -90, -99, -99, -113),
24  timingCalibrationError = cms.vdouble(0., 4.2, 4.2, 0., 0., 0., 0., 0., 0., 0., 0.),
25  # parameters for tuning timing
26  scaTimingOffsets = cms.vdouble(0.0, 10., 10., 0.,0.,0.,0.,0.,0.,0.,0.),
27  ## this offset ensures that the central CLCT BX is 7 in simulation
28  comparatorTimeBinOffset = cms.double(4.0),
29  comparatorSamplingTime = cms.double(25.0),
30  scaPeakBin = cms.int32(5),
31  pedestalSigma = cms.double(1.5),
32  signalStopTime = cms.double(500.0),
33  readBadChannels = cms.bool(False),
34  readBadChambers = cms.bool(True),
35  CSCUseTimingCorrections = cms.bool(False),
36  CSCUseGasGainCorrections = cms.bool(False),
37  gain = cms.double(2.0), ## counts per fC
38 
39  capacativeCrosstalk = cms.double(35.0),
40  samplingTime = cms.double(25.0),
41  resistiveCrosstalkScaling = cms.double(1.8),
42  me11gain = cms.double(4.0),
43  doSuppression = cms.bool(False),
44  tailShaping = cms.int32(2),
45  ampGainSigma = cms.double(0.03),
46  doCorrelatedNoise = cms.bool(True)
47  ),
48  doNeutrons = cms.bool(False),
49 # neutrons = cms.PSet(
50 # luminosity = cms.double(0.1),
51 # eventOccupancy = cms.vdouble(0.000709, 0.000782, 0.000162, 0.000162, 0.00238,
52 # 0.000141, 0.00101, 0.000126, 0.000129),
53 # startTime = cms.double(-400.0),
54 # reader = cms.string('ROOT'),
55 # input = cms.FileInPath('SimMuon/CSCDigitizer/data/CSCNeutronHits.root'),
56 # endTime = cms.double(200.0)
57 # ),
58  wires = cms.PSet(
59  signalStopTime = cms.double(300.0),
60  # again, from http://indico.cern.ch/getFile.py/access?contribId=5&resId=0&materialId=slides&confId=111101
61  timingCalibrationError = cms.vdouble(0., 6.2, 6.2, 0., 0., 0., 0., 0., 0., 0., 0.),
62  signalStartTime = cms.double(-200.0),
63  signalSpeed = cms.vdouble(0.0, -700, 900, 160, 146, 148, 117, 131, 107, 123, 123),
64  peakTimeSigma = cms.double(0.0),
65  shapingTime = cms.int32(30),
66  readBadChannels = cms.bool(False),
67  timeBitForBxZero = cms.int32(8),
68  samplingTime = cms.double(5.0),
69  # bunchTimingOffsets - comments for strips (above) also apply
70  bunchTimingOffsets = cms.vdouble(0.00, 21.64, 21.64, 28.29, 29.36, 29.33, 28.57, 28.61, 28.83, 29.09, 28.22),
71  tailShaping = cms.int32(2),
72  doNoise = cms.bool(True)
73  ),
74 
75  mixLabel = cms.string("mix"),
76  InputCollection = cms.string("g4SimHitsMuonCSCHits"),
77 
78  stripConditions = cms.string('Database'),
79  GeometryType = cms.string('idealForDigi'),
80  digitizeBadChambers = cms.bool(False),
81  layersNeeded = cms.uint32(3),
82  dumpGasCollisions = cms.untracked.bool(False)
83 )
84 
85 ##
86 ## Change the the bunch timing offsets if running in Run 2
87 ##
88 from Configuration.Eras.Modifier_run2_common_cff import run2_common
89 run2_common.toModify( simMuonCSCDigis.strips, bunchTimingOffsets=[0.0, 37.53, 37.66, 55.4, 48.2, 54.45, 53.78, 53.38, 54.12, 51.98, 51.28] )
90 run2_common.toModify( simMuonCSCDigis.wires, bunchTimingOffsets=[0.0, 22.88, 22.55, 29.28, 30.0, 30.0, 30.5, 31.0, 29.5, 29.1, 29.88] )
91 
92 from Configuration.Eras.Modifier_fastSim_cff import fastSim
93 fastSim.toModify(simMuonCSCDigis, InputCollection = 'MuonSimHitsMuonCSCHits')
94 
95 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
96 premix_stage2.toModify(simMuonCSCDigis, mixLabel = "mixData")