#==================================================================== # THINNING TOOLS #==================================================================== thinningTools=[] #===================== # TRIGGER NAV THINNING #===================== # Establish the thinning helper from DerivationFrameworkCore.ThinningHelper import ThinningHelper STDM5ThinningHelper = ThinningHelper( "STDM5ThinningHelper" ) #trigger navigation content STDM5ThinningHelper.TriggerChains = 'HLT_e.*|HLT_2e.*|HLT_mu.*|HLT_2mu.*' STDM5ThinningHelper.AppendToStream( STDM5Stream ) #===================== # TRACK THINNING #===================== from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning STDM5JetTPThinningTool = DerivationFramework__JetTrackParticleThinning( name = "STDM5JetTPThinningTool", ThinningService = STDM5ThinningHelper.ThinningSvc(), JetKey = "AntiKt4EMTopoJets", SelectionString = "AntiKt4EMTopoJets.pt > 15*GeV", InDetTrackParticlesKey = "InDetTrackParticles", ApplyAnd = True)
"BTagging_AntiKt4EMTopo_201810SecVtx": "xAOD::VertexContainer", "BTagging_AntiKt4EMTopo_201810SecVtxAux": "xAOD::VertexAuxContainer", "BTagging_AntiKt2Track": "xAOD::BTaggingContainer", "BTagging_AntiKt2TrackAux": "xAOD::BTaggingAuxContainer", "BTagging_AntiKt2TrackJFVtx": "xAOD::BTagVertexContainer", "BTagging_AntiKt2TrackJFVtxAux": "xAOD::BTagVertexAuxContainer", "BTagging_AntiKt2TrackSecVtx": "xAOD::VertexContainer", "BTagging_AntiKt2TrackSecVtxAux": "xAOD::VertexAuxContainer", "BTagging_AntiKt10TruthWZ": "xAOD::BTaggingContainer", "BTagging_AntiKt10TruthWZAux": "xAOD::BTaggingAuxContainer", "BTagging_AntiKt10TruthWZJFVtx": "xAOD::BTagVertexContainer", "BTagging_AntiKt10TruthWZJFVtxAux": "xAOD::BTagVertexAuxContainer", "BTagging_AntiKt10TruthWZSecVtx": "xAOD::VertexContainer", "BTagging_AntiKt10TruthWZSecVtxAux": "xAOD::VertexAuxContainer", } #---------------------------------------------------------------------- addJetOutputs(FTAG3SlimmingHelper, ["FTAG3"]) FTAG3SlimmingHelper.IncludeMuonTriggerContent = True FTAG3SlimmingHelper.IncludeEGammaTriggerContent = False FTAG3SlimmingHelper.IncludeJetTriggerContent = True FTAG3SlimmingHelper.IncludeEtMissTriggerContent = False FTAG3SlimmingHelper.IncludeBJetTriggerContent = True #FTAG3 TrigNav Thinning FTAG3ThinningHelper = ThinningHelper("FTAG3ThinningHelper") FTAG3ThinningHelper.TriggerChains = 'HLT_mu*_j.*_dr05|HLT_mu*_j.*_bperf_split_dr05_dz02|HLT_mu*_j.*_boffperf_split_dr05_dz02|HLT_mu*_j.*_gsc.*_dr05_dz02' FTAG3ThinningHelper.AppendToStream(FTAG3Stream) FTAG3SlimmingHelper.AppendContentToStream(FTAG3Stream)
### Init from DerivationFrameworkCore.ThinningHelper import ThinningHelper SUSY2ThinningHelper = ThinningHelper("SUSY2ThinningHelper") thinningTools = [] AugmentationTools = [] # stream-specific sequence for on-the-fly jet building SeqSUSY2 = CfgMgr.AthSequencer("SeqSUSY2") DerivationFrameworkJob += SeqSUSY2 #==================================================================== # Trigger navigation thinning #==================================================================== from DerivationFrameworkSUSY.SUSY2TriggerList import triggersNavThin SUSY2ThinningHelper.TriggerChains = '|'.join(triggersNavThin) SUSY2ThinningHelper.AppendToStream(SUSY2Stream) #==================================================================== # THINNING TOOLS #==================================================================== # MET/Jet tracks -> no longer needed, 11.05.2015 from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning # TrackParticles directly SUSY2TPThinningTool = DerivationFramework__TrackParticleThinning( name="SUSY2TPThinningTool", ThinningService=SUSY2ThinningHelper.ThinningSvc(),
from AthenaCommon.GlobalFlags import globalflags #==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_HIGG3D1Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_HIGG3D1Stream) HIGG3D1Stream = MSMgr.NewPoolRootStream(streamName, fileName) HIGG3D1Stream.AcceptAlgs(["HIGG3D1Kernel"]) ## Prepare thinning service and add trigger chains for TrigNavigation thinning from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG3D1ThinningHelper = ThinningHelper("HIGG3D1ThinningHelper") HIGG3D1ThinningHelper.TriggerChains = "HLT_mu.* | HLT_e.* | HLT_2e.* | HLT_2mu.*" HIGG3D1ThinningHelper.AppendToStream(HIGG3D1Stream) #================ # THINNING #================ thinningTools = [] # MET/Jet tracks thinning_expression = "(InDetTrackParticles.pt > 0.5*GeV) && (InDetTrackParticles.numberOfPixelHits > 0) && (InDetTrackParticles.numberOfSCTHits > 5) && (abs(DFCommonInDetTrackZ0AtPV) < 1.5)" from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning HIGG3D1JetTPThinningTool = DerivationFramework__JetTrackParticleThinning( name="HIGG3D1JetTPThinningTool", StreamName=streamName,
#==================================================================== photonTriggers_matching = ['HLT_g60_loose', 'HLT_g140_loose', 'HLT_g160_loose'] from DerivationFrameworkCore.TriggerMatchingAugmentation import applyTriggerMatching TrigMatchAug, NewTrigVars = applyTriggerMatching(ToolNamePrefix="JETM6", ElectronTriggers=electronTriggers, MuonTriggers=muonTriggers, PhotonTriggers=photonTriggers_matching) #==================================================================== # TRIGGER THINNING TOOL #==================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM6ThinningHelper = ThinningHelper( "JETM6ThinningHelper" ) JETM6ThinningHelper.TriggerChains = '' JETM6ThinningHelper.TriggerChains += "|".join(electronTriggers) JETM6ThinningHelper.TriggerChains += "|".join(muonTriggers) JETM6ThinningHelper.TriggerChains += "|".join(photonTriggers) JETM6ThinningHelper.TriggerChains += "|".join(jetTriggers) JETM6ThinningHelper.AppendToStream( JETM6Stream ) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] ######################################### # Tracks associated with akt2 jets
from DerivationFrameworkCalo.DerivationFrameworkCaloConf import DerivationFramework__MaxCellDecorator EGAM9_MaxCellDecoratorTool = DerivationFramework__MaxCellDecorator( name="EGAM9_MaxCellDecoratorTool", SGKey_electrons="Electrons", SGKey_photons="Photons", ) ToolSvc += EGAM9_MaxCellDecoratorTool #==================================================================== # SET UP THINNING #==================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper EGAM9ThinningHelper = ThinningHelper("EGAM9ThinningHelper") EGAM9ThinningHelper.TriggerChains = '(^(?!.*_[0-9]*(mu|j|xe|tau|ht|xs|te))(?!HLT_[eg].*_[0-9]*[eg][0-9].*)(?!HLT_eb.*)(?!.*larpeb.*)(?!HLT_.*_AFP_.*)(HLT_[eg].*))' if globalflags.DataSource() != 'geant4': ExtraContainersTrigger += ExtraContainersTriggerDataOnly EGAM9ThinningHelper.AppendToStream(EGAM9Stream, ExtraContainersTrigger) thinningTools = [] # Truth thinning if globalflags.DataSource() == 'geant4': truth_cond_WZH = "((abs(TruthParticles.pdgId) >= 23) && (abs(TruthParticles.pdgId) <= 25))" # W, Z and Higgs truth_cond_lep = "((abs(TruthParticles.pdgId) >= 11) && (abs(TruthParticles.pdgId) <= 16))" # Leptons truth_cond_top = "((abs(TruthParticles.pdgId) == 6))" # Top quark truth_cond_gam = "((abs(TruthParticles.pdgId) == 22) && (TruthParticles.pt > 1*GeV))" # Photon truth_cond_finalState = '(TruthParticles.status == 1 && TruthParticles.barcode < 200000)' # stable particles truth_expression = '(' + truth_cond_WZH + ' || ' + truth_cond_lep + ' || ' + truth_cond_top + ' || ' + truth_cond_gam + ') || (' + truth_cond_finalState + ')'
#==================================================================== streamName = derivationFlags.WriteDAOD_EXOT10Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_EXOT10Stream) EXOT10Stream = MSMgr.NewPoolRootStream(streamName, fileName) EXOT10Stream.AcceptAlgs(["EXOT10Kernel"]) #==================================================================== # THINNING #==================================================================== # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper EXOT10ThinningHelper = ThinningHelper("EXOT10ThinningHelper") beamEnergy = jobproperties.Beam.energy() if (beamEnergy < 4.1e+06): EXOT10ThinningHelper.TriggerChains = 'EF_2g20_tight1 | EF_2g50_loose | HLT_g35_medium_g25_medium' if (beamEnergy > 6.0e+06): EXOT10ThinningHelper.TriggerChains = 'HLT_2g20_loose | HLT_2g50_loose | HLT_g35_medium_g25_medium' EXOT10ThinningHelper.AppendToStream(EXOT10Stream) #==================================================================== # THINNING TOOLS #==================================================================== from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning EXOT10TPThinningTool = DerivationFramework__TrackParticleThinning( name="EXOT10TPThinningTool", StreamName=streamName, SelectionString="InDetTrackParticles.pt > 10*GeV", InDetTrackParticlesKey="InDetTrackParticles") #ToolSvc += EXOT10TPThinningTool
SUSY6Stream.AcceptAlgs(["SUSY6KernelSkim"]) ### Init from DerivationFrameworkCore.ThinningHelper import ThinningHelper SUSY6ThinningHelper = ThinningHelper("SUSY6ThinningHelper") thinningTools = [] AugmentationTools = [] # stream-specific sequence for on-the-fly jet building SeqSUSY6 = CfgMgr.AthSequencer("SeqSUSY6") DerivationFrameworkJob += SeqSUSY6 #==================================================================== # Trigger navigation thinning #==================================================================== SUSY6ThinningHelper.TriggerChains = 'HLT_xe.*|HLT_2mu14|HLT_mu50' SUSY6ThinningHelper.AppendToStream(SUSY6Stream) #==================================================================== # THINNING TOOLS #==================================================================== thinning_expression = "(InDetTrackParticles.pt > 0.5*GeV) && (InDetTrackParticles.numberOfPixelHits > 0) && (abs(DFCommonInDetTrackZ0AtPV) < 3.0)" from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning SUSY6MetTPThinningTool = DerivationFramework__TrackParticleThinning( name="SUSY6MetTPThinningTool", ThinningService=SUSY6ThinningHelper.ThinningSvc(), SelectionString=thinning_expression, InDetTrackParticlesKey="InDetTrackParticles", ApplyAnd=True) ToolSvc += SUSY6MetTPThinningTool
### Init from DerivationFrameworkCore.ThinningHelper import ThinningHelper SUSY10ThinningHelper = ThinningHelper("SUSY10ThinningHelper") thinningTools = [] AugmentationTools = [] # stream-specific sequence for on-the-fly jet building SeqSUSY10 = CfgMgr.AthSequencer("SeqSUSY10") DerivationFrameworkJob += SeqSUSY10 #==================================================================== # Trigger navigation thinning #==================================================================== triggerRegEx = ['HLT_xe.*', 'HLT_e.*', 'HLT_mu.*'] SUSY10ThinningHelper.TriggerChains = '|'.join(triggerRegEx) SUSY10ThinningHelper.AppendToStream(SUSY10Stream) #==================================================================== # THINNING TOOL #==================================================================== # MET/Jet tracks -> no longer needed, 11.05.2015 from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning SUSY10TPThinningTool = DerivationFramework__TrackParticleThinning( name="SUSY10TPThinningTool", StreamName=streamName, SelectionString="InDetTrackParticles.pt > 10*GeV",
#====================================================================================================================== # SET UP STREAM #====================================================================================================================== streamName = derivationFlags.WriteDAOD_JETM11Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_JETM11Stream) JETM11Stream = MSMgr.NewPoolRootStream(streamName, fileName) JETM11Stream.AcceptAlgs(['JETM11Kernel']) #======================================= # ESTABLISH THE THINNING HELPER #======================================= from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM11ThinningHelper = ThinningHelper("JETM11ThinningHelper") JETM11ThinningHelper.TriggerChains = ( 'L1_XE.*|L1_XS.*|L1_TE.*|HLT_xe.*|HLT_xs.*|HLT_te.*|' 'HLT_e26_lhvloose_L1EM20VH.*|HLT_e\\d\\d_(lhvloose|vloose)|' 'HLT_mu20_iloose.*|HLT_mu50|HLT_e24_lhmedium_iloose_L1_EM20VH|' 'HLT_e60_lhmedium|L1_J.*XE.*|HLT_j.*xe.*') JETM11ThinningHelper.AppendToStream(JETM11Stream) #====================================================================================================================== # THINNING TOOLS #====================================================================================================================== thinningTools = [] # TrackParticles directly from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning JETM11TPThinningTool = DerivationFramework__TrackParticleThinning( name="JETM11TPThinningTool", ThinningService=JETM11ThinningHelper.ThinningSvc(), SelectionString="InDetTrackParticles.pt > 10*GeV",
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_JETM2Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_JETM2Stream ) JETM2Stream = MSMgr.NewPoolRootStream( streamName, fileName ) JETM2Stream.AcceptAlgs(["JETM2Kernel"]) #======================================= # ESTABLISH THE THINNING HELPER #======================================= from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM2ThinningHelper = ThinningHelper( "JETM2ThinningHelper" ) JETM2ThinningHelper.TriggerChains = orstr.join(electronTriggers+muonTriggers) JETM2ThinningHelper.AppendToStream( JETM2Stream ) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # TrackParticles associated with Muons from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__MuonTrackParticleThinning JETM2MuonTPThinningTool = DerivationFramework__MuonTrackParticleThinning(name = "JETM2MuonTPThinningTool", ThinningService = JETM2ThinningHelper.ThinningSvc(), MuonKey = "Muons", InDetTrackParticlesKey = "InDetTrackParticles") ToolSvc += JETM2MuonTPThinningTool thinningTools.append(JETM2MuonTPThinningTool)
] StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"] StaticContent += [ "xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData ] StaticContent += [ "xAOD::VertexContainer#VrtSecInclusive_SoftBtagCandidateVertices" ] StaticContent += [ "xAOD::VertexAuxContainer#VrtSecInclusive_SoftBtagCandidateVerticesAux." ] FTAG2SlimmingHelper.StaticContent = StaticContent #---------------------------------------------------------------------- addJetOutputs(FTAG2SlimmingHelper, ["FTAG2"]) FTAG2SlimmingHelper.IncludeMuonTriggerContent = True FTAG2SlimmingHelper.IncludeEGammaTriggerContent = True FTAG2SlimmingHelper.IncludeJetTriggerContent = True FTAG2SlimmingHelper.IncludeEtMissTriggerContent = True FTAG2SlimmingHelper.IncludeBJetTriggerContent = True #FTAG2 TrigNav Thinning FTAG2ThinningHelper = ThinningHelper("FTAG2ThinningHelper") FTAG2ThinningHelper.TriggerChains = 'HLT_.*b.*perf.*|HLT_mu.*|HLT_e.*' FTAG2ThinningHelper.AppendToStream(FTAG2Stream) FTAG2SlimmingHelper.AppendContentToStream(FTAG2Stream)
TOPQ4Stream.AcceptAlgs(["TOPQ4Kernel"]) #==================================================================== # PDF Weight Metadata #==================================================================== if DFisMC: from DerivationFrameworkCore.WeightMetadata import * #==================================================================== # TRIGGER NAVIGATION THINNING #==================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper import DerivationFrameworkTop.TOPQCommonThinning TOPQ4ThinningHelper = ThinningHelper("TOPQ4ThinningHelper") TOPQ4ThinningHelper.TriggerChains = DerivationFrameworkTop.TOPQCommonThinning.TOPQTriggerChains( 'hadronicTriggers' if globalflags.DataSource() != 'geant4' else 'jetTriggers') TOPQ4ThinningHelper.AppendToStream(TOPQ4Stream) #==================================================================== # SKIMMING TOOLS #==================================================================== import DerivationFrameworkTop.TOPQCommonSelection skimmingTools_lep = DerivationFrameworkTop.TOPQCommonSelection.setup_lep( 'TOPQ4', ToolSvc) skimmingTools_jet = DerivationFrameworkTop.TOPQCommonSelection.setup_jet( 'TOPQ4', ToolSvc) #==================================================================== # THINNING TOOLS #====================================================================
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_EXOT2Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_EXOT2Stream ) EXOT2Stream = MSMgr.NewPoolRootStream( streamName, fileName ) EXOT2Stream.AcceptAlgs(["EXOT2Kernel"]) #===================== # TRIGGER NAV THINNING #===================== #Establish the thinning helper from DerivationFrameworkCore.ThinningHelper import ThinningHelper EXOT2ThinningHelper = ThinningHelper( "EXOT2ThinningHelper" ) #trigger navigation content EXOT2ThinningHelper.TriggerChains = 'HLT_j.*|HLT_noalg_L1J.*' EXOT2ThinningHelper.AppendToStream( EXOT2Stream ) #======================================= # SKIMMING TOOL #======================================= beamEnergy = jobproperties.Beam.energy() expression = '' if (beamEnergy < 4.1e+06): expression = '(EventInfo.eventTypeBitmask==1) || (EF_j145_a4tchad_ht700_L2FS || EF_j280_a4tchad || EF_j220_a4tchad || EF_j180_a4tchad || EF_j145_a4tchad || EF_j110_a4tchad || EF_j80_a4tchad || EF_j55_a4tchad || EF_j35_a4tchad || EF_j25_a4tchad || EF_j15_a4tchad || EF_j220_a10tcem_delayed)' if (beamEnergy > 6.0e+06): expression = '(EventInfo.eventTypeBitmask==1) || (HLT_j15 || HLT_j25 || HLT_j35 || HLT_j55 || HLT_j60 || HLT_j85 || HLT_j100 || HLT_j110 || HLT_j150 || HLT_j175 || HLT_j200 || HLT_j260 || HLT_j300 || HLT_j320 || HLT_j360 || HLT_j380 || HLT_j400 || HLT_j420 || HLT_j440 || HLT_j460 || HLT_noalg_L1J400)' from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__xAODStringSkimmingTool EXOT2SkimmingTool = DerivationFramework__xAODStringSkimmingTool( name = "EXOT2SkimmingTool", expression = expression)
SUSY7Stream.AcceptAlgs(["SUSY7KernelSkim"]) ### Init from DerivationFrameworkCore.ThinningHelper import ThinningHelper SUSY7ThinningHelper = ThinningHelper("SUSY7ThinningHelper") thinningTools = [] AugmentationTools = [] # stream-specific sequence for on-the-fly jet building SeqSUSY7 = CfgMgr.AthSequencer("SeqSUSY7") DerivationFrameworkJob += SeqSUSY7 #==================================================================== # Trigger navigation thinning #==================================================================== SUSY7ThinningHelper.TriggerChains = 'HLT_e.*|HLT_g.*|HLT_mu.*' SUSY7ThinningHelper.AppendToStream(SUSY7Stream) #==================================================================== # THINNING TOOL #====================================================================\ # MET/Jet tracks -> no longer needed, 11.05.2015 from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning SUSY7TPThinningTool = DerivationFramework__TrackParticleThinning( name="SUSY7TPThinningTool", StreamName=streamName, SelectionString="InDetTrackParticles.pt > 10*GeV", InDetTrackParticlesKey="InDetTrackParticles")
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_JETM4Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_JETM4Stream ) JETM4Stream = MSMgr.NewPoolRootStream( streamName, fileName ) JETM4Stream.AcceptAlgs(["JETM4Kernel"]) #======================================= # ESTABLISH THE THINNING HELPER #======================================= from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM4ThinningHelper = ThinningHelper( "JETM4ThinningHelper" ) JETM4ThinningHelper.TriggerChains = triggers JETM4ThinningHelper.AppendToStream( JETM4Stream ) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # TrackParticles associated with Muons from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__MuonTrackParticleThinning JETM4MuonTPThinningTool = DerivationFramework__MuonTrackParticleThinning(name = "JETM4MuonTPThinningTool", ThinningService = JETM4ThinningHelper.ThinningSvc(), MuonKey = "Muons", InDetTrackParticlesKey = "InDetTrackParticles") ToolSvc += JETM4MuonTPThinningTool thinningTools.append(JETM4MuonTPThinningTool)
# Accept the most selective kernel (last one in sequence; later in derivation) TOPQ2Stream.AcceptAlgs(["TOPQ2Kernel"]) #==================================================================== # PDF Weight Metadata #==================================================================== if DFisMC: from DerivationFrameworkCore.WeightMetadata import * #==================================================================== # TRIGGER NAVIGATION THINNING #==================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper import DerivationFrameworkTop.TOPQCommonThinning TOPQ2ThinningHelper = ThinningHelper("TOPQ2ThinningHelper") TOPQ2ThinningHelper.TriggerChains = DerivationFrameworkTop.TOPQCommonThinning.TOPQTriggerChains( ) TOPQ2ThinningHelper.AppendToStream(TOPQ2Stream) #==================================================================== # SKIMMING TOOLS #==================================================================== import DerivationFrameworkTop.TOPQCommonSelection skimmingTools_lep = DerivationFrameworkTop.TOPQCommonSelection.setup_lep( 'TOPQ2', ToolSvc) skimmingTools_jet = DerivationFrameworkTop.TOPQCommonSelection.setup_jet( 'TOPQ2', ToolSvc) #==================================================================== # THINNING TOOLS #==================================================================== import DerivationFrameworkTop.TOPQCommonThinning
#==================================================================== streamName = derivationFlags.WriteDAOD_HIGG5D1Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_HIGG5D1Stream) HIGG5D1Stream = MSMgr.NewPoolRootStream(streamName, fileName) HIGG5D1Stream.AcceptAlgs(["HIGG5D1Kernel"]) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG5D1ThinningHelper = ThinningHelper("HIGG5D1ThinningHelper") #trigger navigation content HIGG5D1ThinningHelper.TriggerChains = 'HLT_xe.*|HLT_j.*|HLT_g.*' HIGG5D1ThinningHelper.AppendToStream(HIGG5D1Stream) # MC truth thinning (not for data) truth_cond_WZH = "((abs(TruthParticles.pdgId) >= 23) && (abs(TruthParticles.pdgId) <= 25))" # W, Z and Higgs truth_cond_Lepton = "((abs(TruthParticles.pdgId) >= 11) && (abs(TruthParticles.pdgId) <= 16))" # Leptons truth_cond_Quark = "((abs(TruthParticles.pdgId) == 6) || (abs(TruthParticles.pdgId) == 5))" # Top quark and Bottom quark truth_cond_Photon = "((abs(TruthParticles.pdgId) == 22) && (TruthParticles.pt > 1*GeV))" # Photon truth_expression = '(' + truth_cond_WZH + ' || ' + truth_cond_Lepton + ' || ' + truth_cond_Quark + ' || ' + truth_cond_Photon + ')' from DerivationFrameworkMCTruth.DerivationFrameworkMCTruthConf import DerivationFramework__GenericTruthThinning HIGG5D1MCThinningTool = DerivationFramework__GenericTruthThinning( name="HIGG5D1MCThinningTool", StreamName=streamName, ParticleSelectionString=truth_expression, PreserveDescendants=False, PreserveGeneratorDescendants=True,
from DerivationFrameworkTau.TauCommon import * # ========================================================================================================================== # Set up stream # ========================================================================================================================== streamName = derivationFlags.WriteDAOD_TAUP1Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_TAUP1Stream) TAUP1Stream = MSMgr.NewPoolRootStream(streamName, fileName) TAUP1Stream.AcceptAlgs(["TAUP1Kernel"]) # ========================================================================================================================== # Thinning tool # ========================================================================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper TAUP1ThinningHelper = ThinningHelper("TAUP1ThinningHelper") TAUP1ThinningHelper.TriggerChains = "HLT_e24.*|HLT_e60.*" TAUP1ThinningHelper.AppendToStream(TAUP1Stream) # MET/Jet tracks thinning_expression = "(InDetTrackParticles.pt > 0.5*GeV) && (InDetTrackParticles.numberOfPixelHits > 0) && (InDetTrackParticles.numberOfSCTHits > 5) && (abs(DFCommonInDetTrackZ0AtPV) < 1.5)" from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__TrackParticleThinning TAUP1MetTPThinningTool = DerivationFramework__TrackParticleThinning( name="TAUP1MetTPThinningTool", ThinningService=TAUP1ThinningHelper.ThinningSvc(), SelectionString=thinning_expression, InDetTrackParticlesKey="InDetTrackParticles", ApplyAnd=True) ToolSvc += TAUP1MetTPThinningTool from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning TAUP1JetTPThinningTool = DerivationFramework__JetTrackParticleThinning(
#==================================================================== streamName = derivationFlags.WriteDAOD_HIGG5D3Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_HIGG5D3Stream) HIGG5D3Stream = MSMgr.NewPoolRootStream(streamName, fileName) HIGG5D3Stream.AcceptAlgs(["HIGG5D3Kernel"]) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG5D3ThinningHelper = ThinningHelper("HIGG5D3ThinningHelper") #trigger navigation content HIGG5D3ThinningHelper.TriggerChains = 'HLT_g.*|HLT_mu.*|HLT_j.*|HLT_b.*' HIGG5D3ThinningHelper.AppendToStream(HIGG5D3Stream) # MC truth thinning (not for data) truth_cond_WZH = "((abs(TruthParticles.pdgId) >= 23) && (abs(TruthParticles.pdgId) <= 25))" # W, Z and Higgs truth_cond_Lepton = "((abs(TruthParticles.pdgId) >= 11) && (abs(TruthParticles.pdgId) <= 16))" # Leptons truth_cond_Quark = "((abs(TruthParticles.pdgId) == 6) || (abs(TruthParticles.pdgId) == 5))" # Top quark and Bottom quark truth_cond_Photon = "((abs(TruthParticles.pdgId) == 22) && (TruthParticles.pt > 1*GeV))" # Photon truth_expression = '(' + truth_cond_WZH + ' || ' + truth_cond_Lepton + ' || ' + truth_cond_Quark + ' || ' + truth_cond_Photon + ')' from DerivationFrameworkMCTruth.DerivationFrameworkMCTruthConf import DerivationFramework__GenericTruthThinning HIGG5D3MCThinningTool = DerivationFramework__GenericTruthThinning( name="HIGG5D3MCThinningTool", ThinningService=HIGG5D3ThinningHelper.ThinningSvc(), ParticleSelectionString=truth_expression, PreserveDescendants=False, PreserveGeneratorDescendants=True,
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_JETM4Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_JETM4Stream) JETM4Stream = MSMgr.NewPoolRootStream(streamName, fileName) JETM4Stream.AcceptAlgs(["JETM4Kernel"]) #======================================= # ESTABLISH THE THINNING HELPER #======================================= from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM4ThinningHelper = ThinningHelper("JETM4ThinningHelper") JETM4ThinningHelper.TriggerChains = triggers JETM4ThinningHelper.AppendToStream(JETM4Stream) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # TrackParticles associated with Muons from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__MuonTrackParticleThinning JETM4MuonTPThinningTool = DerivationFramework__MuonTrackParticleThinning( name="JETM4MuonTPThinningTool", ThinningService=JETM4ThinningHelper.ThinningSvc(), MuonKey="Muons", InDetTrackParticlesKey="InDetTrackParticles") ToolSvc += JETM4MuonTPThinningTool
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_TEST10Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_TEST10Stream) TEST10Stream = MSMgr.NewPoolRootStream(streamName, fileName) TEST10Stream.AcceptAlgs(["TEST10Kernel"]) #==================================================================== # THINNING #==================================================================== # Establish the thinning helper (which will set up the services behind the scenes) # Plug in the required triggers from DerivationFrameworkCore.ThinningHelper import ThinningHelper TEST10ThinningHelper = ThinningHelper("TEST10ThinningHelper") TEST10ThinningHelper.TriggerChains = 'HLT_e.*|HLT_g.*|HLT_mu.*|HLT_tau.*' 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 #====================================================================
"HLT_e12_lhvloose_L1EM10VH", "HLT_e12_lhvloose_nod0_L1EM10VH", "HLT_e15_lhvloose_L1EM7", "HLT_e15_lhvloose_L1EM13VH", "HLT_e15_lhvloose_nod0_L1EM13VH", "HLT_e17_lhvloose", "HLT_e17_lhvloose_nod0", "HLT_e20_lhvloose_L1EM12", "HLT_e20_lhvloose", "HLT_e20_lhvloose_nod0", "HLT_e24_lhvloose_nod0_L1EM18VH", "HLT_e24_lhvloose_nod0_L1EM20VH" ] from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__TriggerSkimmingTool HIGG3D3TrigSkimmingTool = DerivationFramework__TriggerSkimmingTool( name="HIGG3D3TrigSkimmingTool", TriggerListOR=TriggerChains) ToolSvc += HIGG3D3TrigSkimmingTool from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG3D3ThinningHelper = ThinningHelper("HIGG3D3ThinningHelper") HIGG3D3ThinningHelper.TriggerChains = " | ".join(TriggerChains) HIGG3D3ThinningHelper.AppendToStream(HIGG3D3Stream) #================ # THINNING #================ thinningTools = [] # MET/Jet tracks from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning HIGG3D3JetTPThinningTool = DerivationFramework__JetTrackParticleThinning( name="HIGG3D3JetTPThinningTool", StreamName=streamName, JetKey="AntiKt4EMTopoJets", InDetTrackParticlesKey="InDetTrackParticles") ToolSvc += HIGG3D3JetTPThinningTool
ToolSvc += DecoTool #==================================================================== # SET UP STREAM #==================================================================== MUON3Stream = MSMgr.NewPoolRootStream( derivationFlags.WriteDAOD_MUON3Stream.StreamName, buildFileName(derivationFlags.WriteDAOD_MUON3Stream)) MUON3Stream.AcceptAlgs(["MUON3Kernel"]) ### trigger thinning triggerList = ['HLT_mu14', 'HLT_2mu4', 'HLT_2mu6_bJpsimumu'] from DerivationFrameworkCore.ThinningHelper import ThinningHelper MUON3ThinningHelper = ThinningHelper("MUON3ThinningHelper") MUON3ThinningHelper.TriggerChains = '|'.join(triggerList) MUON3ThinningHelper.AppendToStream(MUON3Stream) #==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_MUON3Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_MUON3Stream) MUON3Stream = MSMgr.NewPoolRootStream(streamName, fileName) MUON3Stream.AcceptAlgs(["MUON3Kernel"]) # Special lines for thinning # Thinning service name must match the one passed to the thinning tools augStream = MSMgr.GetStream(streamName) evtStream = augStream.GetEventStream() #====================================================================
### Init from DerivationFrameworkCore.ThinningHelper import ThinningHelper SUSY5ThinningHelper = ThinningHelper("SUSY5ThinningHelper") thinningTools = [] AugmentationTools = [] # stream-specific sequence for on-the-fly jet building SeqSUSY5 = CfgMgr.AthSequencer("SeqSUSY5") DerivationFrameworkJob += SeqSUSY5 #==================================================================== # Trigger navigation thinning #==================================================================== triggerRegEx = ["e.*", "mu.*", "tau.*"] SUSY5ThinningHelper.TriggerChains = 'HLT_(' + ' | '.join(triggerRegEx) + ')' SUSY5ThinningHelper.AppendToStream(SUSY5Stream) #==================================================================== # THINNING TOOLS #==================================================================== # MET/Jet tracks thinning_expression = "(InDetTrackParticles.pt > 0.5*GeV) && (InDetTrackParticles.numberOfPixelHits > 0) && (InDetTrackParticles.numberOfSCTHits > 5) && (abs(DFCommonInDetTrackZ0AtPV) < 1.5)" from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning SUSY5JetTPThinningTool = DerivationFramework__JetTrackParticleThinning( name="SUSY5JetTPThinningTool", StreamName=streamName, JetKey="AntiKt4EMTopoJets", InDetTrackParticlesKey="InDetTrackParticles",
SeqSUSY8 = CfgMgr.AthSequencer("SeqSUSY8") DerivationFrameworkJob += SeqSUSY8 #==================================================================== # Trigger navigation thinning #==================================================================== from DerivationFrameworkSUSY.SUSY8TriggerList import * jetMETTriggers = SUSY8JetMETTriggers muonTriggers = SUSY8MuonTriggers dimuonTriggers = SUSY8DimuonTriggers xeTriggers = SUSY8METTriggers trigNavThinningEx = '|'.join(jetMETTriggers + xeTriggers + muonTriggers + dimuonTriggers) SUSY8ThinningHelper.TriggerChains = trigNavThinningEx SUSY8ThinningHelper.AppendToStream(SUSY8Stream) #==================================================================== # TRIGGER SKIMMING #==================================================================== expression = '(' + ' || '.join(jetMETTriggers + xeTriggers + muonTriggers + dimuonTriggers) + ')' from DerivationFrameworkTools.DerivationFrameworkToolsConf import DerivationFramework__xAODStringSkimmingTool SUSY8SkimmingTool = DerivationFramework__xAODStringSkimmingTool( name="SUSY8SkimmingTool", expression=expression) ToolSvc += SUSY8SkimmingTool
#==================================================================== # SET UP STREAM #==================================================================== streamName = derivationFlags.WriteDAOD_JETM7Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_JETM7Stream) JETM7Stream = MSMgr.NewPoolRootStream(streamName, fileName) JETM7Stream.AcceptAlgs(["JETM7Kernel"]) #======================================= # ESTABLISH THE THINNING HELPER #======================================= from DerivationFrameworkCore.ThinningHelper import ThinningHelper JETM7ThinningHelper = ThinningHelper("JETM7ThinningHelper") JETM7ThinningHelper.TriggerChains = orstr.join(electronTriggers + muonTriggers) JETM7ThinningHelper.AppendToStream(JETM7Stream) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # TrackParticles associated with Muons from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__MuonTrackParticleThinning JETM7MuonTPThinningTool = DerivationFramework__MuonTrackParticleThinning( name="JETM7MuonTPThinningTool", ThinningService=JETM7ThinningHelper.ThinningSvc(), MuonKey="Muons", InDetTrackParticlesKey="InDetTrackParticles") ToolSvc += JETM7MuonTPThinningTool
#==================================================================== streamName = derivationFlags.WriteDAOD_HIGG2D2Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_HIGG2D2Stream) HIGG2D2Stream = MSMgr.NewPoolRootStream( streamName, fileName) HIGG2D2Stream.AcceptAlgs(["HIGG2D2Kernel"]) #================ # THINNING #================ thinningTools=[] # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG2D2ThinningHelper = ThinningHelper("HIGG2D2ThinningHelper") #trigger navigation content HIGG2D2ThinningHelper.TriggerChains = 'HLT_e.*|HLT_2e.*|HLT_3e.*|HLT_mu.*|HLT_2mu.*|HLT_3mu.*' HIGG2D2ThinningHelper.AppendToStream(HIGG2D2Stream) # MET/Jet tracks thinning_expression = "(InDetTrackParticles.pt > 0.5*GeV) && (InDetTrackParticles.numberOfPixelHits > 0) && (InDetTrackParticles.numberOfSCTHits > 5) && (abs(DFCommonInDetTrackZ0AtPV) < 1.5)" from DerivationFrameworkInDet.DerivationFrameworkInDetConf import DerivationFramework__JetTrackParticleThinning HIGG2D2JetTPThinningTool = DerivationFramework__JetTrackParticleThinning(name = "HIGG2D2JetTPThinningTool", StreamName = streamName, JetKey = "AntiKt4LCTopoJets", InDetTrackParticlesKey = "InDetTrackParticles", TrackSelectionString = thinning_expression) ToolSvc += HIGG2D2JetTPThinningTool thinningTools.append(HIGG2D2JetTPThinningTool) # Tracks associated with Muons
#==================================================================== streamName = derivationFlags.WriteDAOD_HIGG5D2Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_HIGG5D2Stream) HIGG5D2Stream = MSMgr.NewPoolRootStream(streamName, fileName) HIGG5D2Stream.AcceptAlgs(["HIGG5D2Kernel"]) #==================================================================== # THINNING TOOLS #==================================================================== thinningTools = [] # Establish the thinning helper (which will set up the services behind the scenes) from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG5D2ThinningHelper = ThinningHelper("HIGG5D2ThinningHelper") #trigger navigation content HIGG5D2ThinningHelper.TriggerChains = 'HLT_e.*|HLT_mu.*|HLT_xe.*|HLT_j.*' HIGG5D2ThinningHelper.AppendToStream(HIGG5D2Stream) # MC truth thinning (not for data) truth_cond_WZH = "((abs(TruthParticles.pdgId) >= 23) && (abs(TruthParticles.pdgId) <= 25))" # W, Z and Higgs truth_cond_Lepton = "((abs(TruthParticles.pdgId) >= 11) && (abs(TruthParticles.pdgId) <= 16))" # Leptons truth_cond_Quark = "((abs(TruthParticles.pdgId) == 6) || (abs(TruthParticles.pdgId) == 5))" # Top quark and Bottom quark truth_cond_Photon = "((abs(TruthParticles.pdgId) == 22) && (TruthParticles.pt > 1*GeV))" # Photon truth_expression = '(' + truth_cond_WZH + ' || ' + truth_cond_Lepton + ' || ' + truth_cond_Quark + ' || ' + truth_cond_Photon + ')' from DerivationFrameworkMCTruth.DerivationFrameworkMCTruthConf import DerivationFramework__GenericTruthThinning HIGG5D2MCThinningTool = DerivationFramework__GenericTruthThinning( name="HIGG5D2MCThinningTool", ThinningService=HIGG5D2ThinningHelper.ThinningSvc(), ParticleSelectionString=truth_expression, PreserveDescendants=False, PreserveGeneratorDescendants=True,
] StaticContent += ["xAOD::VertexContainer#SoftBVrtClusterTool_Loose_Vertices"] StaticContent += [ "xAOD::VertexAuxContainer#SoftBVrtClusterTool_Loose_VerticesAux." + excludedVertexAuxData ] StaticContent += [ "xAOD::VertexContainer#VrtSecInclusive_SoftBtagCandidateVertices" ] StaticContent += [ "xAOD::VertexAuxContainer#VrtSecInclusive_SoftBtagCandidateVerticesAux." ] FTAG4SlimmingHelper.StaticContent = StaticContent #---------------------------------------------------------------------- addJetOutputs(FTAG4SlimmingHelper, ["FTAG4"]) FTAG4SlimmingHelper.IncludeMuonTriggerContent = True FTAG4SlimmingHelper.IncludeEGammaTriggerContent = True FTAG4SlimmingHelper.IncludeJetTriggerContent = True FTAG4SlimmingHelper.IncludeEtMissTriggerContent = False FTAG4SlimmingHelper.IncludeBJetTriggerContent = True #FTAG4 TrigNav Thinning FTAG4ThinningHelper = ThinningHelper("FTAG4ThinningHelper") FTAG4ThinningHelper.TriggerChains = 'HLT_e[2-9][0-9]_.*|HLT_e[1-9][0-9][0-9]_.*|HLT_mu[2-9][0-9]_.*|HLT_mu[1-9][0-9][0-9]_.*|HLT_mu[2-9][0-9]' FTAG4ThinningHelper.AppendToStream(FTAG4Stream) FTAG4SlimmingHelper.AppendContentToStream(FTAG4Stream)
#============== streamName = derivationFlags.WriteDAOD_HIGG4D3Stream.StreamName fileName = buildFileName( derivationFlags.WriteDAOD_HIGG4D3Stream ) HIGG4D3Stream = MSMgr.NewPoolRootStream( streamName, fileName ) HIGG4D3Stream.AcceptAlgs([DAOD_StreamID+"Kernel"]) #============ # Setup tools #============ # Establish the thinning helper from DerivationFrameworkCore.ThinningHelper import ThinningHelper HIGG4D3ThinningHelper = ThinningHelper( DAOD_StreamID+"ThinningHelper" ) #trigger navigation thinning import DerivationFrameworkHiggs.HIGG4DxThinning HIGG4D3ThinningHelper.TriggerChains = DerivationFrameworkHiggs.HIGG4DxThinning.TriggerChains(DAOD_StreamID) HIGG4D3ThinningHelper.AppendToStream( HIGG4D3Stream ) # thinning tools thinningTools = DerivationFrameworkHiggs.HIGG4DxThinning.setup(DAOD_StreamID, HIGG4D3ThinningHelper.ThinningSvc(), ToolSvc) # skimming tools import DerivationFrameworkHiggs.HIGG4DxSkimming skimmingTools = DerivationFrameworkHiggs.HIGG4DxSkimming.setup(DAOD_StreamID, ToolSvc) #augmentation tools from DerivationFrameworkHiggs.HIGG4DxAugmentation import * augmentationTools = DerivationFrameworkHiggs.HIGG4DxAugmentation.setup(DAOD_StreamID, ToolSvc) #slimming tools import DerivationFrameworkHiggs.HIGG4DxSlimming
#==================================================================== # The base name (DAOD_TRIG7 here) must match the string in # DerivationFrameworkProdFlags (in DerivationFrameworkCore) streamName = derivationFlags.WriteDAOD_TRIG7Stream.StreamName fileName = buildFileName(derivationFlags.WriteDAOD_TRIG7Stream) TRIG7Stream = MSMgr.NewPoolRootStream(streamName, fileName) TRIG7Stream.AcceptAlgs(["TRIG7MainKernel"]) #==================================================================== # THINNING HELPER #==================================================================== from DerivationFrameworkCore.ThinningHelper import ThinningHelper TRIG7ThinningHelper = ThinningHelper("TRIG7ThinningHelper") ### https://gitlab.cern.ch/atlas/athena/blob/21.2/PhysicsAnalysis/DerivationFramework/DerivationFrameworkExamples/share/TriggerContentExample.py TRIG7ThinningHelper.TriggerChains = '^(?!.*_[0-9]*(mu|e|xe|tau|ht|xs|te))(?!HLT_j[0-9]+_[0-9]*j[0-9]+.*)HLT_j[0-9]+_a10.*' TRIG7ThinningHelper.AppendToStream(TRIG7Stream) thinningTools = [] #==================================================================== # CLUSTER THINNING TOOL #==================================================================== from DerivationFrameworkCalo.DerivationFrameworkCaloConf import DerivationFramework__JetCaloClusterThinning jetcuts = '(AntiKt10LCTopoJets.pt > ' + jetptmin + '*GeV && abs(AntiKt10LCTopoJets.eta) < ' + jetetamax + ')' ## save clusters matched to ungroomed jets with jetcuts selection TRIG7ClusterThinningTool = DerivationFramework__JetCaloClusterThinning( name="TRIG7ClusterThinningTool", StreamName=streamName,