CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/RecoParticleFlow/PFProducer/python/particleFlow_cfi.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 particleFlow = 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("muons"),
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     pf_electron_mvaCut = cms.double(-0.1),
00029     # apply the crack corrections                             
00030     pf_electronID_crackCorrection = cms.bool(False),
00031     usePFSCEleCalib = cms.bool(True),                        
00032     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),
00033     calibPFSCEle_endcap = cms.vdouble(0.9995,-12.313,2.8784,-1.057e-04,10.282,3.059,1.3502e-03,-2.2185,3.4206),
00034 
00035     useEGammaSupercluster =  cms.bool(True),
00036     sumEtEcalIsoForEgammaSC_barrel = cms.double(1.),
00037     sumEtEcalIsoForEgammaSC_endcap = cms.double(2.),
00038     coneEcalIsoForEgammaSC = cms.double(0.3),
00039     sumPtTrackIsoForEgammaSC_barrel = cms.double(4.),
00040     sumPtTrackIsoForEgammaSC_endcap = cms.double(4.),
00041     nTrackIsoForEgammaSC = cms.uint32(2),                          
00042     coneTrackIsoForEgammaSC = cms.double(0.3),
00043     useEGammaElectrons = cms.bool(False),
00044     egammaElectrons = cms.InputTag(''),                              
00045 
00046     # Input displaced vertices
00047     # It is strongly adviced to keep usePFNuclearInteractions = bCorrect                       
00048                               
00049     rejectTracks_Bad =  cms.bool(True),
00050     rejectTracks_Step45 = cms.bool(True),
00051 
00052     usePFNuclearInteractions = cms.bool(True),
00053     usePFConversions = cms.bool(False),
00054     usePFDecays = cms.bool(False),
00055 
00056     dptRel_DispVtx = cms.double(10.),
00057 
00058     iCfgCandConnector = cms.PSet(
00059     
00060          bCorrect         =  cms.bool(True), 
00061          bCalibPrimary    =  cms.bool(True),
00062          dptRel_PrimaryTrack = cms.double(10.),
00063          dptRel_MergedTrack = cms.double(5.0),
00064          ptErrorSecondary = cms.double(1.0),
00065          nuclCalibFactors =  cms.vdouble(0.8, 0.15, 0.5, 0.5, 0.05)
00066     ),
00067 
00068     
00069 
00070     # Treatment of muons : 
00071     # Expected energy in ECAL and HCAL, and RMS
00072     muon_HCAL = cms.vdouble(3.0,3.0),
00073     muon_ECAL = cms.vdouble(0.5,0.5),
00074 
00075     # Use PF muon momentum assigment instead of default reco muon one
00076     usePFMuonMomAssign = cms.bool(False),
00077 
00078     # Treatment of potential fake tracks
00079     # Number of sigmas for fake track detection
00080     nsigma_TRACK = cms.double(1.0),
00081     # Absolute pt error to detect fake tracks in the first three iterations
00082     # dont forget to modify also ptErrorSecondary if you modify this parameter
00083     pt_Error = cms.double(1.0),
00084     # Factors to be applied in the four and fifth steps to the pt error
00085     factors_45 = cms.vdouble(10.,100.),
00086 
00087     # Post HF cleaning
00088     postHFCleaning = cms.bool(False),
00089     # Clean only objects with pt larger than this value
00090     minHFCleaningPt = cms.double(5.),
00091     # Clean only if the initial MET/sqrt(sumet) is larger than this value
00092     maxSignificance = cms.double(2.5),                          
00093     # Clean only if the final MET/sqrt(sumet) is smaller than this value
00094     minSignificance = cms.double(2.5),
00095     # Clean only if the significance reduction is larger than this value
00096     minSignificanceReduction = cms.double(1.4),
00097     # Clean only if the MET and the to-be-cleaned object satisfy this DeltaPhi * Pt cut
00098     # (the MET angular resoution is in 1/MET) 
00099     maxDeltaPhiPt = cms.double(7.0),
00100     # Clean only if the MET relative reduction from the to-be-cleaned object
00101     # is larger than this value
00102     minDeltaMet = cms.double(0.4),
00103 
00104     # Check HF cleaning
00105     cleanedHF = cms.VInputTag(
00106                 cms.InputTag("particleFlowRecHitHCAL","Cleaned"),
00107                 cms.InputTag("particleFlowClusterHFHAD","Cleaned"),
00108                 cms.InputTag("particleFlowClusterHFEM","Cleaned")
00109                 ),
00110     
00111     # number of sigmas for neutral energy detection
00112     pf_nsigma_ECAL = cms.double(0.0),
00113     pf_nsigma_HCAL = cms.double(1.0),
00114 
00115     # Naive cluster calibration
00116     # ECAL alone
00117     pf_calib_ECAL_offset = cms.double(0.0),
00118     pf_calib_ECAL_slope = cms.double(1.0),
00119     # HCAL alone
00120     pf_calib_HCAL_slope = cms.double(2.17),
00121     pf_calib_HCAL_offset = cms.double(1.73),
00122     pf_calib_HCAL_damping = cms.double(2.49),
00123     # ECAL + HCAL 
00124     pf_calib_ECAL_HCAL_hslope = cms.double(1.06),
00125     pf_calib_ECAL_HCAL_eslope = cms.double(1.05),
00126     pf_calib_ECAL_HCAL_offset = cms.double(6.11),
00127 
00128     # ECAL/HCAL cluster calibration !
00129     # Colin = 0; Jamie = 1; Newest = 2.
00130     pf_newCalib = cms.uint32(2),
00131    # Apply corrections?
00132     pfcluster_doCorrection = cms.uint32(1),
00133     # Bulk correction parameters
00134     pfcluster_globalP0 = cms.double(-2.315),                              
00135     pfcluster_globalP1 = cms.double(1.01),
00136     # Low energy correction parameters
00137     pfcluster_lowEP0 = cms.double(3.249189e-01),
00138     pfcluster_lowEP1 = cms.double(7.907990e-01),
00139     pfcluster_allowNegative     = cms.uint32(0),
00140     pfcluster_doEtaCorrection = cms.uint32(1),
00141     pfcluster_barrelEndcapEtaDiv = cms.double(1.4),
00142 
00143     #Use hand fitted parameters specified below
00144     #P1 adjusts the height of the peak
00145     ecalHcalEcalBarrel = cms.vdouble(0.67,    3.0,    1.15,    0.90,  -0.060,    1.4),
00146     ecalHcalEcalEndcap = cms.vdouble(0.46,    3.0,    1.10,    0.40,   -0.020,    1.4),
00147     ecalHcalHcalBarrel = cms.vdouble(0.46,    3.0,    1.15,    0.30,   -0.020,    1.4),
00148     ecalHcalHcalEndcap = cms.vdouble(0.460,    3.0,    1.10,   0.30,  -0.02,    1.4),
00149     pfcluster_etaCorrection = cms.vdouble(1.01,   -1.02e-02,   5.17e-02,      0.563,     -0.425,     0.110),
00150 
00151     # calibration parameters for HF:
00152     calibHF_use = cms.bool(False),
00153     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),
00154 #    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),
00155 #    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),
00156 #    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),
00157 #    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)
00158     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),
00159     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),
00160     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),
00161     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)
00162 )
00163 
00164 
00165