/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Configuration/AlCa/python/autoAlca.py
71 строка
5 KB
Joshua Hiltbrand
add Hcal iso track ALCARECO config to run on AlCaRaw stream
07 май 2025, 09:57
07 май 2025, 09:57
99a37fb
Код
Авторство
О чём код?
AlCaRecoMatrix = { "AlCaLumiPixelsCountsExpress" : "AlCaPCCRandom", "AlCaLumiPixelsCountsPrompt" : "AlCaPCCZeroBias+RawPCCProducer", # 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 "AlCaPhiSym" : "", "AlCaP0" : "", "AlCaHcalIsoTrk" : "HcalCalIsoTrkFromAlCaRaw", "AlCaPPSExpress" : "PPSCalMaxTracks", # Express producer "AlCaPPSPrompt" : "PPSCalMaxTracks", # Prompt producer "Commissioning" : "HcalCalIsoTrk+TkAlMinBias+SiStripCalMinBias+HcalCalIsolatedBunchSelector", "Cosmics" : "SiPixelCalCosmics+SiStripCalCosmics+TkAlCosmics0T+MuAlGlobalCosmics", "DoubleMuon" : "TkAlZMuMu+TkAlDiMuonAndVertex+MuAlCalIsolatedMu", "DoubleMuonLowMass" : "TkAlJpsiMuMu+TkAlUpsilonMuMu", "EGamma" : "EcalESAlign+EcalUncalWElectron+EcalUncalZElectron+HcalCalIsoTrkProducerFilter+HcalCalIterativePhiSym", "Express" : "SiStripCalZeroBias+TkAlMinBias+TkAlZMuMu+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias", "ExpressAlignment" : "TkAlMinBias", "ExpressCosmics" : "SiStripPCLHistos+SiStripCalZeroBias+TkAlCosmics0T+SiPixelCalZeroBias+SiPixelCalCosmics+SiStripCalCosmics", "HcalNZS" : "HcalCalMinBias", "HLTPhysics" : "TkAlMinBias+TkAlV0s", "HLTMonitor" : "TkAlHLTTracks+TkAlHLTTracksZMuMu", "JetHT" : "HcalCalIsoTrkProducerFilter+TkAlJetHT", "JetMET" : "HcalCalIsoTrkProducerFilter+TkAlJetHT+HcalCalNoise", "MinimumBias" : "SiStripCalZeroBias+SiStripCalMinBias+TkAlMinBias", "MET" : "HcalCalNoise", "Muon" : "TkAlZMuMu+TkAlDiMuonAndVertex+MuAlCalIsolatedMu+SiPixelCalSingleMuonLoose+SiPixelCalSingleMuonTight+TkAlMuonIsolated+HcalCalHO+HcalCalIterativePhiSym+HcalCalHBHEMuonProducerFilter", "NoBPTX" : "TkAlCosmicsInCollisions", "ParkingDoubleMuonLowMass" : "TkAlJpsiMuMu+TkAlUpsilonMuMu", "SingleMuon" : "SiPixelCalSingleMuonLoose+SiPixelCalSingleMuonTight+TkAlMuonIsolated+MuAlCalIsolatedMu+HcalCalHO+HcalCalIterativePhiSym+HcalCalHBHEMuonProducerFilter", "SpecialHLTPhysics" : "LumiPixelsMinBias", "StreamExpress" : "SiStripCalZeroBias+TkAlMinBias+TkAlZMuMu+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+Hotline+SiPixelCalZeroBias+SiPixelCalSingleMuon", "StreamExpressHI" : "SiStripCalZeroBias+TkAlMinBiasHI+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAAG+SiPixelCalZeroBias", # These (TestEnablesTracker, TestEnablesEcalHcal) are in the AlCaRecoMatrix, but no RelVals are produced # 'TestEnablesTracker' : 'TkAlLAS' # 'TestEnablesEcalHcal' : 'HcalCalPedestal' "ZeroBias" : "HcalCalIsolatedBunchSelector+SiStripCalZeroBias+TkAlMinBias+SiStripCalMinBias", } def buildList(pdList, matrix): """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.""" alCaRecoList = [] for pd in pdList: alCaRecoList.extend(matrix[pd].split("+")) # remove duplicates converting to a set alCaRecoList = set(alCaRecoList) stringList = '' for alCaReco in alCaRecoList: if stringList == '': stringList += alCaReco else: stringList += '+'+alCaReco return stringList # Update the lists anytime a new PD is added to the matrix autoAlca = { 'allForPrompt' : buildList(['Commissioning', 'EGamma', 'HLTPhysics', 'HcalNZS', 'JetMET', 'Muon', 'NoBPTX', 'ParkingDoubleMuonLowMass', 'ZeroBias'], AlCaRecoMatrix), 'allForExpress' : buildList(['StreamExpress'], AlCaRecoMatrix), 'allForExpressHI' : buildList(['StreamExpressHI'], AlCaRecoMatrix), 'allForPromptCosmics' : buildList(['Cosmics'], AlCaRecoMatrix), 'allForExpressCosmics' : buildList(['ExpressCosmics'], AlCaRecoMatrix) } autoAlca.update(AlCaRecoMatrix) # list of AlCa sequences that have modules that do not support concurrent LuminosityBlocks AlCaNoConcurrentLumis = [ 'PromptCalibProd', # AlcaBeamSpotProducer 'PromptCalibProdSiPixelAli', # AlignmentProducerAsAnalyzer, MillePedeFileConverter 'PromptCalibProdSiPixelAliHG', # AlignmentProducerAsAnalyzer, MillePedeFileConverter 'PromptCalibProdSiPixelAliHGComb', # AlignmentProducerAsAnalyzer, MillePedeFileConverter 'PromptCalibProdSiPixelAliHLTHGC', # AlignmentProducerAsAnalyzer, MillePedeFileConverter 'PromptCalibProdBeamSpotHP', # AlcaBeamSpotProducer 'PromptCalibProdBeamSpotHPLowPU', # AlcaBeamSpotProducer ]