src=allElecTauPairs.srcLeg2, likelihoodFunctions=cms.VPSet( nSVfitTauLikelihoodPhaseSpace.clone( applySinThetaFactor=cms.bool(False))), builder=nSVfitTauToHadBuilder) allElecTauPairs.nSVfit.psKine_MEt_int.config.event.resonances.A.likelihoodFunctions = cms.VPSet( ) allElecTauPairs.nSVfit.psKine_MEt_int.algorithm = cms.PSet( pluginName=cms.string("nSVfitAlgorithmByIntegration"), pluginType=cms.string("NSVfitAlgorithmByIntegration"), parameters=nSVfitProducerByIntegration.algorithm.parameters, vegasOptions=nSVfitProducerByIntegration.algorithm.vegasOptions, max_or_median=cms.string("max")) #-------------------------------------------------------------------------------- elecTauPairProdConfigurator = objProdConfigurator(allElecTauPairs, pyModuleName=__name__) produceElecTauPairs = elecTauPairProdConfigurator.configure( pyNameSpace=locals()) # define additional collections of electron + tau-jet candidates # with loose track and ECAL isolation (and conversion rejection) applied on electron leg # (NOTE: to be used for the purpose of factorizing efficiencies # of electron isolation from other event selection criteria, # in order to avoid problems with limited Monte Carlo statistics) allElecTauPairsLooseElectronIsolation = allElecTauPairs.clone() allElecTauPairsLooseElectronIsolation.srcLeg1 = cms.InputTag( 'selectedPatElectronsForElecTauTrkIPlooseIsolationCumulative') elecTauPairProdConfiguratorLooseElectronIsolation = objProdConfigurator(
min = cms.double(20.), max = cms.double(750.), stepSize = cms.double(5.), replace = cms.string("leg1.x"), by = cms.string("(A.p4.mass/mass_A)*(A.p4.mass/mass_A)/leg2.x") ) ), vegasOptions = cms.PSet( numCalls = cms.uint32(10000) ) ) ''' #-------------------------------------------------------------------------------- elecTauPairProdConfigurator = objProdConfigurator( allElecTauPairs, pyModuleName = __name__ ) produceElecTauPairs = elecTauPairProdConfigurator.configure(pyNameSpace = locals()) ################################################################################## #-------------------------------------------------------------------------------- # produce combinations of muon + tau-jet pairs #-------------------------------------------------------------------------------- ################################################################################## allMuTauPairs = cms.EDProducer( "PATMuTauPairProducer", useLeadingTausOnly = cms.bool(False), srcLeg1 = cms.InputTag('selectedPatMuons'), srcLeg2 = cms.InputTag('selectedPatTaus'),
builder=nSVfitTauToHadBuilder) allElecTauPairs.nSVfit.psKine_MEt_logM_fit.algorithm = cms.PSet( pluginName=cms.string("nSVfitAlgorithmByLikelihoodMaximization"), pluginType=cms.string("NSVfitAlgorithmByLikelihoodMaximization"), minimizer=cms.vstring("Minuit2", "Migrad"), maxObjFunctionCalls=cms.uint32(5000), verbosity=cms.int32(0)) ''' allElecTauPairs.nSVfit.psKine_MEt_logM_int = cms.PSet() allElecTauPairs.nSVfit.psKine_MEt_logM_int.config = allElecTauPairs.nSVfit.psKine_MEt_logM_fit.config allElecTauPairs.nSVfit.psKine_MEt_logM_int.algorithm = nSVfitProducerByIntegration.algorithm ''' #-------------------------------------------------------------------------------- elecTauPairProdConfigurator = objProdConfigurator(allElecTauPairs, pyModuleName=__name__) produceElecTauPairs = elecTauPairProdConfigurator.configure( pyNameSpace=locals()) ################################################################################## #-------------------------------------------------------------------------------- # produce combinations of muon + tau-jet pairs #-------------------------------------------------------------------------------- ################################################################################## allMuTauPairs = cms.EDProducer( "PATMuTauPairProducer", useLeadingTausOnly=cms.bool(False), srcLeg1=cms.InputTag('selectedPatMuons'), srcLeg2=cms.InputTag('selectedPatTaus'),
allVBFEventHypothesesForAHtoMuTau = cms.EDProducer("PATMuTauPairVBFEventProducer", srcTagJets = cms.InputTag('selectedPatTagJetsForVBFEt20Cumulative'), srcCentralJets = cms.InputTag('selectedPatCentralJetsForVBFEt15Cumulative'), srcDiTaus = cms.InputTag('selectedMuTauPairsForAHtoMuTauPzetaDiffCumulative'), dEtaMinTagJet = cms.double(2.5), massMinTagJet = cms.double(250.), dRmin12TagJet = cms.double(0.5), etaMarginCentralJet = cms.double(0.), dRmin12CentralJet = cms.double(0.5) ) vbfEventProdConfiguratorForAHtoMuTau = objProdConfigurator( allVBFEventHypothesesForAHtoMuTau, pyModuleName = __name__ ) produceVBFEventHypothesesForAHtoMuTau = \ vbfEventProdConfiguratorForAHtoMuTau.configure(pyNameSpace = locals()) allVBFEventHypothesesForAHtoMuTauLooseMuonIsolation = allVBFEventHypothesesForAHtoMuTau.clone( srcDiTaus = cms.InputTag('selectedMuTauPairsForAHtoMuTauPzetaDiffLooseMuonIsolationCumulative') ) vbfEventProdConfiguratorForAHtoMuTauLooseMuonIsolation = objProdConfigurator( allVBFEventHypothesesForAHtoMuTauLooseMuonIsolation, pyModuleName = __name__ ) produceVBFEventHypothesesForAHtoMuTauLooseMuonIsolation = \
) selectedMEtTopology05 = cms.EDFilter("MEtTopologySelector", src = cms.InputTag('metTopologies'), cut = cms.string('Vanti()/Vparallel() < 0.4'), filter = cms.bool(False) ) selectedMEtTopology025 = cms.EDFilter("MEtTopologySelector", src = cms.InputTag('metTopologies'), cut = cms.string('Vanti()/Vparallel() < 0.25'), filter = cms.bool(False) ) metTopologyProdConfigurator = objProdConfigurator( metTopologies, pyModuleName = __name__ ) produceMEtTopology = metTopologyProdConfigurator.configure(pyNameSpace = locals()) metTopologySelConfigurator = objSelConfigurator( [selectedMEtTopology05, selectedMEtTopology025], src = "metTopologies", pyModuleName = __name__, doSelIndividual = False ) selectMEtTopology = metTopologySelConfigurator.configure(pyNameSpace = locals())
import FWCore.ParameterSet.Config as cms import copy from TauAnalysis.CandidateTools.tools.objProdConfigurator import * # -------------------------------------------------------------------------------- # produce VBF event hypotheses # -------------------------------------------------------------------------------- allVBFEventHypothesesForAHtoElecTau = cms.EDProducer( "PATElecTauPairVBFEventProducer", srcTagJets=cms.InputTag("selectedPatJetsForAHtoElecTauJetTagCumulative"), srcCentralJets=cms.InputTag("selectedPatJetsForAHtoElecTauJetTagCumulative"), srcDiTaus=cms.InputTag("selectedElecTauPairsPzetaDiffCumulative"), dEtaMinTagJet=cms.double(2.5), massMinTagJet=cms.double(250.0), dRmin12TagJet=cms.double(0.5), etaMarginCentralJet=cms.double(0.0), dRmin12CentralJet=cms.double(0.5), ) vbfEventProdConfiguratorForAHtoElecTau = objProdConfigurator(allVBFEventHypothesesForAHtoElecTau, pyModuleName=__name__) produceVBFEventHypothesesForAHtoElecTau = vbfEventProdConfiguratorForAHtoElecTau.configure(pyNameSpace=locals())
# with respect to direction of missing Et vector #-------------------------------------------------------------------------------- htRatios = cms.EDProducer( "HtRatioProducer", srcJet=cms.InputTag('selectedPatJetsEt15ForWTauNuCumulative'), srcTau=cms.InputTag('selectedPatTausForWTauNuEcalCrackVetoCumulative'), verbosity=cms.untracked.int32(0)) selectedHtRatio = cms.EDFilter("HtRatioSelector", src=cms.InputTag('htRatios'), cut=cms.string('Ratio() > 0.65'), filter=cms.bool(False)) selectedHtRatioLoose = cms.EDFilter("HtRatioSelector", src=cms.InputTag('htRatios'), cut=cms.string('Ratio() > 0.3'), filter=cms.bool(False)) htRatioProdConfigurator = objProdConfigurator(htRatios, pyModuleName=__name__) produceHtRatio = htRatioProdConfigurator.configure(pyNameSpace=locals()) htRatioSelConfigurator = objSelConfigurator( [selectedHtRatioLoose, selectedHtRatio], src="htRatios", pyModuleName=__name__, doSelIndividual=False) selectHtRatio = htRatioSelConfigurator.configure(pyNameSpace=locals())
) selectedHtRatio = cms.EDFilter("HtRatioSelector", src = cms.InputTag('htRatios'), cut = cms.string('Ratio() > 0.65'), filter = cms.bool(False) ) selectedHtRatioLoose = cms.EDFilter("HtRatioSelector", src = cms.InputTag('htRatios'), cut = cms.string('Ratio() > 0.3'), filter = cms.bool(False) ) htRatioProdConfigurator = objProdConfigurator( htRatios, pyModuleName = __name__ ) produceHtRatio = htRatioProdConfigurator.configure(pyNameSpace = locals()) htRatioSelConfigurator = objSelConfigurator( [ selectedHtRatioLoose, selectedHtRatio ], src = "htRatios", pyModuleName = __name__, doSelIndividual = False ) selectHtRatio = htRatioSelConfigurator.configure(pyNameSpace = locals())
maxObjFunctionCalls = cms.uint32(5000), verbosity = cms.int32(0) ) allElecTauPairs.nSVfit.psKine_MEt_logM_int = cms.PSet() allElecTauPairs.nSVfit.psKine_MEt_logM_int.config = allElecTauPairs.nSVfit.psKine_MEt_logM_fit.config allElecTauPairs.nSVfit.psKine_MEt_logM_int.algorithm = cms.PSet( pluginName = cms.string("nSVfitAlgorithmByIntegration"), pluginType = cms.string("NSVfitAlgorithmByIntegration"), parameters = nSVfitProducerByIntegration.algorithm.parameters, vegasOptions = nSVfitProducerByIntegration.algorithm.vegasOptions ) #-------------------------------------------------------------------------------- elecTauPairProdConfigurator = objProdConfigurator( allElecTauPairs, pyModuleName = __name__ ) produceElecTauPairs = elecTauPairProdConfigurator.configure(pyNameSpace = locals()) # define additional collections of electron + tau-jet candidates # with loose track and ECAL isolation (and conversion rejection) applied on electron leg # (NOTE: to be used for the purpose of factorizing efficiencies # of electron isolation from other event selection criteria, # in order to avoid problems with limited Monte Carlo statistics) allElecTauPairsLooseElectronIsolation = allElecTauPairs.clone() allElecTauPairsLooseElectronIsolation.srcLeg1 = cms.InputTag('selectedPatElectronsForElecTauTrkIPlooseIsolationCumulative') elecTauPairProdConfiguratorLooseElectronIsolation = objProdConfigurator( allElecTauPairsLooseElectronIsolation,
src=allMuTauPairs.srcLeg2, likelihoodFunctions=cms.VPSet( nSVfitTauLikelihoodPhaseSpace.clone( applySinThetaFactor=cms.bool(False))), builder=nSVfitTauToHadBuilder) allMuTauPairs.nSVfit.psKine_MEt_int.config.event.resonances.A.likelihoodFunctions = cms.VPSet( ) allMuTauPairs.nSVfit.psKine_MEt_int.algorithm = cms.PSet( pluginName=cms.string("nSVfitAlgorithmByIntegration"), pluginType=cms.string("NSVfitAlgorithmByIntegration"), parameters=nSVfitProducerByIntegration.algorithm.parameters, vegasOptions=nSVfitProducerByIntegration.algorithm.vegasOptions, max_or_median=cms.string("max")) #-------------------------------------------------------------------------------- muTauPairProdConfigurator = objProdConfigurator(allMuTauPairs, pyModuleName=__name__) produceMuTauPairs = muTauPairProdConfigurator.configure(pyNameSpace=locals()) allMuTauPairsPFtype1MET = copy.deepcopy(allMuTauPairs) allMuTauPairsPFtype1MET.srcMET = cms.InputTag('patPFtype1METs') produceMuTauPairs += allMuTauPairsPFtype1MET # define additional collections of muon + tau-jet candidates # with loose track and ECAL isolation applied on muon leg # (NOTE: to be used for the purpose of factorizing efficiencies # of muon isolation from other event selection criteria, # in order to avoid problems with limited Monte Carlo statistics) allMuTauPairsLooseMuonIsolation = allMuTauPairs.clone( srcLeg1=cms.InputTag('selectedPatMuonsTrkIPlooseIsolationCumulative'), )
likelihoodFunctions = cms.VPSet(nSVfitTauLikelihoodPhaseSpace.clone( applySinThetaFactor = cms.bool(False))), builder = nSVfitTauToHadBuilder ) allMuTauPairs.nSVfit.psKine_MEt_int.config.event.resonances.A.likelihoodFunctions = cms.VPSet() allMuTauPairs.nSVfit.psKine_MEt_int.algorithm = cms.PSet( pluginName = cms.string("nSVfitAlgorithmByIntegration"), pluginType = cms.string("NSVfitAlgorithmByIntegration"), parameters = nSVfitProducerByIntegration.algorithm.parameters, vegasOptions = nSVfitProducerByIntegration.algorithm.vegasOptions, max_or_median = cms.string("max") ) #-------------------------------------------------------------------------------- muTauPairProdConfigurator = objProdConfigurator( allMuTauPairs, pyModuleName = __name__ ) produceMuTauPairs = muTauPairProdConfigurator.configure(pyNameSpace = locals()) allMuTauPairsPFtype1MET = copy.deepcopy(allMuTauPairs) allMuTauPairsPFtype1MET.srcMET = cms.InputTag('patPFtype1METs') produceMuTauPairs += allMuTauPairsPFtype1MET # define additional collections of muon + tau-jet candidates # with loose track and ECAL isolation applied on muon leg # (NOTE: to be used for the purpose of factorizing efficiencies # of muon isolation from other event selection criteria, # in order to avoid problems with limited Monte Carlo statistics) allMuTauPairsLooseMuonIsolation = allMuTauPairs.clone(
import FWCore.ParameterSet.Config as cms from TauAnalysis.CandidateTools.tools.objProdConfigurator import * # -------------------------------------------------------------------------------- # produce combinations of tau-jet + missing transverse momentum # -------------------------------------------------------------------------------- allTauNuPairs = cms.EDProducer( "PATTauNuPairProducer", srcVisDecayProducts=cms.InputTag("selectedPatTausForWTauNuEcalCrackVetoCumulative"), srcMET=cms.InputTag("patMETs"), verbosity=cms.untracked.int32(0), ) tauNuPairProdConfigurator = objProdConfigurator(allTauNuPairs, pyModuleName=__name__) produceTauNuPairs = tauNuPairProdConfigurator.configure(pyNameSpace=locals())
import FWCore.ParameterSet.Config as cms from TauAnalysis.CandidateTools.tools.objProdConfigurator import * #-------------------------------------------------------------------------------- # produce combinations of tau-jet + missing transverse momentum #-------------------------------------------------------------------------------- allTauNuPairs = cms.EDProducer("PATTauNuPairProducer", srcVisDecayProducts = cms.InputTag('selectedPatTausForWTauNuEcalCrackVetoCumulative'), srcMET = cms.InputTag('patMETs'), verbosity = cms.untracked.int32(0) ) tauNuPairProdConfigurator = objProdConfigurator( allTauNuPairs, pyModuleName = __name__ ) produceTauNuPairs = tauNuPairProdConfigurator.configure(pyNameSpace = locals())
allVBFEventHypothesesForAHtoMuTau = cms.EDProducer("PATMuTauPairVBFEventProducer", srcTagJets = cms.InputTag('selectedPatJetsForAHtoMuTauJetTagCumulative'), srcCentralJets = cms.InputTag('selectedPatJetsForAHtoMuTauJetTagCumulative'), srcDiTaus = cms.InputTag('selectedMuTauPairsPzetaDiffCumulative'), dEtaMinTagJet = cms.double(2.5), massMinTagJet = cms.double(250.), dRmin12TagJet = cms.double(0.5), etaMarginCentralJet = cms.double(0.), dRmin12CentralJet = cms.double(0.5) ) vbfEventProdConfiguratorForAHtoMuTau = objProdConfigurator( allVBFEventHypothesesForAHtoMuTau, pyModuleName = __name__ ) produceVBFEventHypothesesForAHtoMuTau = \ vbfEventProdConfiguratorForAHtoMuTau.configure(pyNameSpace = locals()) allVBFEventHypothesesForAHtoMuTauLooseMuonIsolation = allVBFEventHypothesesForAHtoMuTau.clone( srcDiTaus = cms.InputTag('selectedMuTauPairsPzetaDiffLooseMuonIsolationCumulative') ) vbfEventProdConfiguratorForAHtoMuTauLooseMuonIsolation = objProdConfigurator( allVBFEventHypothesesForAHtoMuTauLooseMuonIsolation, pyModuleName = __name__ ) produceVBFEventHypothesesForAHtoMuTauLooseMuonIsolation = \ vbfEventProdConfiguratorForAHtoMuTauLooseMuonIsolation.configure(pyNameSpace = locals())