ak4PFJetsLegacyHPSPiZeros = ak4PFJetsLegacyHPSPiZeros.clone() ak4PFJetsLegacyHPSPiZeros.jetSrc = PFRecoTauPFJetInputs.inputJetCollection # import charged hadrons from RecoTauTag.RecoTau.PFRecoTauChargedHadronProducer_cfi import ak4PFJetsRecoTauChargedHadrons ak4PFJetsRecoTauChargedHadrons = ak4PFJetsRecoTauChargedHadrons.clone() #------------------------------------------------------------------------------- #------------------ Produce combinatoric base taus------------------------------ #------------------------------------------------------------------------------- # These jets form the basis of the HPS & TaNC taus. There are many taus # produced for each jet, which are cleaned by the respective algorithms. # We split it into different collections for each different decay mode. from RecoTauTag.RecoTau.RecoTauCombinatoricProducer_cfi import combinatoricRecoTaus, combinatoricModifierConfigs combinatoricRecoTaus = combinatoricRecoTaus.clone() combinatoricRecoTaus.modifiers = cms.VPSet(combinatoricModifierConfigs) combinatoricRecoTaus.jetRegionSrc = cms.InputTag("recoTauAK4PFJets08Region") combinatoricRecoTaus.jetSrc = PFRecoTauPFJetInputs.inputJetCollection for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(combinatoricRecoTaus, minJetPt=recoTauAK4PFJets08Region.minJetPt) #-------------------------------------------------------------------------------- # CV: set mass of tau candidates reconstructed in 1Prong0pi0 decay mode to charged pion mass combinatoricRecoTaus.modifiers.append( cms.PSet(name=cms.string("tau_mass"), plugin=cms.string("PFRecoTauMassPlugin"), verbosity=cms.int32(0))) #--------------------------------------------------------------------------------
shrinkingConeRecoTaus = combinatoricRecoTaus.clone( jetSrc = PFRecoTauPFJetInputs.inputJetCollection, piZeroSrc = cms.InputTag("ak4PFJetsRecoTauPiZeros"), jetRegionSrc = cms.InputTag("recoTauAK4PFJets08Region"), chargedHadronSrc = cms.InputTag('ak4PFJetsRecoTauChargedHadrons'), minJetPt = cms.double(-1.0), maxJetAbsEta = cms.double(99.0), builders = cms.VPSet( _shrinkingConeRecoTausConfig ), # Build an empty tau in the case that a jet does not have any tracks buildNullTaus = cms.bool(True), modifiers = cms.VPSet( # Electron rejection cms.PSet( name = cms.string("shrinkingConeElectronRej"), plugin = cms.string("RecoTauElectronRejectionPlugin"), #Electron rejection parameters ElectronPreIDProducer = cms.InputTag("elecpreid"), EcalStripSumE_deltaPhiOverQ_minValue = cms.double(-0.1), EcalStripSumE_deltaPhiOverQ_maxValue = cms.double(0.5), EcalStripSumE_minClusEnergy = cms.double(0.1), EcalStripSumE_deltaEta = cms.double(0.03), ElecPreIDLeadTkMatch_maxDR = cms.double(0.01), maximumForElectrionPreIDOutput = cms.double(-0.1), DataType = cms.string("AOD"), ) ) )
-1 ), # CV: upper limit on number of signalConeChargedHadrons disabled per default minAbsPhotonSumPt_insideSignalCone=cms.double(2.5), minRelPhotonSumPt_insideSignalCone=cms.double(0.10)) shrinkingConeRecoTaus = combinatoricRecoTaus.clone( jetSrc=PFRecoTauPFJetInputs.inputJetCollection, piZeroSrc=cms.InputTag("ak4PFJetsRecoTauPiZeros"), jetRegionSrc=cms.InputTag("recoTauAK4PFJets08Region"), chargedHadronSrc=cms.InputTag('ak4PFJetsRecoTauChargedHadrons'), minJetPt=cms.double(-1.0), maxJetAbsEta=cms.double(99.0), builders=cms.VPSet(_shrinkingConeRecoTausConfig), # Build an empty tau in the case that a jet does not have any tracks buildNullTaus=cms.bool(True), modifiers=cms.VPSet( # Electron rejection cms.PSet( name=cms.string("shrinkingConeElectronRej"), plugin=cms.string("RecoTauElectronRejectionPlugin"), #Electron rejection parameters ElectronPreIDProducer=cms.InputTag("elecpreid"), EcalStripSumE_deltaPhiOverQ_minValue=cms.double(-0.1), EcalStripSumE_deltaPhiOverQ_maxValue=cms.double(0.5), EcalStripSumE_minClusEnergy=cms.double(0.1), EcalStripSumE_deltaEta=cms.double(0.03), ElecPreIDLeadTkMatch_maxDR=cms.double(0.01), maximumForElectrionPreIDOutput=cms.double(-0.1), DataType=cms.string("AOD"), )))
ak4PFJetsLegacyHPSPiZeros76xReMiniAOD = ak4PFJetsLegacyHPSPiZeros.clone() ak4PFJetsLegacyHPSPiZeros76xReMiniAOD.jetSrc = PFRecoTauPFJetInputs.inputJetCollection # import charged hadrons from RecoTauTag.RecoTau.PFRecoTauChargedHadronProducer_cfi import ak4PFJetsRecoTauChargedHadrons ak4PFJetsRecoTauChargedHadrons76xReMiniAOD = ak4PFJetsRecoTauChargedHadrons.clone() #------------------------------------------------------------------------------- #------------------ Produce combinatoric base taus------------------------------ #------------------------------------------------------------------------------- # These jets form the basis of the HPS & TaNC taus. There are many taus # produced for each jet, which are cleaned by the respective algorithms. # We split it into different collections for each different decay mode. from RecoTauTag.RecoTau.RecoTauCombinatoricProducer_cfi import combinatoricRecoTaus, combinatoricModifierConfigs combinatoricRecoTaus76xReMiniAOD = combinatoricRecoTaus.clone() combinatoricRecoTaus76xReMiniAOD.modifiers = cms.VPSet(combinatoricModifierConfigs) combinatoricRecoTaus76xReMiniAOD.jetRegionSrc = cms.InputTag("recoTauAK4PFJets08Region76xReMiniAOD") combinatoricRecoTaus76xReMiniAOD.jetSrc = PFRecoTauPFJetInputs.inputJetCollection #-------------------------------------------------------------------------------- # CV: disable reconstruction of 3Prong1Pi0 tau candidates combinatoricRecoTaus76xReMiniAOD.builders[0].decayModes.remove(combinatoricRecoTaus76xReMiniAOD.builders[0].decayModes[6]) #-------------------------------------------------------------------------------- #-------------------------------------------------------------------------------- # CV: set mass of tau candidates reconstructed in 1Prong0pi0 decay mode to charged pion mass combinatoricRecoTaus76xReMiniAOD.modifiers.append(cms.PSet( name = cms.string("tau_mass"), plugin = cms.string("PFRecoTauMassPlugin"), verbosity = cms.int32(0)
ak4PFJetsLegacyHPSPiZeros76xReMiniAOD.jetSrc = PFRecoTauPFJetInputs.inputJetCollection # import charged hadrons from RecoTauTag.RecoTau.PFRecoTauChargedHadronProducer_cfi import ak4PFJetsRecoTauChargedHadrons ak4PFJetsRecoTauChargedHadrons76xReMiniAOD = ak4PFJetsRecoTauChargedHadrons.clone( ) #------------------------------------------------------------------------------- #------------------ Produce combinatoric base taus------------------------------ #------------------------------------------------------------------------------- # These jets form the basis of the HPS & TaNC taus. There are many taus # produced for each jet, which are cleaned by the respective algorithms. # We split it into different collections for each different decay mode. from RecoTauTag.RecoTau.RecoTauCombinatoricProducer_cfi import combinatoricRecoTaus, combinatoricModifierConfigs combinatoricRecoTaus76xReMiniAOD = combinatoricRecoTaus.clone() combinatoricRecoTaus76xReMiniAOD.modifiers = cms.VPSet( combinatoricModifierConfigs) combinatoricRecoTaus76xReMiniAOD.jetRegionSrc = cms.InputTag( "recoTauAK4PFJets08Region76xReMiniAOD") combinatoricRecoTaus76xReMiniAOD.jetSrc = PFRecoTauPFJetInputs.inputJetCollection #-------------------------------------------------------------------------------- # CV: disable reconstruction of 3Prong1Pi0 tau candidates combinatoricRecoTaus76xReMiniAOD.builders[0].decayModes.remove( combinatoricRecoTaus76xReMiniAOD.builders[0].decayModes[6]) #-------------------------------------------------------------------------------- #-------------------------------------------------------------------------------- # CV: set mass of tau candidates reconstructed in 1Prong0pi0 decay mode to charged pion mass combinatoricRecoTaus76xReMiniAOD.modifiers.append(
ak4PFJetsLegacyHPSPiZeros = ak4PFJetsLegacyHPSPiZeros.clone() ak4PFJetsLegacyHPSPiZeros.jetSrc = PFRecoTauPFJetInputs.inputJetCollection # import charged hadrons from RecoTauTag.RecoTau.PFRecoTauChargedHadronProducer_cfi import ak4PFJetsRecoTauChargedHadrons ak4PFJetsRecoTauChargedHadrons = ak4PFJetsRecoTauChargedHadrons.clone() #------------------------------------------------------------------------------- #------------------ Produce combinatoric base taus------------------------------ #------------------------------------------------------------------------------- # These jets form the basis of the HPS & TaNC taus. There are many taus # produced for each jet, which are cleaned by the respective algorithms. # We split it into different collections for each different decay mode. from RecoTauTag.RecoTau.RecoTauCombinatoricProducer_cfi import combinatoricRecoTaus, combinatoricModifierConfigs combinatoricRecoTaus = combinatoricRecoTaus.clone() combinatoricRecoTaus.modifiers = cms.VPSet(combinatoricModifierConfigs) combinatoricRecoTaus.jetRegionSrc = cms.InputTag("recoTauAK4PFJets08Region") combinatoricRecoTaus.jetSrc = PFRecoTauPFJetInputs.inputJetCollection #-------------------------------------------------------------------------------- # CV: disable reconstruction of 3Prong1Pi0 tau candidates combinatoricRecoTaus.builders[0].decayModes.remove(combinatoricRecoTaus.builders[0].decayModes[6]) #-------------------------------------------------------------------------------- #-------------------------------------------------------------------------------- # CV: set mass of tau candidates reconstructed in 1Prong0pi0 decay mode to charged pion mass combinatoricRecoTaus.modifiers.append(cms.PSet( name = cms.string("tau_mass"), plugin = cms.string("PFRecoTauMassPlugin"), verbosity = cms.int32(0)
#------------------------------------------------------------------------------- #------------------ Produce combinatoric base taus------------------------------ #------------------------------------------------------------------------------- # These jets form the basis of the HPS & TaNC taus. There are many taus # produced for each jet, which are cleaned by the respective algorithms. # We split it into different collections for each different decay mode. from RecoTauTag.RecoTau.RecoTauCombinatoricProducer_cfi import combinatoricRecoTaus, combinatoricModifierConfigs #------------------------------------------------------------------------------- #------------------ HPS Taus --------------------------------------------------- #------------------------------------------------------------------------------- from RecoTauTag.Configuration.HPSPFTaus_cff import * combinatoricRecoTaus = combinatoricRecoTaus.clone( modifiers=cms.VPSet(combinatoricModifierConfigs), jetRegionSrc="recoTauAK4PFJets08Region", jetSrc=PFRecoTauPFJetInputs.inputJetCollection, chargedHadronSrc="ak4PFJetsRecoTauChargedHadrons", piZeroSrc="ak4PFJetsLegacyHPSPiZeros") for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(combinatoricRecoTaus, minJetPt=recoTauAK4PFJets08Region.minJetPt) #-------------------------------------------------------------------------------- # CV: set mass of tau candidates reconstructed in 1Prong0pi0 decay mode to charged pion mass combinatoricRecoTaus.modifiers.append( cms.PSet(name=cms.string("tau_mass"), plugin=cms.string("PFRecoTauMassPlugin"), verbosity=cms.int32(0))) #------------------------------------------------------------------------------- #------------------ PFTauTagInfo workaround ------------------------------------