From 2905c8a075da4ee7f33359c2d311e7b9144a750b Mon Sep 17 00:00:00 2001 From: Ruben Lopez Ruiz <24.lopezr@gmail.com> Date: Mon, 15 Apr 2024 17:28:23 +0200 Subject: [PATCH 1/4] Ecal/Hcal isolation using RecHits --- .../python/recoLayer0/genericTrackCandidates_cff.py | 9 ++++++++- RecoMuon/MuonIdentification/plugins/MuonProducer.cc | 3 +++ .../MuonIdentification/python/displacedMuons_cfi.py | 6 +++--- RecoMuon/MuonIdentification/python/isolation_cff.py | 2 +- RecoMuon/MuonIdentification/python/muons_cfi.py | 6 +++--- .../python/muIsoDepositCopies_cfi.py | 10 ++++++++++ .../python/muIsoDeposits_cff.py | 6 +++--- .../python/muIsoResultInputBlocks_cfi.py | 12 ++++++++++-- .../python/muIsoResultM2C_cfi.py | 4 ++-- .../python/muIsoResultM2T_cfi.py | 4 ++-- 10 files changed, 45 insertions(+), 17 deletions(-) diff --git a/PhysicsTools/PatAlgos/python/recoLayer0/genericTrackCandidates_cff.py b/PhysicsTools/PatAlgos/python/recoLayer0/genericTrackCandidates_cff.py index 874316f6e23f7..8a3f8c90a66cb 100644 --- a/PhysicsTools/PatAlgos/python/recoLayer0/genericTrackCandidates_cff.py +++ b/PhysicsTools/PatAlgos/python/recoLayer0/genericTrackCandidates_cff.py @@ -23,13 +23,19 @@ ) ## Configure calorimetric isolation -from RecoMuon.MuonIsolationProducers.caloExtractorByAssociatorBlocks_cff import MIsoCaloExtractorByAssociatorTowersBlock +from RecoMuon.MuonIsolationProducers.caloExtractorByAssociatorBlocks_cff import * patAODTrackIsoDepositCalByAssociatorTowers = cms.EDProducer("CandIsoDepositProducer", src = cms.InputTag("patAODTrackCands"), trackType = cms.string('best'), MultipleDepositsFlag = cms.bool(True), ExtractorPSet = cms.PSet( MIsoCaloExtractorByAssociatorTowersBlock ) ) +patAODTrackIsoDepositCalByAssociatorHits = cms.EDProducer("CandIsoDepositProducer", + src = cms.InputTag("patAODTrackCands"), + trackType = cms.string('best'), + MultipleDepositsFlag = cms.bool(True), + ExtractorPSet = cms.PSet( MIsoCaloExtractorByAssociatorHitsBlock ) +) ## Select isolation labels to use patAODTrackIsolationLabels = cms.VInputTag( @@ -58,6 +64,7 @@ patAODTrackCandsUnfiltered * patAODTrackCands * patAODTrackIsoDepositCalByAssociatorTowers * + patAODTrackIsoDepositCalByAssociatorHits * patAODTrackIsoDepositCtfTk * patAODTrackIsolations ) diff --git a/RecoMuon/MuonIdentification/plugins/MuonProducer.cc b/RecoMuon/MuonIdentification/plugins/MuonProducer.cc index a6bfd41e1a7cc..1c50fff2744c7 100644 --- a/RecoMuon/MuonIdentification/plugins/MuonProducer.cc +++ b/RecoMuon/MuonIdentification/plugins/MuonProducer.cc @@ -62,14 +62,17 @@ MuonProducer::MuonProducer(const edm::ParameterSet& pSet) if (fillDetectorBasedIsolation_) { theTrackDepositName = pSet.getParameter("TrackIsoDeposits"); + std::cout << "*** theTrackDepositName: " << theTrackDepositName << std::endl; theTrackDepositToken_ = consumes(theTrackDepositName); produces(labelOrInstance(theTrackDepositName)); theJetDepositName = pSet.getParameter("JetIsoDeposits"); + std::cout << "*** theJetDepositName: " << theJetDepositName << std::endl; theJetDepositToken_ = consumes(theJetDepositName); produces(labelOrInstance(theJetDepositName)); theEcalDepositName = pSet.getParameter("EcalIsoDeposits"); + std::cout << "*** theEcalDepositName: " << theEcalDepositName << std::endl; theEcalDepositToken_ = consumes(theEcalDepositName); produces(theEcalDepositName.instance()); diff --git a/RecoMuon/MuonIdentification/python/displacedMuons_cfi.py b/RecoMuon/MuonIdentification/python/displacedMuons_cfi.py index b82eb11a0fa70..9c782574757e3 100644 --- a/RecoMuon/MuonIdentification/python/displacedMuons_cfi.py +++ b/RecoMuon/MuonIdentification/python/displacedMuons_cfi.py @@ -10,9 +10,9 @@ FillTimingInfo = cms.bool(True), FillDetectorBasedIsolation = cms.bool(True), - EcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowersDisplaced","ecal"), - HcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowersDisplaced","hcal"), - HoIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowersDisplaced","ho"), + EcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHitsDisplaced","ecal"), + HcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHitsDisplaced","hcal"), + HoIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHitsDisplaced","ho"), TrackIsoDeposits = cms.InputTag("muIsoDepositTkDisplaced"), JetIsoDeposits = cms.InputTag("muIsoDepositJetsDisplaced"), diff --git a/RecoMuon/MuonIdentification/python/isolation_cff.py b/RecoMuon/MuonIdentification/python/isolation_cff.py index c23904059ab3a..657699536b24e 100644 --- a/RecoMuon/MuonIdentification/python/isolation_cff.py +++ b/RecoMuon/MuonIdentification/python/isolation_cff.py @@ -5,7 +5,7 @@ from RecoMuon.MuonIsolationProducers.jetExtractorBlock_cff import * MIdIsoExtractorPSetBlock = cms.PSet( CaloExtractorPSet = cms.PSet( - MIsoCaloExtractorByAssociatorTowersBlock + MIsoCaloExtractorByAssociatorHitsBlock ), TrackExtractorPSet = cms.PSet( MIsoTrackExtractorBlock diff --git a/RecoMuon/MuonIdentification/python/muons_cfi.py b/RecoMuon/MuonIdentification/python/muons_cfi.py index 203ffe2159ddc..793d41db40f7f 100644 --- a/RecoMuon/MuonIdentification/python/muons_cfi.py +++ b/RecoMuon/MuonIdentification/python/muons_cfi.py @@ -13,9 +13,9 @@ FillTimingInfo = cms.bool(True), FillDetectorBasedIsolation = cms.bool(True), - EcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowers","ecal"), - HcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowers","hcal"), - HoIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorTowers","ho"), + EcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHits","ecal"), + HcalIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHits","hcal"), + HoIsoDeposits = cms.InputTag("muIsoDepositCalByAssociatorHits","ho"), TrackIsoDeposits = cms.InputTag("muIsoDepositTk"), JetIsoDeposits = cms.InputTag("muIsoDepositJets"), diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoDepositCopies_cfi.py b/RecoMuon/MuonIsolationProducers/python/muIsoDepositCopies_cfi.py index cf95ff86f022d..dd755d7523f82 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoDepositCopies_cfi.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoDepositCopies_cfi.py @@ -25,8 +25,18 @@ depositNames = cms.vstring('ecal', 'hcal', 'ho') ) +muIsoDepositCalByAssociatorHits = cms.EDProducer("MuIsoDepositCopyProducer", + inputTags = cms.VInputTag(cms.InputTag("muons1stStep:ecal"), cms.InputTag("muons1stStep:hcal"), cms.InputTag("muons1stStep:ho")), + depositNames = cms.vstring('ecal', 'hcal', 'ho') +) + muIsoDepositCalByAssociatorTowersDisplaced = cms.EDProducer("MuIsoDepositCopyProducer", inputTags = cms.VInputTag(cms.InputTag("displacedMuons1stStep:ecal"), cms.InputTag("displacedMuons1stStep:hcal"), cms.InputTag("displacedMuons1stStep:ho")), depositNames = cms.vstring('ecal', 'hcal', 'ho') ) +muIsoDepositCalByAssociatorHitsDisplaced = cms.EDProducer("MuIsoDepositCopyProducer", + inputTags = cms.VInputTag(cms.InputTag("displacedMuons1stStep:ecal"), cms.InputTag("displacedMuons1stStep:hcal"), cms.InputTag("displacedMuons1stStep:ho")), + depositNames = cms.vstring('ecal', 'hcal', 'ho') +) + diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py index 7c5e64f0e1324..c8c929aed2a28 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py @@ -30,15 +30,15 @@ # #------------------------------ # "standard sequences" -muIsoDeposits_muonsTask = cms.Task(muIsoDepositTk,muIsoDepositCalByAssociatorTowers,muIsoDepositJets) +muIsoDeposits_muonsTask = cms.Task(muIsoDepositTk,muIsoDepositCalByAssociatorHits,muIsoDepositJets) muIsoDeposits_muons = cms.Sequence(muIsoDeposits_muonsTask) # "displaced sequences" -muIsoDeposits_displacedMuonsTask = cms.Task(muIsoDepositTkDisplaced,muIsoDepositCalByAssociatorTowersDisplaced,muIsoDepositJetsDisplaced) +muIsoDeposits_displacedMuonsTask = cms.Task(muIsoDepositTkDisplaced,muIsoDepositCalByAssociatorHitsDisplaced,muIsoDepositJetsDisplaced) muIsoDeposits_displacedMuons = cms.Sequence(muIsoDeposits_displacedMuonsTask) #old one, using a reduced config set muIsoDeposits_ParamGlobalMuonsOldTask = cms.Task(muParamGlobalIsoDepositGsTk,muParamGlobalIsoDepositCalEcal,muParamGlobalIsoDepositCalHcal) muIsoDeposits_ParamGlobalMuonsOld = cms.Sequence(muIsoDeposits_ParamGlobalMuonsOldTask) -muIsoDeposits_ParamGlobalMuonsTask = cms.Task(muParamGlobalIsoDepositTk,muParamGlobalIsoDepositCalByAssociatorTowers,muParamGlobalIsoDepositJets) +muIsoDeposits_ParamGlobalMuonsTask = cms.Task(muParamGlobalIsoDepositTk,muParamGlobalIsoDepositCalByAssociatorHits,muParamGlobalIsoDepositJets) muIsoDeposits_ParamGlobalMuons = cms.Sequence(muIsoDeposits_ParamGlobalMuonsTask) muParamGlobalIsoDepositCtfTk.IOPSet = cms.PSet( MIsoDepositParamGlobalViewIOBlock diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py b/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py index df2d7d4c7b3c1..bce03191fa4c0 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py @@ -16,5 +16,13 @@ DepositThreshold = cms.double(-1.0), DepositWeight = cms.double(1.0) ) - - +UnweightedInputHitEcalDeps = cms.PSet( + DepositTag = cms.InputTag("muIsoDepositCalByAssociatorHits","ecal"), + DepositThreshold = cms.double(-1.0), + DepositWeight = cms.double(1.0) +) +UnweightedInputTowHcalDeps = cms.PSet( + DepositTag = cms.InputTag("muIsoDepositCalByAssociatorHits","hcal"), + DepositThreshold = cms.double(-1.0), + DepositWeight = cms.double(1.0) +) diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoResultM2C_cfi.py b/RecoMuon/MuonIsolationProducers/python/muIsoResultM2C_cfi.py index ec2b9066b5cef..5faf28f335826 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoResultM2C_cfi.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoResultM2C_cfi.py @@ -14,10 +14,10 @@ UnweightedInputTkDeps ), cms.PSet( - UnweightedInputTowEcalDeps + UnweightedInputHitEcalDeps ), cms.PSet( - UnweightedInputTowHcalDeps + UnweightedInputHitHcalDeps )), BeamlineOption = cms.string('BeamSpotFromEvent') ) diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoResultM2T_cfi.py b/RecoMuon/MuonIsolationProducers/python/muIsoResultM2T_cfi.py index fcf6301e0ab74..50c585c118fca 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoResultM2T_cfi.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoResultM2T_cfi.py @@ -13,10 +13,10 @@ UnweightedInputTkDeps ), cms.PSet( - UnweightedInputTowEcalDeps + UnweightedInputHitEcalDeps ), cms.PSet( - UnweightedInputTowHcalDeps + UnweightedInputHitHcalDeps )) ) From 84ac53e4f359371061b630e05c7d082d29f6a14d Mon Sep 17 00:00:00 2001 From: Ruben Lopez Ruiz <24.lopezr@gmail.com> Date: Wed, 17 Apr 2024 10:46:40 +0200 Subject: [PATCH 2/4] Remove print outs --- RecoMuon/MuonIdentification/plugins/MuonProducer.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/RecoMuon/MuonIdentification/plugins/MuonProducer.cc b/RecoMuon/MuonIdentification/plugins/MuonProducer.cc index 1c50fff2744c7..a6bfd41e1a7cc 100644 --- a/RecoMuon/MuonIdentification/plugins/MuonProducer.cc +++ b/RecoMuon/MuonIdentification/plugins/MuonProducer.cc @@ -62,17 +62,14 @@ MuonProducer::MuonProducer(const edm::ParameterSet& pSet) if (fillDetectorBasedIsolation_) { theTrackDepositName = pSet.getParameter("TrackIsoDeposits"); - std::cout << "*** theTrackDepositName: " << theTrackDepositName << std::endl; theTrackDepositToken_ = consumes(theTrackDepositName); produces(labelOrInstance(theTrackDepositName)); theJetDepositName = pSet.getParameter("JetIsoDeposits"); - std::cout << "*** theJetDepositName: " << theJetDepositName << std::endl; theJetDepositToken_ = consumes(theJetDepositName); produces(labelOrInstance(theJetDepositName)); theEcalDepositName = pSet.getParameter("EcalIsoDeposits"); - std::cout << "*** theEcalDepositName: " << theEcalDepositName << std::endl; theEcalDepositToken_ = consumes(theEcalDepositName); produces(theEcalDepositName.instance()); From b4a9e9e56ca9404b81661430a87e174d4dc415b2 Mon Sep 17 00:00:00 2001 From: Ruben Lopez Ruiz <24.lopezr@gmail.com> Date: Mon, 22 Apr 2024 12:41:45 +0200 Subject: [PATCH 3/4] Minor fix for tests --- RecoMuon/Configuration/python/RecoMuonCosmics_cff.py | 2 ++ RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py | 3 ++- .../python/muIsoResultInputBlocks_cfi.py | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py b/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py index 85f01ed52efcc..fd57cf4536e33 100644 --- a/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py +++ b/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py @@ -71,6 +71,8 @@ muIsoDepositTk.inputTags = ['muons:tracker'] muIsoDepositJets.inputTags = ['muons:jets'] muIsoDepositCalByAssociatorTowers.inputTags = ['muons:ecal', 'muons:hcal', 'muons:ho'] +#muIsoDepositCalByAssociatorHits.inputTags = cms.untracked.VInputTag(['muons:ecal', 'muons:hcal', 'muons:ho']) +muIsoDepositCalByAssociatorHits.inputTags = ['muons:ecal', 'muons:hcal', 'muons:ho'] # TeV refinement from RecoMuon.GlobalMuonProducer.tevMuons_cfi import * diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py index c8c929aed2a28..726c77426d060 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py @@ -11,9 +11,10 @@ from RecoMuon.MuonIsolationProducers.muIsoDeposits_setup_cff import * #the default set of modules first from RecoMuon.MuonIsolationProducers.muIsoDepositCopies_cfi import * -from RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorHits_cfi import * +#from RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorHits_cfi import * import RecoMuon.MuonIsolationProducers.muIsoDepositTk_cfi import RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorTowers_cfi +import RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorHits_cfi import RecoMuon.MuonIsolationProducers.muIsoDepositJets_cfi import RecoMuon.MuonIsolationProducers.muIsoDepositCal_cfi diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py b/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py index bce03191fa4c0..109e21493a1ec 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoResultInputBlocks_cfi.py @@ -21,7 +21,7 @@ DepositThreshold = cms.double(-1.0), DepositWeight = cms.double(1.0) ) -UnweightedInputTowHcalDeps = cms.PSet( +UnweightedInputHitHcalDeps = cms.PSet( DepositTag = cms.InputTag("muIsoDepositCalByAssociatorHits","hcal"), DepositThreshold = cms.double(-1.0), DepositWeight = cms.double(1.0) From b6604fd47ec281c0cbdbb86f13d07185548752d0 Mon Sep 17 00:00:00 2001 From: Ruben Lopez Ruiz <24.lopezr@gmail.com> Date: Mon, 22 Apr 2024 12:48:25 +0200 Subject: [PATCH 4/4] Remove comments --- RecoMuon/Configuration/python/RecoMuonCosmics_cff.py | 1 - RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py | 1 - 2 files changed, 2 deletions(-) diff --git a/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py b/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py index fd57cf4536e33..0db806fc98bb9 100644 --- a/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py +++ b/RecoMuon/Configuration/python/RecoMuonCosmics_cff.py @@ -71,7 +71,6 @@ muIsoDepositTk.inputTags = ['muons:tracker'] muIsoDepositJets.inputTags = ['muons:jets'] muIsoDepositCalByAssociatorTowers.inputTags = ['muons:ecal', 'muons:hcal', 'muons:ho'] -#muIsoDepositCalByAssociatorHits.inputTags = cms.untracked.VInputTag(['muons:ecal', 'muons:hcal', 'muons:ho']) muIsoDepositCalByAssociatorHits.inputTags = ['muons:ecal', 'muons:hcal', 'muons:ho'] # TeV refinement diff --git a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py index 726c77426d060..5e8628c1a2b3c 100644 --- a/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py +++ b/RecoMuon/MuonIsolationProducers/python/muIsoDeposits_cff.py @@ -11,7 +11,6 @@ from RecoMuon.MuonIsolationProducers.muIsoDeposits_setup_cff import * #the default set of modules first from RecoMuon.MuonIsolationProducers.muIsoDepositCopies_cfi import * -#from RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorHits_cfi import * import RecoMuon.MuonIsolationProducers.muIsoDepositTk_cfi import RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorTowers_cfi import RecoMuon.MuonIsolationProducers.muIsoDepositCalByAssociatorHits_cfi