test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFRecoTauProducer_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 from RecoTauTag.RecoTau.PFRecoTauQualityCuts_cfi import PFTauQualityCuts
3 
4 pfRecoTauProducer = cms.EDProducer("PFRecoTauProducer",
5 
6  Algorithm = cms.string("ConeBased"),
7  LeadPFCand_minPt = cms.double(5.0), #cut on lead object (can be track, or gamma)
8 
9  #SignalCone parameters
10  TrackerSignalConeMetric = cms.string('DR'), ## *
11  TrackerSignalConeSizeFormula = cms.string('0.07'), ## **
12  TrackerSignalConeSize_min = cms.double(0.0),
13 
14  #Important: the four-vector energy for the PFTau is defined as the candidates
15  # within the maximum tracker signal cone size (TrackerSignalConeSize_max_).
16  # For fixed cone taus, this should be set to the fixed cone size.
17  TrackerSignalConeSize_max = cms.double(0.07),
18 
19  ECALSignalConeMetric = cms.string('DR'), ## *
20  ECALSignalConeSizeFormula = cms.string('0.15'), ## **
21  ECALSignalConeSize_min = cms.double(0.0),
22  ECALSignalConeSize_max = cms.double(0.6),
23 
24  HCALSignalConeMetric = cms.string('DR'), ## *
25  HCALSignalConeSizeFormula = cms.string('0.10'), ## **
26  HCALSignalConeSize_min = cms.double(0.0),
27  HCALSignalConeSize_max = cms.double(0.6),
28 
29  #IsolationCone parameters
30  TrackerIsolConeMetric = cms.string('DR'), ## *
31  TrackerIsolConeSizeFormula = cms.string('0.50'), ## **
32  TrackerIsolConeSize_min = cms.double(0.0),
33  TrackerIsolConeSize_max = cms.double(0.6),
34 
35  ECALIsolConeMetric = cms.string('DR'), ## *
36  ECALIsolConeSizeFormula = cms.string('0.50'), ## **
37  ECALIsolConeSize_min = cms.double(0.0),
38  ECALIsolConeSize_max = cms.double(0.6),
39 
40  HCALIsolConeMetric = cms.string('DR'), ## *
41  HCALIsolConeSizeFormula = cms.string('0.50'), ## **
42  HCALIsolConeSize_min = cms.double(0.0),
43  HCALIsolConeSize_max = cms.double(0.6),
44 
45  # Cut on the number of tracker hits on isolation PF charged hadrons
46  #ChargedHadrCand_IsolAnnulus_minNhits = cms.uint32(8), # this cut is now applied in the PFTauDiscriminator
47  ChargedHadrCand_IsolAnnulus_minNhits = cms.uint32(0),
48 
49  #Electron rejection parameters
50  ElectronPreIDProducer = cms.InputTag("elecpreid"),
51  EcalStripSumE_deltaPhiOverQ_minValue = cms.double(-0.1),
52  EcalStripSumE_deltaPhiOverQ_maxValue = cms.double(0.5),
53  EcalStripSumE_minClusEnergy = cms.double(0.1),
54  EcalStripSumE_deltaEta = cms.double(0.03),
55  ElecPreIDLeadTkMatch_maxDR = cms.double(0.01),
56  maximumForElectrionPreIDOutput = cms.double(-0.1),
57 
58  #Lead track matching cone parameters
59  MatchingConeMetric = cms.string('DR'),
60  MatchingConeSizeFormula = cms.string('0.1'),
61  MatchingConeSize_min = cms.double(0.0), #min/max don't affect, as it is locked at 0.1
62  MatchingConeSize_max = cms.double(0.6), #just make sure they window 0.1!
63 
64  # PFTaus are seeded by TauTagInfos (basically a jet wrapper/quality filter)
65  PFTauTagInfoProducer = cms.InputTag("pfRecoTauTagInfoProducer"),
66  JetPtMin = cms.double(0.0),
67  #Filter lead charged hadron cand. by DZ to vertex?
68  UseChargedHadrCandLeadChargedHadrCand_tksDZconstraint = cms.bool(True),
69  ChargedHadrCandLeadChargedHadrCand_tksmaxDZ = cms.double(1.0),
70 
71  #Standard PV stuff
72  PVProducer = PFTauQualityCuts.primaryVertexSrc,
73  smearedPVsigmaY = cms.double(0.0015),
74  smearedPVsigmaX = cms.double(0.0015),
75  smearedPVsigmaZ = cms.double(0.005),
76 
77  #FixedArea parameters
78  AreaMetric_recoElements_maxabsEta = cms.double(2.5),
79 
80  DataType = cms.string("AOD"), # Computring tier (modifies how some values are retrieved..)
81 
82  # The following parameters affect TRACKS ONLY.
83  # i.e., they use tracks, from the jet tracks associator, not PFChargedHadronCandidates
84  # Intended only as a cross check, don't use them unles syou need them!
85 
86  # Track - PV filtering
87  LeadTrack_minPt = cms.double(0.0), # This should be cut on at the discriminator level,
88  # to make things consistent in the case where the tau
89  # has a leading PFGamma cand but no lead PFChargedCand
90  TrackLeadTrack_maxDZ = cms.double(1.0),
91  UseTrackLeadTrackDZconstraint = cms.bool(True),
92  Track_IsolAnnulus_minNhits = cms.uint32(3),
93  ### parameters for gammas in ellipse ###
94  AddEllipseGammas = cms.bool(False),
95  Rphi = cms.double(2.0), ## factor*Reta; Reta is the standard ecal signal cone size
96  MaxEtInEllipse = cms.double(2.0), # max pt for gammas inside the ellipse
97  ########################################
98 
99  # If true, include signal cone neutral hadrons in the tau four vector.
100  # Note: alternatLorentzVector is always only charged + gamma
101  putNeutralHadronsInP4 = cms.bool(False),
102 
103 )
104  # * possible metrics : "DR", "angle", "area";
105  # if the "area" metric is chosen, AreaMetric_recoElements_maxabsEta parameter is considered, the area of a cone is increased by increasing the angle of the cone;
106  # functionnality to use a "DR" signal cone and an "area" isolation outer cone is not available;
107  # ** may depend on E(energy) and/or PT(transverse momentum) of the initial PFJet, ex. : "3.0/E" or "3.0/ET"
108  # if XXXConeSizeFormula>XXXConeSize_max then XXXConeSize_max is the considered cone size ; if XXXConeSizeFormula<XXXConeSize_min then XXXConeSize_min is the considered cone size;
109  # *** a PV is needed for computing a leading (charged hadron PFCand) rec. tk signed transverse impact parameter.
110  # For electron rejection variable
111