CMS 3D CMS Logo

vertices_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 from PhysicsTools.NanoAOD.common_cff import Var,P4Vars
3 
4 
5 
6 
7 
8 
9 
10 vertexTable = cms.EDProducer("VertexTableProducer",
11  pvSrc = cms.InputTag("offlineSlimmedPrimaryVertices"),
12  goodPvCut = cms.string("!isFake && ndof > 4 && abs(z) <= 24 && position.Rho <= 2"),
13  svSrc = cms.InputTag("slimmedSecondaryVertices"),
14  svCut = cms.string(""),
15  dlenMin = cms.double(0),
16  dlenSigMin = cms.double(3),
17  pvName = cms.string("PV"),
18  svName = cms.string("SV"),
19  svDoc = cms.string("secondary vertices from IVF algorithm"),
20 )
21 
22 svCandidateTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
23  src = cms.InputTag("vertexTable"),
24  cut = cms.string(""), #DO NOT further cut here, use vertexTable.svCut
25  name = cms.string("SV"),
26  singleton = cms.bool(False), # the number of entries is variable
27  extension = cms.bool(True),
28  variables = cms.PSet(P4Vars,
29  x = Var("position().x()", float, doc = "secondary vertex X position, in cm",precision=10),
30  y = Var("position().y()", float, doc = "secondary vertex Y position, in cm",precision=10),
31  z = Var("position().z()", float, doc = "secondary vertex Z position, in cm",precision=14),
32  ndof = Var("vertexNdof()", float, doc = "number of degrees of freedom",precision=8),
33  chi2 = Var("vertexNormalizedChi2()", float, doc = "reduced chi2, i.e. chi/ndof",precision=8),
34  ntracks = Var("numberOfDaughters()", "uint8", doc = "number of tracks"),
35  ),
36 )
37 svCandidateTable.variables.pt.precision=10
38 svCandidateTable.variables.phi.precision=12
39 
40 
41 #before cross linking
42 vertexTask = cms.Task()
43 #after cross linkining
44 vertexTablesTask = cms.Task( vertexTable, svCandidateTable )
45 
def Var(expr, valtype, doc=None, precision=-1)
Definition: common_cff.py:16