2 "ALCALumiPixelsCountsExpress" :
"AlCaPCCRandom",
3 "AlCaLumiPixelsCountsPrompt" :
"AlCaPCCZeroBias+RawPCCProducer",
7 "ALCAPPS" :
"PPSCalMaxTracks",
8 "AlCaPPS" :
"PPSCalMaxTracks",
9 "Charmonium" :
"TkAlJpsiMuMu",
10 "Commissioning" :
"HcalCalIsoTrk+HcalCalIsolatedBunchSelector+TkAlMinBias+SiStripCalMinBias",
11 "Cosmics" :
"SiPixelCalCosmics+SiStripCalCosmics+TkAlCosmics0T+MuAlGlobalCosmics",
12 "DoubleMuon" :
"TkAlZMuMu+TkAlDiMuonAndVertex+MuAlCalIsolatedMu",
13 "DoubleMuonLowMass" :
"TkAlJpsiMuMu+TkAlUpsilonMuMu",
14 "DoubleMuParked" :
"MuAlCalIsolatedMu+MuAlOverlaps+TkAlZMuMu",
15 "EGamma" :
"EcalESAlign+EcalUncalWElectron+EcalUncalZElectron+HcalCalIsoTrkProducerFilter+HcalCalIterativePhiSym",
16 "Express" :
"SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias",
17 "ExpressAlignment" :
"TkAlMinBias",
18 "ExpressCosmics" :
"SiStripPCLHistos+SiStripCalZeroBias+TkAlCosmics0T+SiPixelCalZeroBias",
19 "HcalNZS" :
"HcalCalMinBias",
20 "HLTPhysics" :
"TkAlMinBias",
21 "JetHT" :
"HcalCalIsoTrkProducerFilter+TkAlJetHT",
22 "MET" :
"HcalCalNoise",
23 "MinimumBias" :
"SiStripCalZeroBias+SiStripCalMinBias+TkAlMinBias",
24 "MuOnia" :
"TkAlUpsilonMuMu",
25 "MuOniaParked" :
"TkAlJpsiMuMu+TkAlUpsilonMuMu",
26 "NoBPTX" :
"TkAlCosmicsInCollisions",
27 "SingleMuon" :
"SiPixelCalSingleMuonLoose+SiPixelCalSingleMuonTight+TkAlMuonIsolated+MuAlCalIsolatedMu+HcalCalHO+HcalCalIterativePhiSym+HcalCalHBHEMuonProducerFilter",
28 "StreamExpress" :
"SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias+SiPixelCalSingleMuon+PPSCalTrackBasedSel",
29 "StreamExpressHI" :
"SiStripCalZeroBias+TkAlMinBiasHI+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+SiPixelCalZeroBias",
33 "ZeroBias" :
"SiStripCalZeroBias+TkAlMinBias+SiStripCalMinBias",
38 """Takes a list of primary datasets (PDs) and the AlCaRecoMatrix (a dictinary) and returns a string with all the AlCaRecos for the selected PDs separated by the '+' character without duplicates.""" 41 alCaRecoList.extend(matrix[pd].
split(
"+"))
43 alCaRecoList = set(alCaRecoList)
45 for alCaReco
in alCaRecoList:
47 stringList += alCaReco
49 stringList +=
'+'+alCaReco
53 autoAlca = {
'allForPrompt' :
buildList([
'Charmonium',
'Commissioning',
'DoubleMuParked',
'DoubleMuon',
'DoubleMuonLowMass',
'EGamma',
'HLTPhysics',
'HcalNZS',
'JetHT',
'MET',
'MinimumBias',
'MuOnia',
'MuOniaParked',
'NoBPTX',
'SingleMuon',
'ZeroBias'], AlCaRecoMatrix),
54 'allForExpress' :
buildList([
'StreamExpress',
'ALCALumiPixelsCountsExpress'], AlCaRecoMatrix),
55 'allForExpressHI' :
buildList([
'StreamExpressHI'], AlCaRecoMatrix),
56 'allForPromptCosmics' :
buildList([
'Cosmics'], AlCaRecoMatrix),
57 'allForExpressCosmics' :
buildList([
'ExpressCosmics'], AlCaRecoMatrix) }
58 autoAlca.update(AlCaRecoMatrix)
61 AlCaNoConcurrentLumis = [
63 'PromptCalibProdSiPixelAli',
64 'PromptCalibProdBeamSpotHP',
65 'PromptCalibProdBeamSpotHPLowPU',
def buildList(pdList, matrix)
def split(sequence, size)