1 AlCaRecoMatrix = {
'AlCaLumiPixels' :
'LumiPixels',
2 'Charmonium' :
'TkAlJpsiMuMu',
3 'Commissioning' :
'HcalCalIsoTrk+HcalCalIsolatedBunchSelector',
4 'Cosmics' :
'TkAlCosmics0T+MuAlGlobalCosmics+HcalCalHOCosmics+DtCalibCosmics',
5 'DoubleEG' :
'EcalCalZElectron+EcalUncalZElectron+HcalCalIterativePhiSym+HcalCalIsoTrkFilter',
6 'DoubleElectron' :
'EcalCalZElectron+EcalUncalZElectron+HcalCalIsoTrkFilter',
7 'DoubleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu',
8 'DoubleMuon' :
'TkAlZMuMu+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+DtCalib',
9 'DoubleMuParked' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu',
10 'HLTPhysics' :
'SiStripCalMinBias+TkAlMinBias+HcalCalIsoTrkFilter',
11 'JetHT' :
'HcalCalDijets+HcalCalIsoTrkFilter+HcalCalIsolatedBunchFilter',
12 'NoBPTX' :
'TkAlCosmicsInCollisions',
13 'MET' :
'HcalCalNoise',
14 'MinimumBias' :
'SiStripCalMinBias+TkAlMinBias',
15 'MuOnia' :
'TkAlJpsiMuMu+TkAlUpsilonMuMu',
16 'MuOniaParked' :
'TkAlJpsiMuMu+TkAlUpsilonMuMu',
17 'SingleElectron' :
'EcalCalWElectron+EcalUncalWElectron+EcalCalZElectron+EcalUncalZElectron+EcalESAlign+HcalCalIterativePhiSym+HcalCalIsoTrkFilter',
18 'SingleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+TkAlMuonIsolated+DtCalib+MuAlZMuMu+HcalCalHO',
19 'SingleMuon' :
'TkAlMuonIsolated+DtCalib+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+HcalCalIterativePhiSym+HcalCalHBHEMuonFilter',
20 'SinglePhoton' :
'HcalCalGammaJet',
21 'ZeroBias' :
'SiStripCalZeroBias+TkAlMinBias+LumiPixelsMinBias+SiStripCalMinBias+EcalTrg',
22 'StreamExpress' :
'SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAfterAbortGap+DtCalib+Hotline+LumiPixelsMinBias',
23 'StreamExpressHI':
'SiStripCalZeroBias+TkAlMinBiasHI+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAfterAbortGap+DtCalibHI',
24 'ExpressCosmics' :
'SiStripCalZeroBias+TkAlCosmics0T',
28 'HcalNZS' :
'HcalCalMinBias'
34 AlCaRecoMatrixRereco = {
'AlCaLumiPixels' :
'LumiPixels',
35 'Charmonium' :
'TkAlJpsiMuMu',
36 'Commissioning' :
'TkAlMinBias+SiStripCalMinBias+HcalCalIsoTrk+HcalCalIsolatedBunchSelector',
37 'Cosmics' :
'TkAlCosmics0T+MuAlGlobalCosmics+HcalCalHOCosmics+DtCalibCosmics',
38 'DoubleEG' :
'EcalUncalZElectron+HcalCalIterativePhiSym+HcalCalIsoTrkFilter',
39 'DoubleElectron' :
'EcalUncalZElectron+HcalCalIsoTrkFilter',
40 'DoubleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu+MuAlZMuMu+TkAlZMuMu+TkAlJpsiMuMu+TkAlUpsilonMuMu+HcalCalIsoTrkFilter',
41 'DoubleMuon' :
'TkAlZMuMu+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+DtCalib',
42 'DoubleMuParked' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu',
43 'HLTPhysics' :
'SiStripCalMinBias+TkAlMinBias+HcalCalIsoTrkFilter',
44 'JetHT' :
'HcalCalDijets+HcalCalIsoTrkFilter+HcalCalIsolatedBunchFilter',
45 'NoBPTX' :
'TkAlCosmicsInCollisions',
46 'MET' :
'HcalCalNoise',
47 'MinimumBias' :
'SiStripCalMinBias+TkAlMinBias',
48 'MuOnia' :
'TkAlUpsilonMuMu',
49 'SingleElectron' :
'EcalUncalWElectron+EcalUncalZElectron+EcalESAlign+HcalCalIterativePhiSym+HcalCalIsoTrkFilter',
50 'SingleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+TkAlMuonIsolated+DtCalib+MuAlZMuMu+HcalCalHO',
51 'SingleMuon' :
'TkAlMuonIsolated+DtCalib+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+HcalCalIterativePhiSym+HcalCalHO',
52 'SinglePhoton' :
'HcalCalGammaJet',
53 'ZeroBias' :
'SiStripCalZeroBias+TkAlMinBias+LumiPixelsMinBias+SiStripCalMinBias',
54 'HcalNZS' :
'HcalCalMinBias'
58 """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."""
61 alCaRecoList.extend(matrix[pd].
split(
"+"))
63 alCaRecoList = set(alCaRecoList)
65 for alCaReco
in alCaRecoList:
67 stringList += alCaReco
69 stringList +=
'+'+alCaReco
73 autoAlca = {
'allForPrompt' :
buildList([
'Charmonium',
'Commissioning',
'DoubleEG',
'DoubleElectron',
'DoubleMu',
'DoubleMuParked',
'DoubleMuon',
'HLTPhysics',
'HcalNZS',
'JetHT',
'MET',
'MinimumBias',
'MuOnia',
'MuOniaParked',
'NoBPTX',
'SingleElectron',
'SingleMu',
'SingleMuon',
'SinglePhoton',
'ZeroBias'], AlCaRecoMatrix),
74 'allForExpress' :
buildList([
'StreamExpress'], AlCaRecoMatrix),
75 'allForExpressHI' :
buildList([
'StreamExpressHI'], AlCaRecoMatrix),
76 'allForPromptCosmics' :
buildList([
'Cosmics'], AlCaRecoMatrix),
77 'allForExpressCosmics' :
buildList([
'ExpressCosmics'], AlCaRecoMatrix) }
78 autoAlca.update(AlCaRecoMatrix)