diff --git a/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/python/DVFlags.py b/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/python/DVFlags.py index d6240eb1ba2b650e4ed50c084a5d4c2b572122db..a36ab7d1fd0541a023793d00fafc239d59ba9bbf 100644 --- a/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/python/DVFlags.py +++ b/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/python/DVFlags.py @@ -149,16 +149,27 @@ class DV_7JetFilterFlags(JobProperty): pass primRPVLLDESDM.add_JobProperty(DV_7JetFilterFlags) -class DV_MuonFilterFlags(JobProperty): +class DV_MuonBarrelFilterFlags(JobProperty): statusOn=True allowedTypes=["bool"] StoredValue=True cutEtMin=60.0*Units.GeV - cutEtaMax=2.5 + cutEtaMax=1.1 triggers=["HLT_mu60_0eta105_msonly"] nPassed=1 pass -primRPVLLDESDM.add_JobProperty(DV_MuonFilterFlags) +primRPVLLDESDM.add_JobProperty(DV_MuonBarrelFilterFlags) + +class DV_MuonFullMSFilterFlags(JobProperty): + statusOn=True + allowedTypes=["bool"] + StoredValue=True + cutEtMin=80.0*Units.GeV + cutEtaMax=2.5 + triggers=["HLT_mu80_msonly_3layersEC"] + nPassed=1 + pass +primRPVLLDESDM.add_JobProperty(DV_MuonFullMSFilterFlags) class DV_PhotonFilterFlags(JobProperty): statusOn=True diff --git a/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/share/PhysDESDM_DV.py b/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/share/PhysDESDM_DV.py index b05835db22a0d1097fc6a42788d1b868ad967ca0..4cc5bd00d1adfc43690f91845c47b497c671cd4a 100644 --- a/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/share/PhysDESDM_DV.py +++ b/PhysicsAnalysis/SUSYPhys/LongLivedParticleDPDMaker/share/PhysDESDM_DV.py @@ -149,35 +149,46 @@ ToolSvc+=DVCombinedTracklessJetFilterToolForPhoton -# Muon d0 -#from LongLivedParticleDPDMaker.LongLivedParticleDPDMakerConf import DerivationFramework__RpvMuonD0Tool -#DVMuonD0 = DerivationFramework__RpvMuonD0Tool( name = "DVMuonD0", -# CollectionName = muonContainer, -# SGPrefix = "DV"+muonContainer, -# ) -#ToolSvc += DVMuonD0 -# -## Kernel for the augmentation tools from DerivationFrameworkCore.DerivationFrameworkCoreConf import DerivationFramework__DerivationKernel -#topSequence += DerivationFramework__DerivationKernel( -# "RPVLL_DVAugmentationKernel", -# AugmentationTools = [DVMuonD0], -# ) -DVMuonTriggerFilter = skimtool( name = "DVMuonTriggerFilter", - expression = DVTriggerSelectionString(primRPVLLDESDM.DV_MuonFilterFlags) +# Barrel only MS only trigger +DVMuonBarrelTriggerFilter = skimtool( name = "DVMuonBarrelTriggerFilter", + expression = DVTriggerSelectionString(primRPVLLDESDM.DV_MuonBarrelFilterFlags) + ) +ToolSvc+=DVMuonBarrelTriggerFilter + +DVMuonBarrelFilterTool = skimtool( name = "DVMuonBarrelFilterTool", + expression = DVSelectionString(primRPVLLDESDM.DV_MuonBarrelFilterFlags, muonContainer) + ) +ToolSvc+=DVMuonBarrelFilterTool + +DV_MuonBarrelFilter = DerivationFramework__FilterCombinationAND( name = "DV_MuonBarrelFilter", + FilterList=[DVMuonBarrelFilterTool,DVMuonBarrelTriggerFilter], + #OutputLevel=DEBUG + ) +ToolSvc+=DV_MuonBarrelFilter +# Full MS only trigger +DVMuonFullMSTriggerFilter = skimtool( name = "DVMuonFullMSTriggerFilter", + expression = DVTriggerSelectionString(primRPVLLDESDM.DV_MuonFullMSFilterFlags) ) -ToolSvc+=DVMuonTriggerFilter -muonFilterExpression = "count("+muonContainer+".pt > "+str(primRPVLLDESDM.DV_MuonFilterFlags.cutEtMin)+")>0" +ToolSvc+=DVMuonFullMSTriggerFilter -DVMuonFilterTool = skimtool( name = "DVMuonFilterTool", - expression = muonFilterExpression) -ToolSvc+=DVMuonFilterTool +DVMuonFullMSFilterTool = skimtool( name = "DVMuonFullMSFilterTool", + expression = DVSelectionString(primRPVLLDESDM.DV_MuonFullMSFilterFlags, muonContainer) + ) +ToolSvc+=DVMuonFullMSFilterTool -DV_MuonFinalFilter = DerivationFramework__FilterCombinationAND( name = "DV_MuonFinalFilter", - FilterList=[DVMuonFilterTool,DVMuonTriggerFilter], -# OutputLevel=DEBUG +DV_MuonFullMSFilter = DerivationFramework__FilterCombinationAND( name = "DV_MuonFullMSFilter", + FilterList=[DVMuonFullMSFilterTool,DVMuonFullMSTriggerFilter], + #OutputLevel=DEBUG ) +ToolSvc+=DV_MuonFullMSFilter + +# Or of barrel only and full MS +DV_MuonFinalFilter = DerivationFramework__FilterCombinationOR( name = "DV_MuonFinalFilter", + FilterList=[DV_MuonBarrelFilter,DV_MuonFullMSFilter], + #OutputLevel=DEBUG + ) ToolSvc+=DV_MuonFinalFilter topSequence += kernel("RPVLL_DVMuonFilterKernel", SkimmingTools = [DV_MuonFinalFilter])