1 |
import FWCore.ParameterSet.Config as cms
|
2 |
from FWCore.ParameterSet.VarParsing import VarParsing
|
3 |
|
4 |
options = VarParsing('analysis')
|
5 |
options.register('num', '', VarParsing.multiplicity.singleton, VarParsing.varType.int, '')
|
6 |
options.register('runnum', '', VarParsing.multiplicity.singleton, VarParsing.varType.string, '')
|
7 |
options.register('dbparams', '', VarParsing.multiplicity.singleton, VarParsing.varType.string, '')
|
8 |
|
9 |
options.parseArguments()
|
10 |
|
11 |
num = options.num
|
12 |
runnum = options.runnum
|
13 |
|
14 |
import os
|
15 |
os.environ['TNS_ADMIN']='/etc'
|
16 |
|
17 |
dbName = ''
|
18 |
dbHostName = ''
|
19 |
dbHostPort = 1521
|
20 |
dbUserName = ''
|
21 |
dbPassword = ''
|
22 |
|
23 |
try:
|
24 |
file = open(options.dbparams, 'r')
|
25 |
for line in file:
|
26 |
if line.find('dbName') >= 0:
|
27 |
dbName = line.split()[2]
|
28 |
if line.find('dbHostName') >= 0:
|
29 |
dbHostName = line.split()[2]
|
30 |
if line.find('dbHostPort') >= 0:
|
31 |
dbHostPort = int(line.split()[2])
|
32 |
if line.find('dbUserName') >= 0:
|
33 |
dbUserName = line.split()[2]
|
34 |
if line.find('dbPassword') >= 0:
|
35 |
dbPassword = line.split()[2]
|
36 |
file.close()
|
37 |
except IOError:
|
38 |
pass
|
39 |
|
40 |
process = cms.Process("ECALDQM")
|
41 |
|
42 |
process.load("EventFilter.EcalRawToDigi.EcalUnpackerMapping_cfi")
|
43 |
|
44 |
process.load("EventFilter.EcalRawToDigi.EcalUnpackerData_cfi")
|
45 |
|
46 |
process.load("Geometry.EcalMapping.EcalMapping_cfi")
|
47 |
|
48 |
process.load("Geometry.EcalMapping.EcalMappingRecord_cfi")
|
49 |
|
50 |
process.load("CalibCalorimetry.EcalTrivialCondModules.EcalTrivialCondRetriever_cfi")
|
51 |
|
52 |
process.ecalPedOffset = cms.EDAnalyzer("EcalPedOffset",
|
53 |
EBdigiCollection = cms.InputTag("ecalEBunpacker","ebDigis"),
|
54 |
EEdigiCollection = cms.InputTag("ecalEBunpacker","eeDigis"),
|
55 |
headerCollection = cms.InputTag("ecalEBunpacker"),
|
56 |
|
57 |
DACmin = cms.untracked.int32(40),
|
58 |
DACmax = cms.untracked.int32(90),
|
59 |
RMSmax = cms.untracked.double(20.0),
|
60 |
|
61 |
bestPed = cms.untracked.int32(200),
|
62 |
minSlopeAllowed = cms.untracked.double(-18.0),
|
63 |
maxSlopeAllowed = cms.untracked.double(-29.0),
|
64 |
maxChi2OverNDF = cms.untracked.double(5.25),
|
65 |
|
66 |
dbName = cms.untracked.string(dbName),
|
67 |
dbHostName = cms.untracked.string(dbHostName),
|
68 |
dbHostPort = cms.untracked.int32(dbHostPort),
|
69 |
dbUserName = cms.untracked.string(dbUserName),
|
70 |
dbPassword = cms.untracked.string(dbPassword),
|
71 |
|
72 |
createMonIOV = cms.untracked.bool(False),
|
73 |
location = cms.untracked.string('P5_Co'),
|
74 |
run = cms.int32(num),
|
75 |
xmlFile = cms.string('pedestal-offset-' + runnum),
|
76 |
plotting = cms.string('pedestal-offset-' + runnum)
|
77 |
)
|
78 |
|
79 |
process.printAscii = cms.OutputModule("AsciiOutputModule",
|
80 |
prescale = cms.untracked.uint32(10)
|
81 |
)
|
82 |
|
83 |
process.source = cms.Source("NewEventStreamFileReader",
|
84 |
fileNames = cms.untracked.vstring(
|
85 |
options.inputFiles
|
86 |
)
|
87 |
)
|
88 |
|
89 |
process.MessageLogger = cms.Service("MessageLogger",
|
90 |
cout = cms.untracked.PSet(
|
91 |
threshold = cms.untracked.string('WARNING'),
|
92 |
noLineBreaks = cms.untracked.bool(True),
|
93 |
noTimeStamps = cms.untracked.bool(True),
|
94 |
default = cms.untracked.PSet(
|
95 |
limit = cms.untracked.int32(0)
|
96 |
),
|
97 |
EcalRawToDigi = cms.untracked.PSet(
|
98 |
limit = cms.untracked.int32(1000)
|
99 |
),
|
100 |
EcalRawToDigiTriggerType = cms.untracked.PSet(
|
101 |
limit = cms.untracked.int32(1000)
|
102 |
),
|
103 |
EcalRawToDigiTpg = cms.untracked.PSet(
|
104 |
limit = cms.untracked.int32(1000)
|
105 |
),
|
106 |
EcalRawToDigiNumTowerBlocks = cms.untracked.PSet(
|
107 |
limit = cms.untracked.int32(1000)
|
108 |
),
|
109 |
EcalRawToDigiTowerId = cms.untracked.PSet(
|
110 |
limit = cms.untracked.int32(1000)
|
111 |
),
|
112 |
EcalRawToDigiTowerSize = cms.untracked.PSet(
|
113 |
limit = cms.untracked.int32(1000)
|
114 |
),
|
115 |
EcalRawToDigiChId = cms.untracked.PSet(
|
116 |
limit = cms.untracked.int32(1000)
|
117 |
),
|
118 |
EcalRawToDigiGainZero = cms.untracked.PSet(
|
119 |
limit = cms.untracked.int32(1000)
|
120 |
),
|
121 |
EcalRawToDigiGainSwitch = cms.untracked.PSet(
|
122 |
limit = cms.untracked.int32(1000)
|
123 |
),
|
124 |
EcalRawToDigiDccBlockSize = cms.untracked.PSet(
|
125 |
limit = cms.untracked.int32(1000)
|
126 |
),
|
127 |
EcalRawToDigiMemBlock = cms.untracked.PSet(
|
128 |
limit = cms.untracked.int32(1000)
|
129 |
),
|
130 |
EcalRawToDigiMemTowerId = cms.untracked.PSet(
|
131 |
limit = cms.untracked.int32(1000)
|
132 |
),
|
133 |
EcalRawToDigiMemChId = cms.untracked.PSet(
|
134 |
limit = cms.untracked.int32(1000)
|
135 |
),
|
136 |
EcalRawToDigiMemGain = cms.untracked.PSet(
|
137 |
limit = cms.untracked.int32(1000)
|
138 |
),
|
139 |
EcalRawToDigiTCC = cms.untracked.PSet(
|
140 |
limit = cms.untracked.int32(1000)
|
141 |
),
|
142 |
EcalRawToDigiSRP = cms.untracked.PSet(
|
143 |
limit = cms.untracked.int32(1000)
|
144 |
),
|
145 |
EcalDCCHeaderRuntypeDecoder = cms.untracked.PSet(
|
146 |
limit = cms.untracked.int32(1000)
|
147 |
),
|
148 |
EcalPedOffset = cms.untracked.PSet(
|
149 |
limit = cms.untracked.int32(1000)
|
150 |
)
|
151 |
),
|
152 |
categories = cms.untracked.vstring('EcalRawToDigi',
|
153 |
'EcalRawToDigiTriggerType',
|
154 |
'EcalRawToDigiTpg',
|
155 |
'EcalRawToDigiNumTowerBlocks',
|
156 |
'EcalRawToDigiTowerId',
|
157 |
'EcalRawToDigiTowerSize',
|
158 |
'EcalRawToDigiChId',
|
159 |
'EcalRawToDigiGainZero',
|
160 |
'EcalRawToDigiGainSwitch',
|
161 |
'EcalRawToDigiDccBlockSize',
|
162 |
'EcalRawToDigiMemBlock',
|
163 |
'EcalRawToDigiMemTowerId',
|
164 |
'EcalRawToDigiMemChId',
|
165 |
'EcalRawToDigiMemGain',
|
166 |
'EcalRawToDigiTCC',
|
167 |
'EcalRawToDigiSRP',
|
168 |
'EcalDCCHeaderRuntypeDecoder',
|
169 |
'EcalPedOffset'),
|
170 |
destinations = cms.untracked.vstring('cout')
|
171 |
)
|
172 |
|
173 |
process.p = cms.Path(process.ecalEBunpacker*process.ecalPedOffset)
|
174 |
process.q = cms.EndPath(process.printAscii)
|
175 |
|
176 |
process.ecalEBunpacker.silentMode = True
|
177 |
#process.ecalEBunpacker.InputLabel = cms.InputTag('rawDataCollector')
|