Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-02-20 03:45:09

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 def PFRecoTauChargedHadronProducer(*args, **kwargs):
0004   mod = cms.EDProducer('PFRecoTauChargedHadronProducer',
0005     ranking = cms.VPSet(
0006       cms.PSet(
0007         name = cms.string('ChargedPFCandidate'),
0008         plugin = cms.string('PFRecoTauChargedHadronStringQuality'),
0009         selection = cms.string('algoIs("kChargedPFCandidate")'),
0010         selectionFailValue = cms.double(1000),
0011         selectionPassFunction = cms.string('-pt')
0012       ),
0013       template = cms.PSetTemplate(
0014         selectionPassFunction = cms.string('-pt'),
0015         selectionFailValue = cms.double(1000),
0016         selection = cms.string('algoIs("kChargedPFCandidate")'),
0017         name = cms.string('ChargedPFCandidate'),
0018         plugin = cms.string('PFRecoTauChargedHadronStringQuality')
0019       )
0020     ),
0021     verbosity = cms.int32(0),
0022     maxJetAbsEta = cms.double(2.5),
0023     outputSelection = cms.string('pt > 0.5'),
0024     minJetPt = cms.double(14),
0025     jetSrc = cms.InputTag('ak4PFJets'),
0026     builders = cms.VPSet(
0027       cms.PSet(
0028         name = cms.string(''),
0029         plugin = cms.string(''),
0030         verbosity = cms.int32(0),
0031         qualityCuts = cms.PSet()
0032       ),
0033       template = cms.PSetTemplate(
0034         minMergeChargedHadronPt = cms.required.double,
0035         name = cms.required.string,
0036         plugin = cms.required.string,
0037         dRcone = cms.optional.double,
0038         dRconeLimitedToJetArea = cms.optional.bool,
0039         dRmergeNeutralHadron = cms.optional.double,
0040         dRmergePhoton = cms.optional.double,
0041         srcTracks = cms.optional.InputTag,
0042         qualityCuts = cms.PSet(
0043           signalQualityCuts = cms.PSet(
0044             minTrackPt = cms.double(0.5),
0045             maxTrackChi2 = cms.double(100),
0046             maxTransverseImpactParameter = cms.double(0.1),
0047             maxDeltaZ = cms.double(0.4),
0048             maxDeltaZToLeadTrack = cms.double(-1),
0049             minTrackVertexWeight = cms.double(-1),
0050             minTrackPixelHits = cms.uint32(0),
0051             minTrackHits = cms.uint32(3),
0052             minGammaEt = cms.double(1),
0053             useTracksInsteadOfPFHadrons = cms.optional.bool,
0054             minNeutralHadronEt = cms.double(30)
0055           ),
0056           isolationQualityCuts = cms.PSet(
0057             minTrackPt = cms.double(1),
0058             maxTrackChi2 = cms.double(100),
0059             maxTransverseImpactParameter = cms.double(0.03),
0060             maxDeltaZ = cms.double(0.2),
0061             maxDeltaZToLeadTrack = cms.double(-1),
0062             minTrackVertexWeight = cms.double(-1),
0063             minTrackPixelHits = cms.uint32(0),
0064             minTrackHits = cms.uint32(8),
0065             minGammaEt = cms.double(1.5),
0066             useTracksInsteadOfPFHadrons = cms.optional.bool
0067           ),
0068           vxAssocQualityCuts = cms.PSet(
0069             minTrackPt = cms.double(0.5),
0070             maxTrackChi2 = cms.double(100),
0071             maxTransverseImpactParameter = cms.double(0.1),
0072             minTrackVertexWeight = cms.double(-1),
0073             minTrackPixelHits = cms.uint32(0),
0074             minTrackHits = cms.uint32(3),
0075             minGammaEt = cms.double(1),
0076             useTracksInsteadOfPFHadrons = cms.optional.bool
0077           ),
0078           primaryVertexSrc = cms.InputTag('offlinePrimaryVertices'),
0079           pvFindingAlgo = cms.string('closestInDeltaZ'),
0080           vertexTrackFiltering = cms.bool(False),
0081           recoverLeadingTrk = cms.bool(False),
0082           leadingTrkOrPFCandOption = cms.string('leadPFCand')
0083         ),
0084         minMergeGammaEt = cms.required.double,
0085         verbosity = cms.int32(0),
0086         minMergeNeutralHadronEt = cms.required.double,
0087         dRmergePhotonWrtChargedHadron = cms.optional.double,
0088         dRmergePhotonWrtNeutralHadron = cms.optional.double,
0089         maxUnmatchedBlockElementsNeutralHadron = cms.optional.int32,
0090         dRmergePhotonWrtElectron = cms.optional.double,
0091         chargedHadronCandidatesParticleIds = cms.optional.vint32,
0092         minBlockElementMatchesPhoton = cms.optional.int32,
0093         dRmergeNeutralHadronWrtNeutralHadron = cms.optional.double,
0094         maxUnmatchedBlockElementsPhoton = cms.optional.int32,
0095         dRmergeNeutralHadronWrtOther = cms.optional.double,
0096         dRmergeNeutralHadronWrtElectron = cms.optional.double,
0097         minBlockElementMatchesNeutralHadron = cms.optional.int32,
0098         dRmergePhotonWrtOther = cms.optional.double,
0099         dRmergeNeutralHadronWrtChargedHadron = cms.optional.double
0100       )
0101     ),
0102     mightGet = cms.optional.untracked.vstring
0103   )
0104   for a in args:
0105     mod.update_(a)
0106   mod.update_(kwargs)
0107   return mod