CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/RecoParticleFlow/PFProducer/python/particleFlow_cfi.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 particleFlowTmp = cms.EDProducer("PFProducer",
00004 
00005     # PF Blocks label
00006     blocks = cms.InputTag("particleFlowBlock"),
00007 
00008     # reco::muons label and Post Muon cleaning
00009     muons = cms.InputTag("muons1stStep"),
00010     postMuonCleaning = cms.bool(True),
00011 
00012     # Vertices label
00013     vertexCollection = cms.InputTag("offlinePrimaryVertices"),
00014     useVerticesForNeutral = cms.bool(True),
00015 
00016     # Algorithm type ?
00017     algoType = cms.uint32(0),
00018 
00019     # Verbose and debug flags
00020     verbose = cms.untracked.bool(False),
00021     debug = cms.untracked.bool(False),
00022 
00023     # Use electron identification in PFAlgo
00024     usePFElectrons = cms.bool(True),
00025     pf_electron_output_col=cms.string('electrons'),
00026     pf_electronID_mvaWeightFile = cms.string('RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_PfElectrons23Jan_IntToFloat.txt'),
00027 
00028     # Use Photon identification in PFAlgo (for now this has NO impact, algo is swicthed off hard-coded
00029     usePFPhotons = cms.bool(True),
00030     #pf_convID_mvaWeightFile = cms.string('RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionAug0411.txt'),    
00031     pf_convID_mvaWeightFile = cms.string('RecoParticleFlow/PFProducer/data/MVAnalysis_BDT.weights_pfConversionFeb2311.txt'),    
00032     pf_conv_mvaCut=cms.double(0.0),
00033     sumPtTrackIsoForPhoton=cms.double(2.0),
00034     sumPtTrackIsoSlopeForPhoton=cms.double(0.001),
00035 
00036                               
00037     pf_electron_mvaCut = cms.double(-0.1),
00038     # apply the crack corrections                             
00039     pf_electronID_crackCorrection = cms.bool(False),
00040     usePFSCEleCalib = cms.bool(True),
00041                               #new corrections  #MM /*
00042     calibPFSCEle_Fbrem_barrel = cms.vdouble(0.6, 6,                                                 #Range of non constant correction
00043                                             -0.0255975, 0.0576727, 0.975442, -0.000546394, 1.26147, #standard parameters
00044                                             25,                                                     #pt value for switch to low pt corrections
00045                                             -0.02025, 0.04537, 0.9728, -0.0008962, 1.172),          # low pt parameters
00046     calibPFSCEle_Fbrem_endcap = cms.vdouble(0.9, 6.5,                                               #Range of non constant correction
00047                                             -0.0692932, 0.101776, 0.995338, -0.00236548, 0.874998,  #standard parameters eta < switch value
00048                                             1.653,                                                  #eta value for correction switch
00049                                             -0.0750184, 0.147000, 0.923165, 0.000474665, 1.10782),  #standard parameters eta > switch value
00050     calibPFSCEle_barrel = cms.vdouble(1.004, -1.536, 22.88, -1.467,  #standard
00051                                       0.3555, 0.6227, 14.65, 2051,   #parameters
00052                                       25,                            #pt value for switch to low pt corrections
00053                                       0.9932, -0.5444, 0, 0.5438,    #low pt
00054                                       0.7109, 7.645, 0.2904, 0),     #parameters
00055     calibPFSCEle_endcap = cms.vdouble(1.153, -16.5975, 5.668,
00056                                       -0.1772, 16.22, 7.326,
00057                                       0.0483, -4.068, 9.406),
00058                               #old corrections #MM */
00059 #    calibPFSCEle_barrel = cms.vdouble(1.0326,-13.71,339.72,0.4862,0.00182,0.36445,1.411,1.0206,0.0059162,-5.14434e-05,1.42516e-07),
00060 #    calibPFSCEle_endcap = cms.vdouble(0.9995,-12.313,2.8784,-1.057e-04,10.282,3.059,1.3502e-03,-2.2185,3.4206),
00061 
00062     useEGammaSupercluster =  cms.bool(True),
00063     sumEtEcalIsoForEgammaSC_barrel = cms.double(1.),
00064     sumEtEcalIsoForEgammaSC_endcap = cms.double(2.),
00065     coneEcalIsoForEgammaSC = cms.double(0.3),
00066     sumPtTrackIsoForEgammaSC_barrel = cms.double(4.),
00067     sumPtTrackIsoForEgammaSC_endcap = cms.double(4.),
00068     nTrackIsoForEgammaSC = cms.uint32(2),                          
00069     coneTrackIsoForEgammaSC = cms.double(0.3),
00070     useEGammaElectrons = cms.bool(True),
00071     egammaElectrons = cms.InputTag('electronsCiCLoose'),                              
00072 
00073     # Input displaced vertices
00074     # It is strongly adviced to keep usePFNuclearInteractions = bCorrect                       
00075                               
00076     rejectTracks_Bad =  cms.bool(True),
00077     rejectTracks_Step45 = cms.bool(True),
00078 
00079     usePFNuclearInteractions = cms.bool(True),
00080     usePFConversions = cms.bool(True),
00081     usePFDecays = cms.bool(False),
00082 
00083     dptRel_DispVtx = cms.double(10.),
00084 
00085     iCfgCandConnector = cms.PSet(
00086     
00087          bCorrect         =  cms.bool(True), 
00088          bCalibPrimary    =  cms.bool(True),
00089          dptRel_PrimaryTrack = cms.double(10.),
00090          dptRel_MergedTrack = cms.double(5.0),
00091          ptErrorSecondary = cms.double(1.0),
00092          nuclCalibFactors =  cms.vdouble(0.8, 0.15, 0.5, 0.5, 0.05)
00093     ),
00094 
00095     
00096 
00097     # Treatment of muons : 
00098     # Expected energy in ECAL and HCAL, and RMS
00099     muon_HCAL = cms.vdouble(3.0,3.0),
00100     muon_ECAL = cms.vdouble(0.5,0.5),
00101 
00102     # Use PF muon momentum assigment instead of default reco muon one
00103     usePFMuonMomAssign = cms.bool(False),
00104 
00105     # Treatment of potential fake tracks
00106     # Number of sigmas for fake track detection
00107     nsigma_TRACK = cms.double(1.0),
00108     # Absolute pt error to detect fake tracks in the first three iterations
00109     # dont forget to modify also ptErrorSecondary if you modify this parameter
00110     pt_Error = cms.double(1.0),
00111     # Factors to be applied in the four and fifth steps to the pt error
00112     factors_45 = cms.vdouble(10.,100.),
00113 
00114     # Post HF cleaning
00115     postHFCleaning = cms.bool(False),
00116     # Clean only objects with pt larger than this value
00117     minHFCleaningPt = cms.double(5.),
00118     # Clean only if the initial MET/sqrt(sumet) is larger than this value
00119     maxSignificance = cms.double(2.5),                          
00120     # Clean only if the final MET/sqrt(sumet) is smaller than this value
00121     minSignificance = cms.double(2.5),
00122     # Clean only if the significance reduction is larger than this value
00123     minSignificanceReduction = cms.double(1.4),
00124     # Clean only if the MET and the to-be-Cleaned object satisfy this DeltaPhi * Pt cut
00125     # (the MET angular resoution is in 1/MET) 
00126     maxDeltaPhiPt = cms.double(7.0),
00127     # Clean only if the MET relative reduction from the to-be-Cleaned object
00128     # is larger than this value
00129     minDeltaMet = cms.double(0.4),
00130 
00131     # Check HF cleaning
00132     cleanedHF = cms.VInputTag(
00133                 cms.InputTag("particleFlowRecHitHCAL","Cleaned"),
00134                 cms.InputTag("particleFlowClusterHFHAD","Cleaned"),
00135                 cms.InputTag("particleFlowClusterHFEM","Cleaned")
00136                 ),
00137     
00138     # number of sigmas for neutral energy detection
00139     pf_nsigma_ECAL = cms.double(0.0),
00140     pf_nsigma_HCAL = cms.double(1.0),
00141 
00142     # ECAL/HCAL PF cluster calibration : take it from global tag ?
00143     useCalibrationsFromDB = cms.bool(True),
00144 
00145     # calibration parameters for HF:
00146     calibHF_use = cms.bool(False),
00147     calibHF_eta_step  = cms.vdouble(0.0,2.90,3.00,3.20,4.20,4.40,4.60,4.80,5.20,5.40),
00148 #    calibHF_a_EMonly  = cms.vdouble(10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00),
00149 #    calibHF_b_HADonly = cms.vdouble(10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00),
00150 #    calibHF_a_EMHAD   = cms.vdouble(10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00),
00151 #    calibHF_b_EMHAD   = cms.vdouble(10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00,10.00)
00152     calibHF_a_EMonly  = cms.vdouble(0.96945,0.96701,0.76309,0.82268,0.87583,0.89718,0.98674,1.4681,1.4580,1.4580),
00153     calibHF_b_HADonly = cms.vdouble(1.27541,0.85361,0.86333,0.89091,0.94348,0.94348,0.94370,1.0034,1.0444,1.0444),
00154     calibHF_a_EMHAD   = cms.vdouble(1.42215,1.00496,0.68961,0.81656,0.98504,0.98504,1.00802,1.0593,1.4576,1.4576),
00155     calibHF_b_EMHAD   = cms.vdouble(1.27541,0.85361,0.86333,0.89091,0.94348,0.94348,0.94370,1.0034,1.0444,1.0444)
00156  
00157 #    toRead = cms.untracked.vstring("PFfa_BARREL",
00158 #                                   "PFfa_ENDCAP",
00159 #                                   "PFfb_BARREL",
00160 #                                   "PFfb_ENDCAP",
00161 #                                   "PFfc_BARREL",
00162 #                                   "PFfc_ENDCAP",
00163 #                                   "PFfaEta_BARREL",
00164 #                                   "PFfaEta_ENDCAP",
00165 #                                   "PFfbEta_BARREL",
00166 #                                   "PFfbEta_ENDCAP") # same strings as fType
00167 
00168 )
00169 
00170 
00171