00001 import FWCore.ParameterSet.Config as cms 00002 00003 particleFlowDisplacedVertex = cms.EDProducer("PFDisplacedVertexProducer", 00004 00005 vertexCandidatesLabel = cms.InputTag("particleFlowDisplacedVertexCandidate"), 00006 00007 # verbosity 00008 verbose = cms.untracked.bool(False), 00009 00010 # Debug flag 00011 debug = cms.untracked.bool(False), 00012 00013 # maximum transverse distance between two points to be used in Seed 00014 transvSize = cms.double(1.0), 00015 00016 # maximum longitudinal distance between two points to be used in Seed 00017 longSize = cms.double(5), 00018 00019 # minimal radius below which we do not reconstruct interactions 00020 # typically the position of the first Pixel layer or beam pipe 00021 primaryVertexCut = cms.double(2.5), 00022 00023 # radius below which we don't wamt to reconstruct displaced 00024 # vertices 00025 tobCut = cms.double(100), 00026 00027 # z below which we don't want to reconstruct displaced 00028 # vertices 00029 tecCut = cms.double(220), 00030 00031 # the minimal accepted weight for the tracks calculated in the 00032 # adaptive vertex fitter to be associated to the displaced vertex 00033 # this correspond to the sigmacut of 6 00034 minAdaptWeight = cms.double(0.5), 00035 00036 # this flag is designed to reduce the timing of the algorithm in the high pile-up conditions. 2 tracks 00037 # vertices are the most sensitives to the pile-ups. 00038 switchOff2TrackVertex = cms.untracked.bool(True), 00039 00040 # ------------ Paramemeters for the track selection ------------ 00041 00042 # Primary vertex information used for dxy calculation 00043 mainVertexLabel = cms.InputTag("offlinePrimaryVertices", ""), 00044 offlineBeamSpotLabel = cms.InputTag("offlineBeamSpot", ""), 00045 00046 # Parameters used to apply cuts 00047 tracksSelectorParameters = cms.PSet( 00048 bSelectTracks = cms.bool(True), 00049 # If a track is high purity it is always kept 00050 quality = cms.string("HighPurity"), 00051 # Following cuts are applyed to non high purity tracks 00052 # nChi2_max and pt_min cuts are applyed to the primary and secondary tracks 00053 nChi2_max = cms.double(5.), 00054 pt_min = cms.double(.2), 00055 # nChi2_min applyed only to primary tracks which may be short 00056 # remove fake pixel triplets 00057 nChi2_min = cms.double(.5), 00058 # Cuts applyed to the secondary tracks long and displaced 00059 dxy_min = cms.double(.2), 00060 nHits_min = cms.int32(6), 00061 nOuterHits_max = cms.int32(9) 00062 ), 00063 00064 # ------------ Paramemeters for the vertex identification ------------ 00065 00066 vertexIdentifierParameters = cms.PSet( 00067 bIdentifyVertices = cms.bool(True), 00068 # Minimal sum pt of secondary tracks for displaced vertices. 00069 # Below this value we find either loopers splitted in two parts eiter 00070 # fake vertices in forward direction 00071 pt_min = cms.double(0.5), 00072 # Minimal pT and log10(P_primary/P_secondary) for primary track in kinks (Primary+Secondary) 00073 # which are not identifier as K-+ decays 00074 pt_kink_min = cms.double(3.0), 00075 logPrimSec_min = cms.double(0.0), 00076 # maximum absoluta value of eta for loopers 00077 looper_eta_max = cms.double(0.1), 00078 # Masses cuts for selections 00079 # CVmin K0min K0max K-min K-max Ldmin Ldmax Nuclmin_ee 00080 masses = cms.vdouble(0.050, 0.485, 0.515, 0.480, 0.520, 1.107, 1.125, 0.200), 00081 # Angle between the primaryVertex-secondaryVertex direction and secondary tracks direction 00082 # this angle means that the final system shall propagate in the same direction than initial system 00083 # all_max, CV and V0 max 00084 angles = cms.vdouble(15, 15) 00085 ), 00086 00087 # Adaptive Vertex Fitter parameters identical to the default ones except sigmacut. 00088 # The default value is sigmacut = 3 too tight for displaced vertices 00089 # see CMS NOTE-2008/033 for more details 00090 avfParameters = cms.PSet( 00091 sigmacut = cms.double(6.), 00092 Tini = cms.double(256.), 00093 ratio = cms.double(0.25) 00094 ) 00095 00096 00097 ) 00098 00099