File indexing completed on 2024-11-25 02:29:25
0001 import FWCore.ParameterSet.Config as cms
0002 import FWCore.ParameterSet.VarParsing as VarParsing
0003 import copy
0004
0005 process = cms.Process("Demo")
0006
0007
0008
0009 options = VarParsing.VarParsing("analysis")
0010
0011 options.register ('globalTag',
0012 "auto:run2_data",
0013 VarParsing.VarParsing.multiplicity.singleton,
0014 VarParsing.VarParsing.varType.string,
0015 "GlobalTag")
0016
0017 options.register ('runNumber',
0018 306054,
0019 VarParsing.VarParsing.multiplicity.singleton,
0020 VarParsing.VarParsing.varType.int,
0021 "run number")
0022
0023 options.parseArguments()
0024
0025
0026
0027
0028
0029 process.load('FWCore.MessageService.MessageLogger_cfi')
0030 process.MessageLogger.cerr.enable = False
0031 process.MessageLogger.SiStripNoisesFromDBMiscalibrator=dict()
0032 process.MessageLogger.cout = cms.untracked.PSet(
0033 enable = cms.untracked.bool(True),
0034 enableStatistics = cms.untracked.bool(True),
0035 threshold = cms.untracked.string("WARNING"),
0036 default = cms.untracked.PSet(limit = cms.untracked.int32(0)),
0037 FwkReport = cms.untracked.PSet(limit = cms.untracked.int32(-1),
0038 reportEvery = cms.untracked.int32(1000)
0039 ),
0040 SiStripNoisesFromDBMiscalibrator = cms.untracked.PSet( limit = cms.untracked.int32(-1))
0041 )
0042
0043 process.load("Configuration.Geometry.GeometryRecoDB_cff")
0044 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0045 from Configuration.AlCa.GlobalTag import GlobalTag
0046 process.GlobalTag = GlobalTag(process.GlobalTag,options.globalTag, '')
0047
0048 print("Using Global Tag:", process.GlobalTag.globaltag._value)
0049
0050
0051
0052
0053 process.source = cms.Source("EmptySource",
0054 firstRun = cms.untracked.uint32(options.runNumber),
0055 numberEventsInRun = cms.untracked.uint32(1),
0056 )
0057
0058
0059 process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1) )
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074 byPartition = cms.VPSet(
0075 cms.PSet(partition = cms.string("TEC"),
0076 doScale = cms.bool(True),
0077 doSmear = cms.bool(False),
0078 scaleFactor = cms.double(1.2),
0079 smearFactor = cms.double(0.04)
0080 ),
0081 cms.PSet(partition = cms.string("TOB"),
0082 doScale = cms.bool(True),
0083 doSmear = cms.bool(False),
0084 scaleFactor = cms.double(0.94),
0085 smearFactor = cms.double(0.03)
0086 ),
0087 cms.PSet(partition = cms.string("TIB"),
0088 doScale = cms.bool(True),
0089 doSmear = cms.bool(False),
0090 scaleFactor = cms.double(1.1),
0091 smearFactor = cms.double(0.02)
0092 ),
0093 cms.PSet(partition = cms.string("TID"),
0094 doScale = cms.bool(True),
0095 doSmear = cms.bool(False),
0096 scaleFactor = cms.double(0.22),
0097 smearFactor = cms.double(0.01)
0098 )
0099 )
0100
0101
0102
0103
0104
0105 wholeTracker = cms.VPSet(
0106 cms.PSet(partition = cms.string("Tracker"),
0107 doScale = cms.bool(True),
0108 doSmear = cms.bool(True),
0109 scaleFactor = cms.double(1.00),
0110 smearFactor = cms.double(0.00)
0111 )
0112 )
0113
0114
0115
0116
0117
0118 byLayerOnlyTIB = cms.VPSet(
0119
0120
0121
0122 cms.PSet(partition = cms.string("TIB_1"),
0123 doScale = cms.bool(True),
0124 doSmear = cms.bool(True),
0125 scaleFactor = cms.double(1),
0126 smearFactor = cms.double(0.1)
0127 ),
0128 cms.PSet(partition = cms.string("TIB_2"),
0129 doScale = cms.bool(True),
0130 doSmear = cms.bool(True),
0131 scaleFactor = cms.double(2),
0132 smearFactor = cms.double(0.25)
0133 ),
0134 cms.PSet(partition = cms.string("TIB_3"),
0135 doScale = cms.bool(True),
0136 doSmear = cms.bool(True),
0137 scaleFactor = cms.double(3),
0138 smearFactor = cms.double(0.2)
0139 ),
0140 cms.PSet(partition = cms.string("TIB_4"),
0141 doScale = cms.bool(True),
0142 doSmear = cms.bool(True),
0143 scaleFactor = cms.double(4),
0144 smearFactor = cms.double(0.01)
0145 )
0146 )
0147
0148
0149
0150
0151
0152 subsets = cms.VPSet(
0153 cms.PSet(partition = cms.string("Tracker"),
0154 doScale = cms.bool(True),
0155 doSmear = cms.bool(True),
0156 scaleFactor = cms.double(0.65),
0157 smearFactor = cms.double(0.05)
0158 ),
0159 cms.PSet(partition = cms.string("TEC"),
0160 doScale = cms.bool(True),
0161 doSmear = cms.bool(True),
0162 scaleFactor = cms.double(1.15),
0163 smearFactor = cms.double(0.02)
0164 ),
0165 cms.PSet(partition = cms.string("TECP"),
0166 doScale = cms.bool(True),
0167 doSmear = cms.bool(True),
0168 scaleFactor = cms.double(1.35),
0169 smearFactor = cms.double(0.02)
0170 ),
0171 cms.PSet(partition = cms.string("TECP_9"),
0172 doScale = cms.bool(True),
0173 doSmear = cms.bool(True),
0174 scaleFactor = cms.double(1.55),
0175 smearFactor = cms.double(0.02)
0176 )
0177 )
0178
0179
0180
0181
0182 autoparams=[]
0183 listOfLayers=["TIB_1","TIB_2","TIB_3","TIB_4","TOB_1","TOB_2","TOB_3","TOB_4","TOB_5","TOB_6","TIDM_1","TIDM_2","TIDM_3","TECM_1","TECM_2","TECM_3","TECM_4","TECM_5","TECM_6","TECM_7","TECM_8","TECM_9","TIDP_1","TIDP_2","TIDP_3","TECP_1","TECP_2","TECP_3","TECP_4","TECP_5","TECP_6","TECP_7","TECP_8","TECP_9"]
0184
0185 for i,ll in enumerate(listOfLayers):
0186 autoparams.append(
0187 cms.PSet(
0188 partition = cms.string(ll),
0189 doScale = cms.bool(True),
0190 doSmear = cms.bool(True),
0191 scaleFactor = cms.double(i*0.1),
0192 smearFactor = cms.double((len(listOfLayers)-i)*0.01)
0193 )
0194 )
0195
0196
0197
0198
0199
0200
0201
0202
0203
0204
0205
0206 import CondTools.SiStrip.MiscalibrationSettings_cff as Settings
0207 eachLayer = copy.deepcopy(Settings.byLayer)
0208
0209 process.load("CondTools.SiStrip.scaleAndSmearSiStripNoises_cfi")
0210
0211
0212
0213
0214
0215 process.scaleAndSmearSiStripNoises.params = autoparams
0216 process.scaleAndSmearSiStripNoises.fillDefaults = False
0217
0218
0219
0220
0221 process.PoolDBOutputService = cms.Service("PoolDBOutputService",
0222 BlobStreamerName = cms.untracked.string('TBufferBlobStreamingService'),
0223 DBParameters = cms.PSet(
0224 messageLevel = cms.untracked.int32(3),
0225 authenticationPath = cms.untracked.string('/afs/cern.ch/cms/DB/conddb')
0226 ),
0227 timetype = cms.untracked.string('runnumber'),
0228 connect = cms.string('sqlite_file:modifiedSiStripNoise_%s_IOV_%s.db' % ( process.GlobalTag.globaltag._value, str(options.runNumber))),
0229 toPut = cms.VPSet(cms.PSet(
0230 record = cms.string('SiStripNoisesRcd'),
0231 tag = cms.string('modifiedNoise')
0232 ))
0233 )
0234
0235 process.p = cms.Path(process.scaleAndSmearSiStripNoises)