def Config(self, stream, configKey): ### smart sliming from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper SlHelper = SlimmingHelper(configKey+"SlimmingHelper") SlHelper.SmartCollections = self.smSlContainer[configKey] useSmartSlimmingIfSupported(self.checkContainers.get(configKey, []),self.allVarContainer[configKey], self.Items[configKey], SlHelper.NamesAndTypes) SlHelper.AllVariables = self.allVarContainer[configKey] # SlHelper.StaticContent = self.Items[configKey] # SlHelper.ExtraVariables = self.extraVariables.get(configKey, []) SlHelper.IncludeMuonTriggerContent = self.UseTriggerContent.get(configKey, True) SlHelper.AppendContentToStream(stream) ### other items for item in self.Items[configKey]: stream.AddItem(item)
#======================================= # CREATE THE DERIVATION KERNEL ALGORITHM #======================================= from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += exot7Seq exot7Seq += CfgMgr.DerivationFramework__DerivationKernel( "EXOT7Kernel_skim", AugmentationTools=[EXOT7DeltaRTool], SkimmingTools=[EXOT7StringSkimmingTool]) exot7Seq += CfgMgr.DerivationFramework__DerivationKernel( "EXOT7Kernel", ThinningTools=thinningTools) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkExotics.EXOT7ContentList import * EXOT7SlimmingHelper = SlimmingHelper("EXOT7SlimmingHelper") EXOT7SlimmingHelper.StaticContent = EXOT7Content EXOT7SlimmingHelper.SmartCollections = EXOT7SmartCollections EXOT7SlimmingHelper.ExtraVariables = EXOT7ExtraVariables EXOT7SlimmingHelper.AllVariables = EXOT7AllVariables #EXOT7SlimmingHelper.IncludeJetTauEtMissTriggerContent = True EXOT7SlimmingHelper.IncludeJetTriggerContent = True EXOT7SlimmingHelper.IncludeBJetTriggerContent = True EXOT7SlimmingHelper.AppendContentToStream(EXOT7Stream)
# CREATE THE DERIVATION KERNEL ALGORITHM #======================================= from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += CfgMgr.DerivationFramework__DerivationKernel( name="JETM7Kernel", SkimmingTools=[JETM7SkimmingTool], ThinningTools=thinningTools) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM7SlimmingHelper = SlimmingHelper("JETM7SlimmingHelper") JETM7SlimmingHelper.SmartCollections = [ "Electrons", "Photons", "Muons", "TauJets", "InDetTrackParticles", "PrimaryVertices" ] JETM7SlimmingHelper.AllVariables = [ "BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "CaloCalTopoClusters", "MuonTruthParticles", "egammaTruthParticles", "TruthParticles", "TruthEvents", "TruthVertices", "MuonSegments" ] JETM7SlimmingHelper.ExtraVariables = [ "Muons.energyLossType.EnergyLoss.ParamEnergyLoss.MeasEnergyLoss.EnergyLossSigma.MeasEnergyLossSigma.ParamEnergyLossSigmaPlus.ParamEnergyLossSigmaMinus" ] # Trigger content JETM7SlimmingHelper.IncludeMuonTriggerContent = True JETM7SlimmingHelper.IncludeEGammaTriggerContent = True # Add the jet containers to the stream
from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM6SlimmingHelper = SlimmingHelper("JETM6SlimmingHelper") JETM6SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "TauJets", "InDetTrackParticles", "PrimaryVertices", "MET_Reference_AntiKt4EMTopo", "MET_Reference_AntiKt4EMPFlow", "AntiKt2TruthJets", "AntiKt2LCTopoJets", "AntiKt4EMTopoJets","AntiKt4EMPFlowJets","AntiKt4TruthJets", "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets", "AntiKt10UFOCHSTrimmedPtFrac5SmallR20Jets", "AntiKt10UFOCSSKTrimmedPtFrac5SmallR20Jets", "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets", "AntiKt10UFOCSSKBottomUpSoftDropBeta100Zcut5Jets", "AntiKt10UFOCSSKRecursiveSoftDropBeta100Zcut5NinfJets", "AntiKtVR30Rmax4Rmin02TrackJets_BTagging201810", "AntiKtVR30Rmax4Rmin02TrackJets_BTagging201903", "AntiKt4EMPFlowJets_BTagging201810", "AntiKt4EMPFlowJets_BTagging201903", "AntiKt4EMTopoJets_BTagging201810", "BTagging_AntiKtVR30Rmax4Rmin02Track_201810", "BTagging_AntiKtVR30Rmax4Rmin02Track_201903", "BTagging_AntiKt4EMPFlow_201810", "BTagging_AntiKt4EMPFlow_201903", "BTagging_AntiKt4EMTopo_201810", ] JETM6SlimmingHelper.AllVariables = [ "TruthEvents",
from AthenaServices.Configurables import ThinningSvc, createThinningSvc augStream = MSMgr.GetStream(streamName) evtStream = augStream.GetEventStream() svcMgr += createThinningSvc(svcName="SUSY5ThinningSvc", outStreams=[evtStream]) #==================================================================== # CONTENT LIST #==================================================================== # This might be the kind of set-up one would have for a muon based analysis from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper SUSY5SlimmingHelper = SlimmingHelper("SUSY5SlimmingHelper") SUSY5SlimmingHelper.SmartCollections = [ "PhotonCollection", "ElectronCollection", "Muons", "TauRecContainer", "AntiKt4LCTopoJets", "MET_RefFinal", "BTagging_AntiKt4LCTopo", "InDetTrackParticles", "PrimaryVertices" ] SUSY5SlimmingHelper.AllVariables = [ "AntiKt4TruthJets", "BTagging_AntiKt4Truth", "MuonTruthParticle", "TruthParticle", "TruthEvent", "TruthVertex", "MET_Truth", "BTagging_AntiKt4LCTopo" ] SUSY5SlimmingHelper.ExtraVariables = [ "BTagging_AntiKt4LCTopo.MV1_discriminant", "PhotonCollection.author.Loose.Tight", "ElectronCollection.author.Loose.Medium.Tight.truthOrigin.truthType.charge.ptcone20.etcone30", "Muons.ptcone30.ptcone20.etcone30.charge.quality.InnerDetectorPt.MuonSpectrometerPt.CaloLRLikelihood.CaloMuonIDTag", "AntiKt4LCTopoJets.ActiveArea4vec_pt.ActiveArea4vec_eta.ActiveArea4vec_phi.ActiveArea4vec_m.EnergyPerSampling.NumTrkPt1000.TrackWidthPt1000.GhostMuonSegment.NumTrkPt500", "GSFTrackParticles.z0.d0.vz.definingParametersCovMatrix", "CombinedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix.truthOrigin.truthType",
#======================================= from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += exot16Seq exot16Seq += CfgMgr.DerivationFramework__DerivationKernel( "EXOT16Kernel_skim", SkimmingTools=[EXOT16StringSkimmingTool]) exot16Seq += CfgMgr.DerivationFramework__DerivationKernel( "EXOT16Kernel", ThinningTools=thinningTools) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== # Currently using same list as EXOT16 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkExotics.EXOT16ContentList import * EXOT16SlimmingHelper = SlimmingHelper("EXOT16SlimmingHelper") EXOT16SlimmingHelper.AppendToDictionary = EXOT16Content EXOT16SlimmingHelper.SmartCollections = EXOT16SmartCollections EXOT16SlimmingHelper.AllVariables = EXOT16AllVariables EXOT16SlimmingHelper.ExtraVariables = EXOT16ExtraVariables addMETOutputs(EXOT16SlimmingHelper, ["MET_Track"], ["AntiKt4EMTopo"]) EXOT16SlimmingHelper.IncludeEGammaTriggerContent = True EXOT16SlimmingHelper.IncludeMuonTriggerContent = True EXOT16SlimmingHelper.AppendContentToStream(EXOT16Stream)
SeqSUSY11 += CfgMgr.DerivationFramework__DerivationKernel( "SUSY11KernelAug", AugmentationTools=AugmentationTools, ThinningTools=thinningTools, ) #==================================================================== # CONTENT LIST #==================================================================== # This might be the kind of set-up one would have for a muon based analysis from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper SUSY11SlimmingHelper = SlimmingHelper("SUSY11SlimmingHelper") SUSY11SlimmingHelper.SmartCollections = [ "Electrons", "MET_Reference_AntiKt4EMTopo", "Muons", "AntiKt4EMTopoJets", "BTagging_AntiKt4EMTopo", "PrimaryVertices", "TauJets" ] SUSY11SlimmingHelper.AllVariables = [ "TruthParticles", "TruthEvents", "TruthVertices", "MET_Truth", "MET_Track" ] SUSY11SlimmingHelper.ExtraVariables = [ "BTagging_AntiKt4EMTopo.MV1_discriminant.MV1c_discriminant", "Muons.ptcone30.ptcone20.charge.quality.InnerDetectorPt.MuonSpectrometerPt.CaloLRLikelihood.CaloMuonIDTag", "AntiKt4EMTopoJets.NumTrkPt1000.TrackWidthPt1000.NumTrkPt500", "GSFTrackParticles.z0.d0.vz.definingParametersCovMatrix", "CombinedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix.truthOrigin.truthType", "ExtrapolatedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix.truthOrigin.truthType", "MuonTruthParticles.barcode.decayVtxLink.e.m.pdgId.prodVtxLink.px.py.pz.recoMuonLink.status.truthOrigin.truthType", "AntiKt4TruthJets.eta.m.phi.pt.TruthLabelDeltaR_B.TruthLabelDeltaR_C.TruthLabelDeltaR_T.TruthLabelID.ConeTruthLabelID.PartonTruthLabelID", "TauJets.TruthCharge.TruthProng.IsTruthMatched.TruthPtVis.truthOrigin.truthType.truthParticleLink.truthJetLink" ]
from DerivationFrameworkCalo.CaloCellDFGetter import thinCaloCellsForDF thinCaloCellsForDF(inputClusterKeys=["egammaClusters"], streamName=EGAM9Stream.Name, outputCellKey="DFEGAMCellContainer") #======================================================================== #==================================================================== # SET UP SLIMMING #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper # Keep only electrons and photons EGAM9SlimmingHelper = SlimmingHelper("EGAM9SlimmingHelper") EGAM9SlimmingHelper.SmartCollections = [ "Electrons", "Photons", "InDetTrackParticles", "PrimaryVertices" ] # Add egamma trigger objects EGAM9SlimmingHelper.IncludeEGammaTriggerContent = True # Extra variables EGAM9SlimmingHelper.ExtraVariables = ExtraContentAll EGAM9SlimmingHelper.AllVariables = ExtraContainersElectrons EGAM9SlimmingHelper.AllVariables += ExtraContainersPhotons EGAM9SlimmingHelper.AllVariables += ExtraContainersTrigger if globalflags.DataSource() == 'geant4': EGAM9SlimmingHelper.ExtraVariables += ExtraContentAllTruth EGAM9SlimmingHelper.AllVariables += ExtraContainersTruth else:
#======================================= # CREATE THE DERIVATION KERNEL ALGORITHM #======================================= from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += CfgMgr.DerivationFramework__DerivationKernel( name = "JETM4Kernel", SkimmingTools = [JETM4SkimmingTool], ThinningTools = thinningTools) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM4SlimmingHelper = SlimmingHelper("JETM4SlimmingHelper") JETM4SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "TauJets", "InDetTrackParticles", "PrimaryVertices"] JETM4SlimmingHelper.AllVariables = ["BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "CaloCalTopoClusters", "MuonTruthParticles", "egammaTruthParticles", "TruthParticles", "TruthEvents", "TruthVertices", "MuonSegments" ] #JETM4SlimmingHelper.ExtraVariables = [] # Trigger content JETM4SlimmingHelper.IncludeEGammaTriggerContent = True # Add the jet containers to the stream addJetOutputs(JETM4SlimmingHelper,["SmallR"]) # Add the MET containers to the stream addMETOutputs(JETM4SlimmingHelper,["Diagnostic","AntiKt4LCTopo","AntiKt4EMPFlow","Track"])
exot5Seq += CfgMgr.DerivationFramework__DerivationKernel( 'EXOT5Kernel', AugmentationTools=augmentationTools, ThinningTools=thinningTools) #======================================== # Add the containers to the output stream #======================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper EXOT5SlimmingHelper = SlimmingHelper('EXOT5SlimmingHelper') EXOT5SlimmingHelper.SmartCollections = [ 'Electrons', 'Muons', 'Photons', 'TauJets', 'InDetTrackParticles', 'PrimaryVertices', 'MET_Reference_AntiKt4EMTopo', 'BTagging_AntiKt4EMTopo', ] EXOT5SlimmingHelper.ExtraVariables = [ 'Photons.author.Loose.Tight', 'Electrons.author.Medium.Tight.Loose.charge', 'Muons.ptcone20.ptcone30.ptcone40.etcone20.etcone30.etcone40', 'CombinedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix', # SUSYTools 'ExtrapolatedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix', # SUSYTools 'TauJets.TruthCharge.TruthProng.IsTruthMatched.TruthPtVis.truthOrigin.truthType.truthParticleLink.truthJetLink', ] EXOT5SlimmingHelper.AllVariables = [ 'AntiKt4EMTopoJets', 'AntiKt4TruthJets',
# Thinning service name must match the one passed to the thinning tools from AthenaServices.Configurables import ThinningSvc, createThinningSvc augStream = MSMgr.GetStream(streamName) evtStream = augStream.GetEventStream() svcMgr += createThinningSvc(svcName="STDM2ThinningSvc", outStreams=[evtStream]) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkSM.STDMExtraContent import * STDM2SlimmingHelper = SlimmingHelper("STDM2SlimmingHelper") STDM2SlimmingHelper.SmartCollections = [ "Electrons", "Photons", "AntiKt4EMTopoJets", "AntiKt4LCTopoJets", "BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "InDetTrackParticles", "PrimaryVertices" ] STDM2SlimmingHelper.IncludeEGammaTriggerContent = True STDM2SlimmingHelper.ExtraVariables = ExtraContentElectrons + ExtraContentPhotons + ExtraContentBtag + ExtraContentVtx + ExtraContentTrk + ExtraContentJets + [ "Electrons.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z" ] + [ "Photons.maxEcell_time.maxEcell_energy.maxEcell_gain.maxEcell_onlId.maxEcell_x.maxEcell_y.maxEcell_z" ] STDM2SlimmingHelper.AllVariables = ExtraContainersJets #+ExtraContainers6Jets #do not exist for now if globalflags.DataSource() == 'geant4': STDM2SlimmingHelper.ExtraVariables += ExtraElectronsTruth + ExtraPhotonsTruth STDM2SlimmingHelper.AllVariables += ExtraContainersTruth + ExtraContainersTruthPhotons #["AntiKt6TruthJets", "BTagging_AntiKt6TruthWZ","AntiKt6TruthWZJets"] do not exist for now
# THINNING #==================================================================== # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper TEST8ThinningHelper = ThinningHelper("TEST8ThinningHelper") TEST8ThinningHelper.AppendToStream(TEST8Stream) # Set up your thinning tools (you can have as many as you need). # Note how the thinning service (which must be passed to the tools) is accessed from DerivationFrameworkExamples.DerivationFrameworkExamplesConf import DerivationFramework__ThinningToolExample TEST8ThinningTool = DerivationFramework__ThinningToolExample( name="TEST8ThinningTool", StreamName=streamName, TrackPtCut=20000.0) ToolSvc += TEST8ThinningTool #==================================================================== # CREATE THE DERIVATION KERNEL ALGORITHM AND PASS THE ABOVE TOOLS #==================================================================== from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += CfgMgr.DerivationFramework__DerivationKernel( "TEST8Kernel", ThinningTools=[TEST8ThinningTool]) #==================================================================== # CONTENT LIST #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper TEST8SlimmingHelper = SlimmingHelper("TEST8SlimmingHelper") TEST8SlimmingHelper.SmartCollections = ["InDetTrackParticles"] TEST8SlimmingHelper.AppendContentToStream(TEST8Stream)
def setup(TOPQname, stream): DFisMC = (globalflags.DataSource() == 'geant4') TOPQSlimmingHelper = SlimmingHelper(TOPQname + "SlimmingHelper") #===================================================== # ADD BTagging_AntiKt4EMPFlow COLLECTION TO DICTIONARY #===================================================== TOPQSlimmingHelper.AppendToDictionary = { "BTagging_AntiKt4EMPFlow": "xAOD::BTaggingContainer", "BTagging_AntiKt4EMPFlowAux": "xAOD::BTaggingAuxContainer" } #================================ # SMART SLIMMING #================================ TOPQSlimmingHelper.SmartCollections = [] TOPQSlimmingHelper.SmartCollections += TOPQSmartSlimmingCollections print("TOPQSlimmingHelper.SmartCollections: ", TOPQSlimmingHelper.SmartCollections) #================================================================= # EXTRA VARIABLES FROM DerivationFrameworkTop.TOPQCommonExtraContent #================================================================= TOPQSlimmingHelper.ExtraVariables = [] TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesAntiKt4EMTopoJets TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesAntiKt4EMPFlowJets TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesBTagging_AntiKt4EMPFlow TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesBTagging_AntiKt4EMTopo TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesPhotons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesElectrons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesMuons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesTaus TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesTrackJets TOPQSlimmingHelper.ExtraVariables += Config.GetExtraPromptVariablesForDxAOD( ) # TOPQSlimmingHelper.ExtraVariables += ["CaloCalTopoClusters.calE.calEta.calPhi.calM.rawM.rawE.rawEta.rawPhi.e_sampl.eta_sampl.etaCalo.phiCalo"] TOPQSlimmingHelper.ExtraVariables += [ "CaloCalTopoClusters.calPt.calEta.calPhi.calM.calE.CENTER_MAG" ] if DFisMC: TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesPhotonsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesElectronsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesMuonsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesTausTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVarsBTag_HLT_Container TOPQSlimmingHelper.ExtraVariables += TOPQExtraVarsJet_EF_Container TOPQSlimmingHelper.ExtraVariables += TOPQExtraVarsJet_Split_Container print("TOPQSlimmingHelper.ExtraVariables: ", TOPQSlimmingHelper.ExtraVariables) #================================ # EXTRA COLLECTIONS - user added #================================ TOPQSlimmingHelper.AllVariables = [] TOPQSlimmingHelper.AllVariables += TOPQExtraContainersStandard TOPQSlimmingHelper.AllVariables += TOPQExtraContainersTrigger if DFisMC: TOPQSlimmingHelper.AllVariables += TOPQExtraContainersTruth print("TOPQSlimmingHelper.AllVariables: ", TOPQSlimmingHelper.AllVariables) #================================ # CREATED ON-THE-FLY COLLECTIONS #================================ TOPQSlimmingHelper.StaticContent = [] TOPQSlimmingHelper.StaticContent += TOPQStaticContent if DFisMC: TOPQSlimmingHelper.StaticContent += TOPQStaticContentTruth print("TOPQSlimmingHelper.StaticContent: ", TOPQSlimmingHelper.StaticContent) #================================ # TRIGGER CONTENT #================================ TOPQSlimmingHelper.IncludeMuonTriggerContent = True TOPQSlimmingHelper.IncludeEGammaTriggerContent = True TOPQSlimmingHelper.IncludeJetTriggerContent = True TOPQSlimmingHelper.IncludeTauTriggerContent = True TOPQSlimmingHelper.IncludeEtMissTriggerContent = True #TOPQSlimmingHelper.IncludeJetTauEtMissTriggerContent = True #TOPQSlimmingHelper.IncludeBJetTriggerContent = True #TOPQSlimmingHelper.IncludeBPhysTriggerContent = True #TOPQSlimmingHelper.IncludeMinBiasTriggerContent = True #==================================== # ADD AntiKT4EMPFlowJets MET OUTPUT #==================================== # needs to be after where AllVaraibles[] and StaticContent[] are created # adds METAssoc_XXXX, MET_Core_XXXX, and MET_Reference_XXXX # uses DerivationFrameworkJetEtMiss.METCommon.py addMETOutputs(TOPQSlimmingHelper, ["AntiKt4EMPFlow"]) #==================================== # ADD CUSTOM JET OUTPUT (new rel 21 method) #==================================== addJetOutputs( TOPQSlimmingHelper, ["SmallR", "LargeR", TOPQname], [], # smart list [ "AntiKt3PV0TrackJets", "AntiKt4PV0TrackJets", "AntiKt4LCTopoJets", "AntiKt10LCTopoJets", "AntiKt10TruthWZJets", ] # veto list ) #================================ # THIS NEEDS TO BE THE LAST LINE #================================ TOPQSlimmingHelper.AppendContentToStream(stream)
"AntiKt4TruthJets", "AntiKt4EMTopoJets", "AntiKt4LCTopoJets" ] #addDefaultTrimmedJets(jetm9Seq,"JETM9") if jetFlags.useTruth: replaceBuggyAntiKt4TruthWZJets(jetm9Seq, "JETM9") for radius in [0.2, 0.3, 0.5, 0.6, 0.7, 0.8]: if jetFlags.useTruth: addRscanJets("AntiKt", radius, "Truth", jetm9Seq, "JETM9") addRscanJets("AntiKt", radius, "TruthWZ", jetm9Seq, "JETM9") addRscanJets("AntiKt", radius, "LCTopo", jetm9Seq, "JETM9") #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM9SlimmingHelper = SlimmingHelper("JETM9SlimmingHelper") JETM9SlimmingHelper.SmartCollections = [ "AntiKt4EMTopoJets", "AntiKt4LCTopoJets", "PrimaryVertices" ] JETM9SlimmingHelper.AllVariables = ["TruthEvents", "MuonSegments"] JETM9SlimmingHelper.ExtraVariables = ["TruthVertices.z"] # Trigger content JETM9SlimmingHelper.IncludeJetTriggerContent = True # Add the jet containers to the stream addJetOutputs(JETM9SlimmingHelper, ["JETM9"]) JETM9SlimmingHelper.AppendContentToStream(JETM9Stream) JETM9Stream.RemoveItem("xAOD::TrigNavigation#*") JETM9Stream.RemoveItem("xAOD::TrigNavigationAuxInfo#*")
#==================================================================== streamName = derivationFlags.WriteDAOD_JETM9Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_JETM9Stream ) JETM9Stream = MSMgr.NewPoolRootStream( streamName, fileName ) JETM9Stream.AcceptAlgs(["JETM9Kernel"]) # for thinning from AthenaServices.Configurables import ThinningSvc, createThinningSvc augStream = MSMgr.GetStream( streamName ) evtStream = augStream.GetEventStream() svcMgr += createThinningSvc( svcName="JETM9ThinningSvc", outStreams=[evtStream] ) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM9SlimmingHelper = SlimmingHelper("JETM9SlimmingHelper") JETM9SlimmingHelper.SmartCollections = ["AntiKt4EMTopoJets","AntiKt4LCTopoJets","PrimaryVertices"] JETM9SlimmingHelper.AllVariables = ["TruthEvents", "TruthVertices", "MuonSegments" ] #JETM9SlimmingHelper.ExtraVariables = [] # Trigger content JETM9SlimmingHelper.IncludeJetTriggerContent = True # Add the jet containers to the stream addJetOutputs(JETM9SlimmingHelper,["JETM9"]) JETM9SlimmingHelper.AppendContentToStream(JETM9Stream) JETM9Stream.RemoveItem("xAOD::TrigNavigation#*") JETM9Stream.RemoveItem("xAOD::TrigNavigationAuxInfo#*")
#evtStream = augStream.GetEventStream() #svcMgr += createThinningSvc( svcName="STDM5ThinningSvc", outStreams=[evtStream] ) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkSM.STDMExtraContent import * STDM5SlimmingHelper = SlimmingHelper("STDM5SlimmingHelper") STDM5SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "TauJets", "MET_Reference_AntiKt4EMTopo", "AntiKt4LCTopoJets", "AntiKt4EMTopoJets", "BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "InDetTrackParticles", "PrimaryVertices" ] STDM5SlimmingHelper.IncludeEGammaTriggerContent = True STDM5SlimmingHelper.IncludeMuonTriggerContent = True STDM5SlimmingHelper.ExtraVariables = ExtraContentAll STDM5SlimmingHelper.AllVariables = ExtraContainersAll if globalflags.DataSource()=='geant4': STDM5SlimmingHelper.ExtraVariables += ExtraContentAllTruth STDM5SlimmingHelper.AllVariables += ExtraContainersTruth
streamName = derivationFlags.WriteDAOD_JETM1Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_JETM1Stream ) JETM1Stream = MSMgr.NewPoolRootStream( streamName, fileName ) JETM1Stream.AcceptAlgs(["JETM1Kernel"]) # for thinning from AthenaServices.Configurables import ThinningSvc, createThinningSvc augStream = MSMgr.GetStream( streamName ) evtStream = augStream.GetEventStream() svcMgr += createThinningSvc( svcName="JETM1ThinningSvc", outStreams=[evtStream] ) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM1SlimmingHelper = SlimmingHelper("JETM1SlimmingHelper") JETM1SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "PrimaryVertices"] JETM1SlimmingHelper.AllVariables = ["BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "MuonTruthParticles", "egammaTruthParticles", "TruthParticles", "TruthEvents", "TruthVertices", "MuonSegments" ] #JETM1SlimmingHelper.ExtraVariables = [] # Trigger content JETM1SlimmingHelper.IncludeJetTriggerContent = True # Add the jet containers to the stream addJetOutputs(JETM1SlimmingHelper,["SmallR","LargeR","JETM1"],[], # smart list ["AntiKt3PV0TrackJets", "AntiKt4PV0TrackJets", "AntiKt4TruthWZJets",
"Kt4EMPFlowNeutEventShape": "xAOD::EventShape", "Kt4EMPFlowNeutEventShapeAux": "xAOD::AuxInfoBase", "Kt4EMPFlowPUSBEventShape": "xAOD::EventShape", "Kt4EMPFlowPUSBEventShapeAux": "xAOD::AuxInfoBase", "AntiKt10LCTopoCSSKJets": "xAOD::JetContainer", "AntiKt10LCTopoCSSKJetsAux.": "xAOD::JetAuxContainer", "AntiKt10LCTopoJets": "xAOD::JetContainer", "AntiKt10LCTopoJetsAux.": "xAOD::JetAuxContainer" } JETM15SlimmingHelper.SmartCollections = [ "Electrons", "Muons", "InDetTrackParticles", "PrimaryVertices", "MET_Reference_AntiKt4EMTopo", "MET_Reference_AntiKt4EMPFlow", "AntiKt4EMTopoJets", "AntiKt4EMPFlowJets", "AntiKt4EMPFlowJets_BTagging201810", "AntiKt4EMPFlowJets_BTagging201903", "AntiKt4EMTopoJets_BTagging201810", "BTagging_AntiKt4EMPFlow_201810", "BTagging_AntiKt4EMPFlow_201903", "BTagging_AntiKt4EMTopo_201810", "BTagging_AntiKtVR30Rmax4Rmin02Track_201810", "BTagging_AntiKtVR30Rmax4Rmin02Track_201903", "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets" ] JETM15SlimmingHelper.AllVariables = [ "Kt4EMTopoOriginEventShape", "Kt4LCTopoOriginEventShape", "Kt4EMPFlowEventShape", "Kt4EMPFlowPUSBEventShape", "Kt4EMPFlowNeutEventShape", "TruthParticles", "TruthEvents", "TruthVertices",
FTAG5SlimmingHelper.StaticContent.append("xAOD::JetAuxContainer#"+JetCollectionExKt+"Aux.-Parent") # "Parent" link is broken after deep copy of parent jet in b-tagging module # b-tagging # FTAG5SlimmingHelper.StaticContent.append("xAOD::BTaggingContainer#BTagging_"+JetName) FTAG5SlimmingHelper.StaticContent.append("xAOD::BTaggingAuxContainer#BTagging_" + JetName + "Aux.") FTAG5SlimmingHelper.StaticContent.append("xAOD::VertexContainer#BTagging_" + JetName + "SecVtx") FTAG5SlimmingHelper.StaticContent.append("xAOD::VertexAuxContainer#BTagging_" + JetName + "SecVtx" + "Aux.") FTAG5SlimmingHelper.StaticContent.append("xAOD::BTagVertexContainer#BTagging_" + JetName + "JFVtx") FTAG5SlimmingHelper.StaticContent.append("xAOD::BTagVertexAuxContainer#BTagging_" + JetName + "JFVtx" + "Aux.-vxTrackAtVertex") FTAG5SlimmingHelper.SmartCollections = ["Electrons","Muons", "MET_Reference_AntiKt4EMTopo", "AntiKt4EMTopoJets", "BTagging_AntiKt4EMTopo"] FTAG5SlimmingHelper.AllVariables = ["AntiKt3PV0TrackJets", "AntiKt2PV0TrackJets", "AntiKt4PV0TrackJets", "AntiKt4TruthJets", "BTagging_AntiKt4EMTopo", "BTagging_AntiKt2Track", "BTagging_AntiKt3Track", "BTagging_AntiKt4EMTopoJFVtx", "BTagging_AntiKt2TrackJFVtx", "BTagging_AntiKt3TrackJFVtx", "BTagging_AntiKt4EMTopoSecVtx", "BTagging_AntiKt2TrackSecVtx", "BTagging_AntiKt3TrackSecVtx",
# TAUP2JetTPThinningTool, # TAUP2ElectronTPThinningTool, # TAUP2MuonTPThinningTool, # TAUP2TauTPThinningTool], AugmentationTools=augmentationTools) # ========================================================================================================================== # Add the containers to the output stream (slimming done here) # ========================================================================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkTau.TAUPExtraContent import * TAUP2SlimmingHelper = SlimmingHelper("TAUP2SlimmingHelper") TAUP2SlimmingHelper.SmartCollections = [ # "Electrons", # "Photons", # "Muons", "TauJets" ] # "MET_Reference_AntiKt4EMTopo", # "MET_Reference_AntiKt4LCTopo", # "AntiKt4EMTopoJets", # "AntiKt4LCTopoJets", # "BTagging_AntiKt4EMTopo", # "BTagging_AntiKt4LCTopo", # "InDetTrackParticles", # "PrimaryVertices"] if DerivationFrameworkIsMonteCarlo: TAUP2SlimmingHelper.StaticContent = [ "xAOD::TruthParticleContainer#TruthElectrons", "xAOD::TruthParticleAuxContainer#TruthElectronsAux.",
def setup(TOPQname, stream): DFisMC = (globalflags.DataSource() == 'geant4') TOPQSlimmingHelper = SlimmingHelper(TOPQname + "SlimmingHelper") #===================================================== # ADD BTagging_AntiKt4EMPFlow COLLECTION TO DICTIONARY #===================================================== TOPQSlimmingHelper.AppendToDictionary = { "BTagging_AntiKt4EMPFlow": "xAOD::BTaggingContainer", "BTagging_AntiKt4EMPFlowAux": "xAOD::BTaggingAuxContainer" } #================================ # SMART SLIMMING #================================ TOPQSlimmingHelper.SmartCollections = [] TOPQSlimmingHelper.SmartCollections += TOPQSmartSlimmingCollections print "TOPQSlimmingHelper.SmartCollections: ", TOPQSlimmingHelper.SmartCollections #================================================================= # EXTRA VARIABLES FROM DerivationFrameworkTop.TOPQCommonExtraContent #================================================================= TOPQSlimmingHelper.ExtraVariables = [] TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesAntiKt4EMTopoJets TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesAntiKt4EMPFlowJets TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesBTagging_AntiKt4EMPFlow TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesBTagging_AntiKt4EMTopo TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesPhotons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesElectrons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesMuons TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesTaus if DFisMC: TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesPhotonsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesElectronsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesMuonsTruth TOPQSlimmingHelper.ExtraVariables += TOPQExtraVariablesTausTruth print "TOPQSlimmingHelper.ExtraVariables: ", TOPQSlimmingHelper.ExtraVariables #================================ # EXTRA COLLECTIONS - user added #================================ TOPQSlimmingHelper.AllVariables = [] TOPQSlimmingHelper.AllVariables += TOPQExtraContainersStandard TOPQSlimmingHelper.AllVariables += TOPQExtraContainersTrigger if DFisMC: TOPQSlimmingHelper.AllVariables += TOPQExtraContainersTruth print "TOPQSlimmingHelper.AllVariables: ", TOPQSlimmingHelper.AllVariables #================================ # CREATED ON-THE-FLY COLLECTIONS #================================ TOPQSlimmingHelper.StaticContent = [] TOPQSlimmingHelper.StaticContent += TOPQStaticContent if DFisMC: TOPQSlimmingHelper.StaticContent += TOPQStaticContentTruth print "TOPQSlimmingHelper.StaticContent: ", TOPQSlimmingHelper.StaticContent #================================ # TRIGGER CONTENT #================================ TOPQSlimmingHelper.IncludeMuonTriggerContent = True TOPQSlimmingHelper.IncludeEGammaTriggerContent = True TOPQSlimmingHelper.IncludeJetTriggerContent = True TOPQSlimmingHelper.IncludeTauTriggerContent = True TOPQSlimmingHelper.IncludeEtMissTriggerContent = True #TOPQSlimmingHelper.IncludeJetTauEtMissTriggerContent = True #TOPQSlimmingHelper.IncludeBJetTriggerContent = True #TOPQSlimmingHelper.IncludeBPhysTriggerContent = True #TOPQSlimmingHelper.IncludeMinBiasTriggerContent = True #==================================== # ADD AntiKT4EMPFlowJets MET OUTPUT #==================================== # needs to be after where AllVaraibles[] and StaticContent[] are created # adds METAssoc_XXXX, MET_Core_XXXX, and MET_Reference_XXXX # uses DerivationFrameworkJetEtMiss.METCommon.py addMETOutputs(TOPQSlimmingHelper, ["AntiKt4EMPFlow"]) #================================ # THIS NEEDS TO BE THE LAST LINE #================================ TOPQSlimmingHelper.AppendContentToStream(stream)
TEST10ThinningHelper.AppendToStream(TEST10Stream) #==================================================================== # CREATE THE DERIVATION KERNEL ALGORITHM AND PASS THE ABOVE TOOLS #==================================================================== # The name of the kernel (TEST10Kernel in this case) must be unique to this derivation from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel DerivationFrameworkJob += CfgMgr.DerivationFramework__DerivationKernel( "TEST10Kernel") TEST10Stream.AcceptAlgs(["TEST10Kernel"]) #==================================================================== # CONTENT LIST #==================================================================== # Add the required contents (offline) from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper TEST10SlimmingHelper = SlimmingHelper("TEST10SlimmingHelper") TEST10SlimmingHelper.SmartCollections = ["Electrons", "Muons"] # Add the required trigger slices TEST10SlimmingHelper.IncludeMuonTriggerContent = True TEST10SlimmingHelper.IncludeEGammaTriggerContent = True #TEST10SlimmingHelper.IncludeBPhysTriggerContent = True ##JetTauEtMissTriggerContent: split in 4 slices #TEST10SlimmingHelper.IncludeJetTriggerContent = True #TEST10SlimmingHelper.IncludeEtMissTriggerContent = True #TEST10SlimmingHelper.IncludeTauTriggerContent = True #TEST10SlimmingHelper.IncludeBJetTriggerContent = True #TEST10SlimmingHelper.IncludeMinBiasTriggerContent = True TEST10SlimmingHelper.AppendContentToStream(TEST10Stream)
#==================================================================== OutputJets["JETM4"] = [] # AntiKt10*PtFrac5Rclus20 addDefaultTrimmedJets(jetm4Seq, "JETM4") #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM4SlimmingHelper = SlimmingHelper("JETM4SlimmingHelper") JETM4SlimmingHelper.SmartCollections = [ "Electrons", "Photons", "Muons", "TauJets", "InDetTrackParticles", "PrimaryVertices", "MET_Reference_AntiKt4EMTopo", "MET_Reference_AntiKt4LCTopo", "MET_Reference_AntiKt4EMPFlow", "AntiKt4EMTopoJets", "AntiKt4LCTopoJets", "AntiKt4EMPFlowJets", "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets" ] JETM4SlimmingHelper.AllVariables = [ "BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", # "CaloCalTopoClusters", "MuonTruthParticles", "egammaTruthParticles", "TruthParticles", "TruthEvents", "TruthVertices", "MuonSegments" ] #JETM4SlimmingHelper.ExtraVariables = [] for truthc in [
streamName = derivationFlags.WriteDAOD_FTAG4Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_FTAG4Stream ) FTAG4Stream = MSMgr.NewPoolRootStream( streamName, fileName ) # Only events that pass the filters listed below are written out. # Name must match that of the kernel above # AcceptAlgs = logical OR of filters # RequireAlgs = logical AND of filters FTAG4Stream.AcceptAlgs(["FTAG4Kernel"]) from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper FTAG4SlimmingHelper = SlimmingHelper("FTAG4SlimmingHelper") # nb: BTagging_AntiKt4EMTopo smart collection includes both AntiKt4EMTopoJets and BTagging_AntiKt4EMTopo # container variables. Thus BTagging_AntiKt4EMTopo is needed in SmartCollections as well as AllVariables FTAG4SlimmingHelper.SmartCollections = ["Electrons","Muons", "MET_Reference_AntiKt4EMTopo", "AntiKt4EMTopoJets", "BTagging_AntiKt4EMTopo"] FTAG4SlimmingHelper.AllVariables = ["AntiKt3PV0TrackJets", "AntiKt2PV0TrackJets", "AntiKt4TruthJets", "BTagging_AntiKt4EMTopo", "BTagging_AntiKt2Track", "BTagging_AntiKt3Track", "BTagging_AntiKt4EMTopoJFVtx", "BTagging_AntiKt2TrackJFVtx", "BTagging_AntiKt3TrackJFVtx", "BTagging_AntiKt4EMTopoSecVtx", "BTagging_AntiKt2TrackSecVtx", "BTagging_AntiKt3TrackSecVtx", "TruthVertices",
'HardScatterVertices':'xAOD::TruthVertexContainer','HardScatterVerticesAux':'xAOD::TruthVertexAuxContainer', 'TruthPrimaryVertices':'xAOD::TruthVertexContainer','TruthPrimaryVerticesAux':'xAOD::TruthVertexAuxContainer', 'AnalysisElectrons':'xAOD::ElectronContainer', 'AnalysisElectronsAux':'xAOD::ElectronAuxContainer', 'AnalysisMuons':'xAOD::MuonContainer', 'AnalysisMuonsAux':'xAOD::MuonAuxContainer', 'AnalysisJets':'xAOD::JetContainer','AnalysisJetsAux':'xAOD::AuxContainerBase', 'AnalysisPhotons':'xAOD::PhotonContainer', 'AnalysisPhotonsAux':'xAOD::PhotonAuxContainer', 'AnalysisTauJets':'xAOD::TauJetContainer', 'AnalysisTauJetsAux':'xAOD::TauJetAuxContainer', 'MET_Core_AnalysisMET':'xAOD::MissingETContainer', 'MET_Core_AnalysisMETAux':'xAOD::MissingETAuxContainer', 'METAssoc_AnalysisMET':'xAOD::MissingETAssociationMap', 'METAssoc_AnalysisMETAux':'xAOD::MissingETAuxAssociationMap', 'AntiKt10TruthTrimmedPtFrac5SmallR20Jets':'xAOD::JetContainer', 'AntiKt10TruthTrimmedPtFrac5SmallR20JetsAux':'xAOD::JetAuxContainer', } # Leaving these as smart collections PHYSLITESlimmingHelper.SmartCollections = [ "InDetTrackParticles", "PrimaryVertices", ] # Variables to save, per object type PHYSLITESlimmingHelper.ExtraVariables = [ "AnalysisElectrons.trackParticleLinks.pt.eta.phi.m.charge.author.DFCommonElectronsLHVeryLoose.DFCommonElectronsLHLoose.DFCommonElectronsLHLooseBL.DFCommonElectronsLHMedium.DFCommonElectronsLHTight.DFCommonElectronsLHVeryLooseIsEMValue.DFCommonElectronsLHLooseIsEMValue.DFCommonElectronsLHLooseBLIsEMValue.DFCommonElectronsLHMediumIsEMValue.DFCommonElectronsLHTightIsEMValue.DFCommonElectronsECIDS.DFCommonElectronsECIDSResult.ptvarcone20.ptvarcone40.topoetcone20.topoetcone20ptCorrection.ptcone20_TightTTVA_pt500.ptcone20_TightTTVA_pt1000.ptvarcone20_TightTTVA_pt1000.ptvarcone30_TightTTVA_pt500.ptvarcone30_TightTTVA_pt1000.caloClusterLinks.ambiguityLink.truthParticleLink.truthOrigin.truthType.truthPdgId.firstEgMotherTruthType.firstEgMotherTruthOrigin.firstEgMotherTruthParticleLink.firstEgMotherPdgId.ambiguityType.OQ", "AnalysisPhotons.pt.eta.phi.m.author.OQ.DFCommonPhotonsIsEMLoose.DFCommonPhotonsIsEMTight.DFCommonPhotonsIsEMTightIsEMValue.DFCommonPhotonsIsEMTightPtIncl.DFCommonPhotonsIsEMTightPtInclIsEMValue.DFCommonPhotonsCleaning.DFCommonPhotonsCleaningNoTime.ptcone20.topoetcone20.topoetcone40.topoetcone20ptCorrection.topoetcone40ptCorrection.caloClusterLinks.vertexLinks.ambiguityLink.truthParticleLink.truthOrigin.truthType", "GSFTrackParticles.chiSquared.phi.d0.theta.qOverP.definingParametersCovMatrix.z0.vz.charge.vertexLink", "CaloCalTopoClusters.rawE.rawEta.rawPhi.rawM.calE.calEta.calPhi.calM.e_sampl", "egammaClusters.calE.calEta.calPhi.e_sampl.eta_sampl.ETACALOFRAME.PHICALOFRAME.ETA2CALOFRAME.PHI2CALOFRAME.constituentClusterLinks", "AnalysisMuons.pt.eta.phi.truthType.truthOrigin.author.muonType.quality.inDetTrackParticleLink.muonSpectrometerTrackParticleLink.combinedTrackParticleLink.InnerDetectorPt.MuonSpectrometerPt.DFCommonGoodMuon.ptcone20.ptcone30.ptcone40.ptvarcone20.ptvarcone30.ptvarcone40.topoetcone20.topoetcone30.topoetcone40.truthParticleLink.charge.extrapolatedMuonSpectrometerTrackParticleLink.allAuthors.ptcone20_TightTTVA_pt1000.ptcone20_TightTTVA_pt500.ptvarcone30_TightTTVA_pt1000.ptvarcone30_TightTTVA_pt500.numberOfPrecisionLayers.combinedTrackOutBoundsPrecisionHits.numberOfPrecisionLayers.numberOfPrecisionHoleLayers.numberOfGoodPrecisionLayers.innerSmallHits.innerLargeHits.middleSmallHits.middleLargeHits.outerSmallHits.outerLargeHits.extendedSmallHits.extendedLargeHits.extendedSmallHoles.isSmallGoodSectors.cscUnspoiledEtaHits.EnergyLoss.energyLossType.momentumBalanceSignificance.scatteringCurvatureSignificance.scatteringNeighbourSignificance", "CombinedMuonTrackParticles.qOverP.d0.z0.vz.phi.theta.truthOrigin.truthType.definingParametersCovMatrix.numberOfPixelDeadSensors.numberOfPixelHits.numberOfPixelHoles.numberOfSCTDeadSensors.numberOfSCTHits.numberOfSCTHoles.numberOfTRTHits.numberOfTRTOutliers.chiSquared.numberDoF", "ExtrapolatedMuonTrackParticles.d0.z0.vz.definingParametersCovMatrix.truthOrigin.truthType.qOverP.theta.phi", "MuonSpectrometerTrackParticles.phi.d0.z0.vz.definingParametersCovMatrix.vertexLink.theta.qOverP.truthParticleLink", "AnalysisTauJets.pt.eta.phi.m.tauTrackLinks.jetLink.charge.isTauFlags.BDTJetScore.BDTEleScore.ptFinalCalib.etaFinalCalib.phiFinalCalib.mFinalCalib.electronLink.EleMatchLikelihoodScore.pt_combined.eta_combined.phi_combined.m_combined.BDTJetScoreSigTrans.BDTEleScoreSigTrans.PanTau_DecayMode.RNNJetScore.RNNJetScoreSigTrans.IsTruthMatched.truthOrigin.truthType.truthParticleLink.truthJetLink",
#==================================================================== # CONTENTS #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper PHYS2SlimmingHelper = SlimmingHelper("PHYS2SlimmingHelper") PHYS2SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "PrimaryVertices", "InDetTrackParticles", "AntiKt4EMTopoJets", "AntiKt4EMPFlowJets", "BTagging_AntiKt4EMTopo_201810", "BTagging_AntiKt4EMPFlow_201810", "BTagging_AntiKt4EMPFlow_201903", "MET_Baseline_AntiKt4EMTopo", "MET_Baseline_AntiKt4EMPFlow", "TauJets", "DiTauJets", "DiTauJetsLowPt", "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets", "AntiKtVR30Rmax4Rmin02TrackJets_BTagging201903", "BTagging_AntiKtVR30Rmax4Rmin02Track_201903" ] excludedVertexAuxData = "-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV" StaticContent = [] StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Tight_Vertices"] StaticContent += ["xAOD::VertexAuxContainer#SoftBVrtClusterTool_Tight_VerticesAux." + excludedVertexAuxData] StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Medium_Vertices"]
# The base name (DAOD_FTAG3 here) must match the string in streamName = derivationFlags.WriteDAOD_FTAG3Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_FTAG3Stream) FTAG3Stream = MSMgr.NewPoolRootStream(streamName, fileName) FTAG3Stream.AcceptAlgs(["FTAG3SkimKernel"]) FTAG3SlimmingHelper = SlimmingHelper("FTAG3SlimmingHelper") # nb: BTagging_AntiKt4EMTopo smart collection includes both AntiKt4EMTopoJets and BTagging_AntiKt4EMTopo # container variables. Thus BTagging_AntiKt4EMTopo is needed in SmartCollections as well as AllVariables FTAG3SlimmingHelper.SmartCollections = [ "Electrons", "Muons", "InDetTrackParticles", "PrimaryVertices", "AntiKt4EMTopoJets", "AntiKt4EMPFlowJets", "MET_Reference_AntiKt4EMTopo", ] FTAG3SlimmingHelper.AllVariables = [ "AntiKt10TruthWZJets", "BTagging_AntiKt2Track", "BTagging_AntiKt2TrackJFVtx", "BTagging_AntiKt10TruthWZ", "BTagging_AntiKt10TruthWZJFVtx", "TruthEvents", "TruthVertices", "TruthParticles", "TruthHFWithDecayParticles", "TruthHFWithDecayVertices", "TruthMuons", "MuonTruthParticles", "MET_Truth", "MET_TruthRegions", "HLT_xAOD__TrackParticleContainer_MuonEFInfo_CombTrackParticles", "HLT_xAOD__TrackParticleContainer_MuonEFInfo_CombTrackParticles_FullScan", "HLT_xAOD__MuonContainer_MuonEFInfo" ]
from AthenaServices.Configurables import ThinningSvc, createThinningSvc augStream = MSMgr.GetStream( streamName ) evtStream = augStream.GetEventStream() svcMgr += createThinningSvc( svcName="STDM1ThinningSvc", outStreams=[evtStream] ) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkSM.STDMExtraContent import * STDM1SlimmingHelper = SlimmingHelper("STDM1SlimmingHelper") STDM1SlimmingHelper.SmartCollections =["AntiKt4EMTopoJets", "AntiKt4LCTopoJets", #"BTagging_AntiKt4LCTopo", #"BTagging_AntiKt4EMTopo", "PrimaryVertices" ] # Trigger content STDM1SlimmingHelper.IncludeJetTriggerContent = True #STDM1SlimmingHelper.IncludeJetTauEtMissTriggerContent = True STDM1SlimmingHelper.AllVariables = ExtraContainersJets if globalflags.DataSource()=='geant4': STDM1SlimmingHelper.AllVariables = [ "TruthVertices", "AntiKt4TruthJets", "AntiKt4TruthWZJets" ] # STDM1SlimmingHelper.AllVariables += ExtraContainersTruth # This list defined in python/STDMExtraContent # Add the jet containers to the stream addJetOutputs(STDM1SlimmingHelper,["STDM1"])
if DerivationFrameworkIsMonteCarlo: addMETTruthMap('AntiKt4EMTopo', "JETMX") addMETTruthMap('AntiKt4LCTopo', "JETMX") addMETTruthMap('AntiKt4EMPFlow', "JETMX") scheduleMETAssocAlg(jetm7Seq, "JETMX") #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper JETM7SlimmingHelper = SlimmingHelper("JETM7SlimmingHelper") JETM7SlimmingHelper.SmartCollections = [ "Electrons", "Photons", "Muons", "TauJets", "InDetTrackParticles", "PrimaryVertices", "MET_Reference_AntiKt4EMTopo", "MET_Reference_AntiKt4LCTopo", "MET_Reference_AntiKt4EMPFlow", "AntiKt4EMTopoJets", "AntiKt4LCTopoJets", "AntiKt4EMPFlowJets", "AntiKt4EMPFlowJets_BTagging201810", "AntiKt4EMPFlowJets_BTagging201903", "AntiKt4EMTopoJets_BTagging201810", "BTagging_AntiKt4EMPFlow_201810", "BTagging_AntiKt4EMPFlow_201903", "BTagging_AntiKt4EMTopo_201810" ] JETM7SlimmingHelper.AllVariables = [ # "CaloCalTopoClusters", "MuonTruthParticles", "egammaTruthParticles", "TruthParticles", "TruthEvents", "TruthVertices", "MuonSegments", "Kt4EMTopoOriginEventShape", "Kt4LCTopoOriginEventShape", "Kt4EMPFlowEventShape", ]
#edmlist(set()) #==================================================================== # SET UP STREAM #==================================================================== # SKIMMING # The base name (DAOD_TRIG4 here) must match the string in # DerivationFrameworkProdFlags (in DerivationFrameworkCore) streamName = derivationFlags.WriteDAOD_TRIG4Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_TRIG4Stream ) TRIG4Stream = MSMgr.NewPoolRootStream( streamName, fileName ) # Only events that pass the filters listed below are written out. # Name must match that of the kernel above # AcceptAlgs = logical OR of filters # RequireAlgs = logical AND of filters TRIG4Stream.AcceptAlgs(["TRIG4Kernel"]) # Thinning from DerivationFrameworkTrigger.TrigThinningHelper import ThinningHelper TRIG4ThinningHelper = ThinningHelper("TRIG4ThinningHelper",edmlist,'slimming') TRIG4ThinningHelper.AppendToStream(TRIG4Stream) #==================================================================== # CONTENT LIST #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper TRIG4SlimmingHelper = SlimmingHelper("TRIG4SlimmingHelper") ##Smart Slimming TRIG4SlimmingHelper.SmartCollections = [] TRIG4SlimmingHelper.AllVariables = edmlist TRIG4SlimmingHelper.AppendContentToStream(TRIG4Stream)
exot6Seq += CfgMgr.DerivationFramework__DerivationKernel( "EXOT6Kernel", ThinningTools=[ EXOT6TPThinningTool, EXOT6MuonTPThinningTool, EXOT6ElectronTPThinningTool, EXOT6PhotonTPThinningTool, EXOT6PhotonCCThinningTool ]) #==================================================================== # Add the containers to the output stream - slimming done here #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkExotics.EXOT6ContentList import EXOT6SmartContent, EXOT6AllVariablesContent, EXOT6ExtraVariables, EXOT6UnslimmedContent EXOT6SlimmingHelper = SlimmingHelper("EXOT6SlimmingHelper") # Containers to be smart slimmed, see https://svnweb.cern.ch/trac/atlasoff/browser/PhysicsAnalysis # /DerivationFramework/DerivationFrameworkExamples/trunk/share/SlimmingExample.py#L38 EXOT6SlimmingHelper.SmartCollections = EXOT6SmartContent # Keep all variables for containers which we don't want to smart slim and were # not created in the derivation EXOT6SlimmingHelper.AllVariables = EXOT6AllVariablesContent # Adding extra missing variables from the smart slimming EXOT6SlimmingHelper.ExtraVariables = EXOT6ExtraVariables EXOT6SlimmingHelper.StaticContent = EXOT6UnslimmedContent EXOT6SlimmingHelper.AppendContentToStream(EXOT6Stream)
DerivationFrameworkJob += MUON5Seq #==================================================================== # SLIMMING TOOL #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper MUON5SlimmingHelper = SlimmingHelper("MUON5SlimmingHelper") # Smart slimming containers MUON5SlimmingHelper.SmartCollections = ["Electrons", "Photons", "Muons", "TauJets", "TauMVATESJets", "MET_Reference_AntiKt4EMTopo", "AntiKt4EMTopoJets", "AntiKt4EMTopoJets_BTagging201810", "BTagging_AntiKt4EMTopo_201810", "PrimaryVertices"] # Append new b-tagging container to dictionary for saving MUON5SlimmingHelper.AppendToDictionary = {'BTagging_AntiKt4Track' : 'xAOD::BTaggingContainer', 'BTagging_AntiKt4TrackAux' : 'xAOD::BTaggingAuxContainer', 'SecVtxContainer_Electrons' : 'xAOD::VertexContainer', 'SecVtxContainer_ElectronsAux' : 'xAOD::VertexAuxContainer', 'SecVtx_ConvVtxContainer_Electrons' : 'xAOD::VertexContainer', 'SecVtx_ConvVtxContainer_ElectronsAux': 'xAOD::VertexAuxContainer', 'SecVtxContainer_Muons' : 'xAOD::VertexContainer', 'SecVtxContainer_MuonsAux' : 'xAOD::VertexAuxContainer',
from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper EXOT8SlimmingHelper = SlimmingHelper("EXOT8SlimmingHelper") # from DerivationFrameworkExotics.EXOT8ContentList import EXOT8AllVariablesContent, EXOT8SmartContent, EXOT8Content # EXOT8SlimmingHelper.SmartCollections = EXOT8SmartContent # EXOT8SlimmingHelper.AllVariables = EXOT8AllVariablesContent # EXOT8SlimmingHelper.UserContent = EXOT8Content EXOT8SlimmingHelper.SmartCollections = [ "AntiKt4EMTopoJets", "AntiKt4LCTopoJets", "BTagging_AntiKt4LCTopo", "BTagging_AntiKt4EMTopo", "BTagging_AntiKt2Track", "BTagging_AntiKt3Track", "BTagging_AntiKt4Track", "InDetTrackParticles", "PrimaryVertices", "Electrons", "Muons", "MET_Reference_AntiKt4LCTopo", "MET_Reference_AntiKt4EMTopo", ] EXOT8SlimmingHelper.ExtraVariables = ["Electrons.charge", "Muons.charge"] EXOT8SlimmingHelper.AllVariables = [ "TruthParticles", "TruthEvents", "TruthVertices", "AntiKt10LCTopoJets", "AntiKt2PV0TrackJets", "AntiKt3PV0TrackJets",
"SUSY8GenFilt", SimBarcodeOffset=DerivationFrameworkSimBarcodeOffset) AugmentationTools.append(ToolSvc.SUSY8GenFilt) #============================================================================== # Augment after skim #============================================================================== SeqSUSY8 += CfgMgr.DerivationFramework__DerivationKernel( "SUSY8KernelAug", AugmentationTools=AugmentationTools, ThinningTools=thinningTools, ) #==================================================================== # CONTENT LIST #==================================================================== from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper from DerivationFrameworkSUSY.SUSY8ContentList import * SUSY8SlimmingHelper = SlimmingHelper("SUSY8SlimmingHelper") SUSY8SlimmingHelper.SmartCollections = SUSY8SmartContent SUSY8SlimmingHelper.ExtraVariables = SUSY8ExtraVariables SUSY8SlimmingHelper.AllVariables = SUSY8AllVariablesContent SUSY8SlimmingHelper.IncludeMuonTriggerContent = True SUSY8SlimmingHelper.IncludeJetTriggerContent = True SUSY8SlimmingHelper.IncludeEtMissTriggerContent = True SUSY8SlimmingHelper.AppendContentToStream(SUSY8Stream)