else: combination_tp += " or " + mu_trigsList[iTrig] combination_tp += "))" algsList = el_algsList + el_trigsList + mu_algsList + mu_trigsList totalDecision_tp = LogicalFilterCombiner("HSG2_TPFilter", cmdstring=combination_tp) theJob += totalDecision_tp ############ NTUPLING ############ from AthenaCommon.JobProperties import jobproperties prodFlags = jobproperties.D3PDProdFlags streamName = prodFlags.WriteTPHSG2D3PD.StreamName from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName fileName = buildFileName(prodFlags.WriteTPHSG2D3PD) from HSG2DPDUtils.HSG2D3PD import HSG2physicsD3PD # Perform MV3 b-tagging when creating D3PD for 2013 Moriond analysis if jobproperties.HSG2.doMV3BTagInD3PD(): include("BTagging/BTagging_LoadTools.py") include("BTagging/BTagging_jobOptions.py") stream_d3pd_tp = HSG2physicsD3PD(streamName, fileName) stream_d3pd_tp.AcceptAlgs = [totalDecision_tp.getName()]
acceptFrwdE=jobproperties.HSG2.fourLeptonAcceptFrwdE()) mixedFilterMuid_d3pd_4l=H4lDPDMaker.H4lMixedFilter("HSG2_D3PD_4MixedFilterMuid", nLept=4,\ pTCuts=[0,0,ptCut_d3pd_4l,ptCut_d3pd_4l],\ eTCuts=[ptCut_d3pd_4l,ptCut_d3pd_4l,0,0],\ qualityCuts=[eQual,eQual,muQual,muQual],\ types=["e","e","mu","mu"],\ collections=[eCollToUse,eCollToUse,"MuidMuonCollection","MuidMuonCollection"],\ mass=massCut_d3pd_4l,\ acceptFrwdE=jobproperties.HSG2.fourLeptonAcceptFrwdE()) theJob += mixedFilterStaco_d3pd_4l msg.info("Added 2e2mu(staco) filter") theJob += mixedFilterMuid_d3pd_4l msg.info("Added 2e2mu(muid) filter") combination_d3pd_4l = "HSG2_D3PD_4ElectronFilter or " + "HSG2_D3PD_4StacoMuonFilter or " + "HSG2_D3PD_4MuidMuonFilter or " + "HSG2_D3PD_4MixedFilterStaco or " + "HSG2_D3PD_4MixedFilterMuid" totalDecision_d3pd_4l = LogicalFilterCombiner("HSG2_D3PD_4l_Filter", cmdstring=combination_d3pd_4l) theJob += totalDecision_d3pd_4l from HSG2DPDUtils.HSG2D3PD import HSG2physicsD3PD stream_d3pd_4l = HSG2physicsD3PD("StreamNTUP_HSG2", runArgs.outputNTUP_HSG2File) stream_d3pd_4l.AcceptAlgs = [totalDecision_d3pd_4l.getName()]
combination="" for iAlg in range(len(algsList)): if iAlg==0: combination=algsList[iAlg] else: combination+=" or "+algsList[iAlg] from PrimaryDPDMaker.LogicalFilterCombiner import LogicalFilterCombiner totalDecision_2L2Q=LogicalFilterCombiner("NTUP_2L2QHSG2_Filter",cmdstring = combination) theJob+=totalDecision_2L2Q ############ NTUPLING ############ from AthenaCommon.JobProperties import jobproperties prodFlags = jobproperties.D3PDProdFlags streamName = prodFlags.Write2L2QHSG2D3PD.StreamName from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName fileName = buildFileName(prodFlags.Write2L2QHSG2D3PD) from HSG2DPDUtils.HSG2D3PD import HSG2physicsD3PD # Perform MV3 b-tagging when creating D3PD for 2013 Moriond analysis if jobproperties.HSG2.doMV3BTagInD3PD(): include("BTagging/BTagging_LoadTools.py") include("BTagging/BTagging_jobOptions.py") stream_d3pd_2L2Q=HSG2physicsD3PD(streamName,fileName) stream_d3pd_2L2Q.AcceptAlgs = [totalDecision_2L2Q.getName()]
include.block("HSG2DPDUtils/hsg2_d3pdmaker_plain.prodJobOFragment.py") import HSG2DPDUtils.HSG2DPDFlags from AthenaCommon.JobProperties import jobproperties prodFlags = jobproperties.D3PDProdFlags streamName = prodFlags.WriteHSG2D3PD.StreamName from PrimaryDPDMaker.PrimaryDPDHelpers import buildFileName fileName = buildFileName(prodFlags.WriteHSG2D3PD) from HSG2DPDUtils.HSG2D3PD import HSG2physicsD3PD # Perform MV3 b-tagging when creating D3PD for 2013 Moriond analysis if jobproperties.HSG2.doMV3BTagInD3PD(): include("BTagging/BTagging_LoadTools.py") include("BTagging/BTagging_jobOptions.py") stream_d3pd_plain = HSG2physicsD3PD(streamName, fileName)
## DPDMakerScript to be included in rec.DPDMakerScripts() include.block("HSG2DPDUtils/hsg2_d3pdmaker_plain.py") include("HSG2DPDUtils/hsg2_dpd_utils_fragment.py") from AthenaCommon.Logging import logging from PrimaryDPDMaker.LogicalFilterCombiner import LogicalFilterCombiner import HSG2DPDUtils.HSG2DPDFlags from HSG2DPDUtils.HSG2D3PD import HSG2physicsD3PD stream_d3pd_plain=HSG2physicsD3PD("StreamNTUP_HSG2",runArgs.outputNTUP_2LHSG2File)