CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
autoAlca.py
Go to the documentation of this file.
1 AlCaRecoMatrix = {
2  "ALCALumiPixelsCountsExpress" : "AlCaPCCRandom",
3  "AlCaLumiPixelsCountsPrompt" : "AlCaPCCZeroBias+RawPCCProducer",
4  # These two (AlCaPhiSym, AlCaP0) cannot run on RAW, they are just meant to run on the dedicated AlcaRAW so they do not enter the allForPrompt list
5  "AlCaPhiSym" : "",
6  "AlCaP0" : "",
7  "ALCAPPS" : "PPSCalMaxTracks", # Express producer
8  "AlCaPPS" : "PPSCalMaxTracks", # Prompt producer
9  "Charmonium" : "TkAlJpsiMuMu",
10  "Commissioning" : "HcalCalIsoTrk+HcalCalIsolatedBunchSelector+TkAlMinBias+SiStripCalMinBias",
11  "Cosmics" : "SiPixelCalCosmics+SiStripCalCosmics+TkAlCosmics0T+MuAlGlobalCosmics",
12  "DoubleMuon" : "TkAlZMuMu+TkAlDiMuonAndVertex+MuAlCalIsolatedMu",
13  "DoubleMuParked" : "MuAlCalIsolatedMu+MuAlOverlaps+TkAlZMuMu",
14  "EGamma" : "EcalESAlign+EcalUncalWElectron+EcalUncalZElectron+HcalCalIsoTrkProducerFilter+HcalCalIterativePhiSym",
15  "Express" : "SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias",
16  "ExpressAlignment" : "TkAlMinBias",
17  "ExpressCosmics" : "SiStripPCLHistos+SiStripCalZeroBias+TkAlCosmics0T+SiPixelCalZeroBias",
18  "HcalNZS" : "HcalCalMinBias",
19  "HLTPhysics" : "TkAlMinBias",
20  "JetHT" : "HcalCalIsoTrkProducerFilter+TkAlMinBias",
21  "MET" : "HcalCalNoise",
22  "MinimumBias" : "SiStripCalZeroBias+SiStripCalMinBias+TkAlMinBias",
23  "MuOnia" : "TkAlUpsilonMuMu",
24  "MuOniaParked" : "TkAlJpsiMuMu+TkAlUpsilonMuMu",
25  "NoBPTX" : "TkAlCosmicsInCollisions",
26  "SingleMuon" : "SiPixelCalSingleMuonLoose+SiPixelCalSingleMuonTight+TkAlMuonIsolated+MuAlCalIsolatedMu+HcalCalHO+HcalCalIterativePhiSym+HcalCalHBHEMuonProducerFilter",
27  "StreamExpress" : "SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias+SiPixelCalSingleMuon+PPSCalTrackBasedSel",
28  "StreamExpressHI" : "SiStripCalZeroBias+TkAlMinBiasHI+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+SiPixelCalZeroBias",
29  # These (TestEnablesTracker, TestEnablesEcalHcal) are in the AlCaRecoMatrix, but no RelVals are produced
30  # 'TestEnablesTracker' : 'TkAlLAS'
31  # 'TestEnablesEcalHcal' : 'HcalCalPedestal'
32  "ZeroBias" : "SiStripCalZeroBias+TkAlMinBias+SiStripCalMinBias",
33  }
34 
35 
36 def buildList(pdList, matrix):
37  """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."""
38  alCaRecoList = []
39  for pd in pdList:
40  alCaRecoList.extend(matrix[pd].split("+"))
41  # remove duplicates converting to a set
42  alCaRecoList = set(alCaRecoList)
43  stringList = ''
44  for alCaReco in alCaRecoList:
45  if stringList == '':
46  stringList += alCaReco
47  else:
48  stringList += '+'+alCaReco
49  return stringList
50 
51 # Update the lists anytime a new PD is added to the matrix
52 autoAlca = { 'allForPrompt' : buildList(['Charmonium', 'Commissioning', 'DoubleMuParked', 'DoubleMuon', 'EGamma', 'HLTPhysics', 'HcalNZS', 'JetHT', 'MET', 'MinimumBias', 'MuOnia', 'MuOniaParked', 'NoBPTX', 'SingleMuon', 'ZeroBias'], AlCaRecoMatrix),
53  'allForExpress' : buildList(['StreamExpress', 'ALCALumiPixelsCountsExpress'], AlCaRecoMatrix),
54  'allForExpressHI' : buildList(['StreamExpressHI'], AlCaRecoMatrix),
55  'allForPromptCosmics' : buildList(['Cosmics'], AlCaRecoMatrix),
56  'allForExpressCosmics' : buildList(['ExpressCosmics'], AlCaRecoMatrix) }
57 autoAlca.update(AlCaRecoMatrix)
58 
59 # list of AlCa sequences that have modules that do not support concurrent LuminosityBlocks
60 AlCaNoConcurrentLumis = [
61  'PromptCalibProd', # AlcaBeamSpotProducer
62  'PromptCalibProdSiPixelAli', # AlignmentProducerAsAnalyzer, MillePedeFileConverter
63  'PromptCalibProdBeamSpotHP', # AlcaBeamSpotProducer
64  'PromptCalibProdBeamSpotHPLowPU', # AlcaBeamSpotProducer
65  'AlCaPCCRandom', # AlcaPCCIntegrator
66  'AlCaPCCZeroBias' # AlcaPCCIntegrator
67 ]
def buildList
Definition: autoAlca.py:36