CMS 3D CMS Logo

InclusiveVertexFinder.h
Go to the documentation of this file.
1 #ifndef InclusiveVertexFinder_h
2 #define InclusiveVertexFinder_h
3 #include <memory>
4 
11 
15 
22 
27 
33 
37 
38 #include <type_traits>
39 
40 //#define VTXDEBUG 1
41 template <class InputContainer, class VTX>
43 public:
44  typedef std::vector<VTX> Product;
45  typedef typename InputContainer::value_type TRK;
47 
50  pdesc.add<edm::InputTag>("beamSpot", edm::InputTag("offlineBeamSpot"));
51  pdesc.add<edm::InputTag>("primaryVertices", edm::InputTag("offlinePrimaryVertices"));
53  pdesc.add<edm::InputTag>("tracks", edm::InputTag("generalTracks"));
54  pdesc.add<unsigned int>("minHits", 8);
56  pdesc.add<edm::InputTag>("tracks", edm::InputTag("particleFlow"));
57  pdesc.add<unsigned int>("minHits", 0);
58  } else {
59  pdesc.add<edm::InputTag>("tracks", edm::InputTag("generalTracks"));
60  }
61 
62  pdesc.add<double>("maximumLongitudinalImpactParameter", 0.3);
63  pdesc.add<double>("maximumTimeSignificance", 3.0);
64  pdesc.add<double>("minPt", 0.8);
65  pdesc.add<unsigned int>("maxNTracks", 30);
66  //clusterizer pset
68  clusterizer.add<double>("seedMax3DIPSignificance", 9999.0);
69  clusterizer.add<double>("seedMax3DIPValue", 9999.0);
70  clusterizer.add<double>("seedMin3DIPSignificance", 1.2);
71  clusterizer.add<double>("seedMin3DIPValue", 0.005);
72  clusterizer.add<double>("clusterMaxDistance", 0.05);
73  clusterizer.add<double>("clusterMaxSignificance", 4.5);
74  clusterizer.add<double>("distanceRatio", 20.0);
75  clusterizer.add<double>("clusterMinAngleCosine", 0.5);
76  clusterizer.add<double>("maxTimeSignificance", 3.5);
77  pdesc.add<edm::ParameterSetDescription>("clusterizer", clusterizer);
78  // vertex and fitter config
79  pdesc.add<double>("vertexMinAngleCosine", 0.95);
80  pdesc.add<double>("vertexMinDLen2DSig", 2.5);
81  pdesc.add<double>("vertexMinDLenSig", 0.5);
82  pdesc.add<double>("fitterSigmacut", 3.0);
83  pdesc.add<double>("fitterTini", 256.0);
84  pdesc.add<double>("fitterRatio", 0.25);
85  pdesc.add<bool>("useDirectVertexFitter", true);
86  pdesc.add<bool>("useVertexReco", true);
87  // vertexReco pset
89  vertexReco.add<std::string>("finder", std::string("avr"));
90  vertexReco.add<double>("primcut", 1.0);
91  vertexReco.add<double>("seccut", 3.0);
92  vertexReco.add<bool>("smoothing", true);
93  pdesc.add<edm::ParameterSetDescription>("vertexReco", vertexReco);
95  cdesc.add("inclusiveVertexFinderDefault", pdesc);
97  cdesc.add("inclusiveCandidateVertexFinderDefault", pdesc);
98  } else {
99  cdesc.addDefault(pdesc);
100  }
101  }
102 
103  void produce(edm::Event &event, const edm::EventSetup &es) override;
104 
105 private:
106  bool trackFilter(const reco::Track &track) const;
107  std::pair<std::vector<reco::TransientTrack>, GlobalPoint> nearTracks(const reco::TransientTrack &seed,
108  const std::vector<reco::TransientTrack> &tracks,
109  const reco::Vertex &primaryVertex) const;
110 
115  unsigned int minHits;
116  unsigned int maxNTracks;
117  double maxLIP;
118  double maxTimeSig;
119  double minPt;
124  double fitterTini;
125  double fitterRatio;
128  std::unique_ptr<VertexReconstructor> vtxReco;
129  std::unique_ptr<TracksClusteringFromDisplacedSeed> clusterizer;
130 };
131 template <class InputContainer, class VTX>
133  : minHits(params.getParameter<unsigned int>("minHits")),
134  maxNTracks(params.getParameter<unsigned int>("maxNTracks")),
135  maxLIP(params.getParameter<double>("maximumLongitudinalImpactParameter")),
136  maxTimeSig(params.getParameter<double>("maximumTimeSignificance")),
137  minPt(params.getParameter<double>("minPt")), //0.8
138  vertexMinAngleCosine(params.getParameter<double>("vertexMinAngleCosine")), //0.98
139  vertexMinDLen2DSig(params.getParameter<double>("vertexMinDLen2DSig")), //2.5
140  vertexMinDLenSig(params.getParameter<double>("vertexMinDLenSig")), //0.5
141  fitterSigmacut(params.getParameter<double>("fitterSigmacut")),
142  fitterTini(params.getParameter<double>("fitterTini")),
143  fitterRatio(params.getParameter<double>("fitterRatio")),
144  useVertexFitter(params.getParameter<bool>("useDirectVertexFitter")),
145  useVertexReco(params.getParameter<bool>("useVertexReco")),
146  vtxReco(new ConfigurableVertexReconstructor(params.getParameter<edm::ParameterSet>("vertexReco"))),
147  clusterizer(new TracksClusteringFromDisplacedSeed(params.getParameter<edm::ParameterSet>("clusterizer")))
148 
149 {
150  token_beamSpot = consumes<reco::BeamSpot>(params.getParameter<edm::InputTag>("beamSpot"));
151  token_primaryVertex = consumes<reco::VertexCollection>(params.getParameter<edm::InputTag>("primaryVertices"));
152  token_tracks = consumes<InputContainer>(params.getParameter<edm::InputTag>("tracks"));
154  esConsumes<TransientTrackBuilder, TransientTrackRecord>(edm::ESInputTag("", "TransientTrackBuilder"));
155  produces<Product>();
156  //produces<reco::VertexCollection>("multi");
157 }
158 template <class InputContainer, class VTX>
160  if (track.hitPattern().numberOfValidHits() < (int)minHits)
161  return false;
162  if (track.pt() < minPt)
163  return false;
164 
165  return true;
166 }
167 
168 template <class InputContainer, class VTX>
170  using namespace reco;
171 
172  VertexDistance3D vdist;
173  VertexDistanceXY vdist2d;
174  MultiVertexFitter theMultiVertexFitter;
180 
182  event.getByToken(token_beamSpot, beamSpot);
183 
185  event.getByToken(token_primaryVertex, primaryVertices);
186 
188  event.getByToken(token_tracks, tracks);
189 
190  edm::ESHandle<TransientTrackBuilder> trackBuilder = es.getHandle(token_trackBuilder);
191 
192  auto recoVertices = std::make_unique<Product>();
193  if (!primaryVertices->empty()) {
194  const reco::Vertex &pv = (*primaryVertices)[0];
195  GlobalPoint ppv(pv.position().x(), pv.position().y(), pv.position().z());
196 
197  std::vector<TransientTrack> tts;
198  //Fill transient track vector
199  for (typename InputContainer::const_iterator track = tracks->begin(); track != tracks->end(); ++track) {
200  //TransientTrack tt = trackBuilder->build(ref);
201  //TrackRef ref(tracks, track - tracks->begin());
202  TransientTrack tt(tthelpers::buildTT(tracks, trackBuilder, track - tracks->begin()));
203  if (!tt.isValid())
204  continue;
205  if (!trackFilter(tt.track()))
206  continue;
207  if (std::abs(tt.track().dz(pv.position())) > maxLIP)
208  continue;
209  if (edm::isFinite(tt.timeExt()) && pv.covariance(3, 3) > 0.) { // only apply if time available
210  auto tError = std::sqrt(std::pow(tt.dtErrorExt(), 2) + pv.covariance(3, 3));
211  auto dtSig = std::abs(tt.timeExt() - pv.t()) / tError;
212  if (dtSig > maxTimeSig)
213  continue;
214  }
215  tt.setBeamSpot(*beamSpot);
216  tts.push_back(tt);
217  }
218  std::vector<TracksClusteringFromDisplacedSeed::Cluster> clusters = clusterizer->clusters(pv, tts);
219 
220  //Create BS object from PV to feed in the AVR
222  for (unsigned int i = 0; i < 7; i++) {
223  for (unsigned int j = 0; j < 7; j++) {
224  if (i < 3 && j < 3)
225  cov(i, j) = pv.covariance(i, j);
226  else
227  cov(i, j) = 0.0;
228  }
229  }
230  BeamSpot bs(pv.position(), 0.0, 0.0, 0.0, 0.0, cov, BeamSpot::Unknown);
231 
232  int i = 0;
233 #ifdef VTXDEBUG
234 
235  std::cout << "CLUSTERS " << clusters.size() << std::endl;
236 #endif
237 
238  for (std::vector<TracksClusteringFromDisplacedSeed::Cluster>::iterator cluster = clusters.begin();
239  cluster != clusters.end();
240  ++cluster, ++i) {
241  if (cluster->tracks.size() < 2 || cluster->tracks.size() > maxNTracks)
242  continue;
243  std::vector<TransientVertex> vertices;
244  if (useVertexReco) {
245  vertices = vtxReco->vertices(cluster->tracks, bs); // attempt with config given reconstructor
246  }
247  TransientVertex singleFitVertex;
248  if (useVertexFitter) {
249  singleFitVertex = theAdaptiveFitter.vertex(cluster->tracks, cluster->seedPoint); //attempt with direct fitting
250  if (singleFitVertex.isValid())
251  vertices.push_back(singleFitVertex);
252  }
253 
254  // for each transient vertex state determine if a time can be measured and fill covariance
255  if (pv.covariance(3, 3) > 0.) {
256  for (auto &vtx : vertices) {
258  }
259  }
260 
261  for (std::vector<TransientVertex>::const_iterator v = vertices.begin(); v != vertices.end(); ++v) {
262  Measurement1D dlen = vdist.distance(pv, *v);
263  Measurement1D dlen2 = vdist2d.distance(pv, *v);
264 #ifdef VTXDEBUG
265  VTX vv(*v);
266  std::cout << "V chi2/n: " << v->normalisedChiSquared() << " ndof: " << v->degreesOfFreedom();
267  std::cout << " dlen: " << dlen.value() << " error: " << dlen.error() << " signif: " << dlen.significance();
268  std::cout << " dlen2: " << dlen2.value() << " error2: " << dlen2.error()
269  << " signif2: " << dlen2.significance();
270  std::cout << " pos: " << vv.position() << " error: " << vv.xError() << " " << vv.yError() << " " << vv.zError()
271  << std::endl;
272  std::cout << " time: " << vv.time() << " error: " << vv.tError() << std::endl;
273 #endif
275  std::vector<reco::TransientTrack> ts = v->originalTracks();
276  for (std::vector<reco::TransientTrack>::const_iterator i = ts.begin(); i != ts.end(); ++i) {
277  float w = v->trackWeight(*i);
278  if (w > 0.5)
279  dir += i->impactPointState().globalDirection();
280 #ifdef VTXDEBUG
281  std::cout << "\t[" << (*i).track().pt() << ": " << (*i).track().eta() << ", " << (*i).track().phi() << "], "
282  << w << std::endl;
283 #endif
284  }
285  GlobalPoint sv((*v).position().x(), (*v).position().y(), (*v).position().z());
286  float vscal = dir.unit().dot((sv - ppv).unit());
287  if (dlen.significance() > vertexMinDLenSig &&
288  ((vertexMinAngleCosine > 0) ? (vscal > vertexMinAngleCosine) : (vscal < vertexMinAngleCosine)) &&
289  v->normalisedChiSquared() < 10 && dlen2.significance() > vertexMinDLen2DSig) {
290  recoVertices->push_back(*v);
291 
292 #ifdef VTXDEBUG
293  std::cout << "ADDED" << std::endl;
294 #endif
295  }
296  }
297  }
298 #ifdef VTXDEBUG
299 
300  std::cout << "Final put " << recoVertices->size() << std::endl;
301 #endif
302  }
303 
304  event.put(std::move(recoVertices));
305 }
306 #endif
Vector3DBase
Definition: Vector3DBase.h:8
AdaptiveVertexFitter
Definition: AdaptiveVertexFitter.h:29
TemplatedInclusiveVertexFinder::token_primaryVertex
edm::EDGetTokenT< reco::VertexCollection > token_primaryVertex
Definition: InclusiveVertexFinder.h:112
Handle.h
KalmanVertexUpdator< 5 >
HLT_FULL_cff.vertexMinDLen2DSig
vertexMinDLen2DSig
Definition: HLT_FULL_cff.py:51964
Measurement1D
Definition: Measurement1D.h:11
electrons_cff.bool
bool
Definition: electrons_cff.py:366
mps_fire.i
i
Definition: mps_fire.py:428
edm::ESInputTag
Definition: ESInputTag.h:87
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
pwdgSkimBPark_cfi.beamSpot
beamSpot
Definition: pwdgSkimBPark_cfi.py:5
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11724
groupFilesInBlocks.tt
int tt
Definition: groupFilesInBlocks.py:144
TemplatedInclusiveVertexFinder::token_beamSpot
edm::EDGetTokenT< reco::BeamSpot > token_beamSpot
Definition: InclusiveVertexFinder.h:111
KalmanVertexTrackCompatibilityEstimator.h
TemplatedInclusiveVertexFinder::vertexMinAngleCosine
double vertexMinAngleCosine
Definition: InclusiveVertexFinder.h:120
TransientVertex::isValid
bool isValid() const
Definition: TransientVertex.h:195
TTHelpers.h
CalibrationSummaryClient_cfi.params
params
Definition: CalibrationSummaryClient_cfi.py:14
SVTimeHelpers.h
edm::EDGetTokenT< reco::BeamSpot >
edm
HLT enums.
Definition: AlignableModifier.h:19
Measurement1D::value
double value() const
Definition: Measurement1D.h:25
TemplatedInclusiveVertexFinder::fitterTini
double fitterTini
Definition: InclusiveVertexFinder.h:124
VertexDistance3D::distance
Measurement1D distance(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const override
Definition: VertexDistance3D.cc:17
MultiVertexFitter.h
gather_cfg.cout
cout
Definition: gather_cfg.py:144
TemplatedInclusiveVertexFinder::minPt
double minPt
Definition: InclusiveVertexFinder.h:119
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89301
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
TemplatedInclusiveVertexFinder::vtxReco
std::unique_ptr< VertexReconstructor > vtxReco
Definition: InclusiveVertexFinder.h:128
EDProducer.h
MultiVertexFitter
Definition: MultiVertexFitter.h:15
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
TracksClusteringFromDisplacedSeed.h
TransientTrack.h
findQualityFiles.v
v
Definition: findQualityFiles.py:179
TemplatedInclusiveVertexFinder::maxLIP
double maxLIP
Definition: InclusiveVertexFinder.h:117
AdaptiveVertexFitter::vertex
CachingVertex< 5 > vertex(const std::vector< reco::TransientTrack > &) const override
Definition: AdaptiveVertexFitter.cc:158
edm::Handle
Definition: AssociativeIterator.h:50
ESGetToken.h
TemplatedInclusiveVertexFinder::vertexMinDLen2DSig
double vertexMinDLen2DSig
Definition: InclusiveVertexFinder.h:121
AlignmentTracksFromVertexSelector_cfi.vertices
vertices
Definition: AlignmentTracksFromVertexSelector_cfi.py:5
TwoTrackMinimumDistance.h
HLT_FULL_cff.useVertexReco
useVertexReco
Definition: HLT_FULL_cff.py:51970
HLT_FULL_cff.maxNTracks
maxNTracks
Definition: HLT_FULL_cff.py:35545
fileCollector.seed
seed
Definition: fileCollector.py:127
HLT_FULL_cff.vertexMinDLenSig
vertexMinDLenSig
Definition: HLT_FULL_cff.py:51965
BeamMonitor_cff.primaryVertex
primaryVertex
hltOfflineBeamSpot for HLTMON
Definition: BeamMonitor_cff.py:7
TemplatedInclusiveVertexFinder::useVertexFitter
bool useVertexFitter
Definition: InclusiveVertexFinder.h:126
MakerMacros.h
cms::cuda::bs
bs
Definition: HistoContainer.h:76
TemplatedInclusiveVertexFinder
Definition: InclusiveVertexFinder.h:42
Track.h
TrackFwd.h
BeamSpot.h
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
w
const double w
Definition: UKUtility.cc:23
KalmanVertexTrackCompatibilityEstimator
Definition: KalmanVertexTrackCompatibilityEstimator.h:24
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
pfDeepBoostedJetPreprocessParams_cfi.sv
sv
Definition: pfDeepBoostedJetPreprocessParams_cfi.py:352
reco::BeamSpot
Definition: BeamSpot.h:21
reco::Track
Definition: Track.h:27
edm::ESHandle< TransientTrackBuilder >
svhelper::updateVertexTime
void updateVertexTime(TransientVertex &vtx)
Definition: SVTimeHelpers.h:11
VertexDistance3D
Definition: VertexDistance3D.h:13
Point3DBase< float, GlobalTag >
KalmanVertexSmoother
Definition: KalmanVertexSmoother.h:6
Measurement1D::error
double error() const
Definition: Measurement1D.h:27
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
reco::BeamSpot::Unknown
Definition: BeamSpot.h:24
bsc_activity_cfg.clusters
clusters
Definition: bsc_activity_cfg.py:36
Measurement1D::significance
double significance() const
Definition: Measurement1D.h:29
TransientTrackBuilder.h
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
tracks
const uint32_t *__restrict__ const HitContainer *__restrict__ TkSoA *__restrict__ tracks
Definition: CAHitNtupletGeneratorKernelsImpl.h:176
ParameterSet
Definition: Functions.h:16
TemplatedInclusiveVertexFinder::TRK
InputContainer::value_type TRK
Definition: InclusiveVertexFinder.h:45
tthelpers::buildTT
reco::TransientTrack buildTT(edm::Handle< reco::TrackCollection > &tracks, edm::ESHandle< TransientTrackBuilder > &trackbuilder, unsigned int k)
Definition: TTHelpers.h:10
createfilelist.int
int
Definition: createfilelist.py:10
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
GeometricAnnealing
Definition: GeometricAnnealing.h:7
TemplatedInclusiveVertexFinder::minHits
unsigned int minHits
Definition: InclusiveVertexFinder.h:115
ConfigurableVertexReconstructor.h
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:155
edm::stream::EDProducer
Definition: EDProducer.h:36
KalmanVertexUpdator.h
KalmanVertexSmoother.h
TransientVertex
Definition: TransientVertex.h:18
edm::EventSetup
Definition: EventSetup.h:58
TemplatedInclusiveVertexFinder::fitterRatio
double fitterRatio
Definition: InclusiveVertexFinder.h:125
reco::BeamSpot::CovarianceMatrix
math::Error< dimension >::type CovarianceMatrix
Definition: BeamSpot.h:29
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition: JetExtendedAssociation.h:30
beam_dqm_sourceclient-live_cfg.minPt
minPt
Definition: beam_dqm_sourceclient-live_cfg.py:322
VertexDistanceXY
Definition: VertexDistanceXY.h:11
TransientTrackRecord.h
DefaultLinearizationPointFinder
Definition: DefaultLinearizationPointFinder.h:13
TemplatedInclusiveVertexFinder::TemplatedInclusiveVertexFinder
TemplatedInclusiveVertexFinder(const edm::ParameterSet &params)
Definition: InclusiveVertexFinder.h:132
edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord >
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
InputTag.h
TemplatedInclusiveVertexFinder::token_tracks
edm::EDGetTokenT< InputContainer > token_tracks
Definition: InclusiveVertexFinder.h:113
unit
Basic3DVector unit() const
Definition: Basic3DVectorLD.h:162
HLT_FULL_cff.vertexMinAngleCosine
vertexMinAngleCosine
Definition: HLT_FULL_cff.py:51963
HLT_FULL_cff.fitterTini
fitterTini
Definition: HLT_FULL_cff.py:51967
VertexFwd.h
TemplatedInclusiveVertexFinder::token_trackBuilder
edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord > token_trackBuilder
Definition: InclusiveVertexFinder.h:114
eostools.move
def move(src, dest)
Definition: eostools.py:511
IPTools.h
TemplatedInclusiveVertexFinder::maxTimeSig
double maxTimeSig
Definition: InclusiveVertexFinder.h:118
reco::TransientTrack
Definition: TransientTrack.h:19
VertexDistanceXY::distance
Measurement1D distance(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const override
Definition: VertexDistanceXY.cc:19
isFinite.h
extraflags_cff.vtx
vtx
Definition: extraflags_cff.py:19
TemplatedInclusiveVertexFinder::vertexMinDLenSig
double vertexMinDLenSig
Definition: InclusiveVertexFinder.h:122
TemplatedInclusiveVertexFinder::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &cdesc)
Definition: InclusiveVertexFinder.h:48
Vertex.h
relativeConstraints.value
value
Definition: relativeConstraints.py:53
TemplatedInclusiveVertexFinder::useVertexReco
bool useVertexReco
Definition: InclusiveVertexFinder.h:127
TracksClusteringFromDisplacedSeed
Definition: TracksClusteringFromDisplacedSeed.h:25
TemplatedInclusiveVertexFinder::Product
std::vector< VTX > Product
Definition: InclusiveVertexFinder.h:44
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
TemplatedInclusiveVertexFinder::maxNTracks
unsigned int maxNTracks
Definition: InclusiveVertexFinder.h:116
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
edm::isFinite
constexpr bool isFinite(T x)
ParameterSet.h
HLT_FULL_cff.vertexReco
vertexReco
Definition: HLT_FULL_cff.py:51971
MinBiasPDSkim_cfg.trackFilter
trackFilter
Definition: MinBiasPDSkim_cfg.py:243
TemplatedInclusiveVertexFinder::nearTracks
std::pair< std::vector< reco::TransientTrack >, GlobalPoint > nearTracks(const reco::TransientTrack &seed, const std::vector< reco::TransientTrack > &tracks, const reco::Vertex &primaryVertex) const
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
event
Definition: event.py:1
TemplatedInclusiveVertexFinder::clusterizer
std::unique_ptr< TracksClusteringFromDisplacedSeed > clusterizer
Definition: InclusiveVertexFinder.h:129
TemplatedInclusiveVertexFinder::fitterSigmacut
double fitterSigmacut
Definition: InclusiveVertexFinder.h:123
edm::Event
Definition: Event.h:73
TemplatedInclusiveVertexFinder::produce
void produce(edm::Event &event, const edm::EventSetup &es) override
Definition: InclusiveVertexFinder.h:169
AdaptiveVertexFitter.h
edm::ConfigurationDescriptions::addDefault
void addDefault(ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:99
HLT_FULL_cff.primaryVertices
primaryVertices
Definition: HLT_FULL_cff.py:51946
edm::InputTag
Definition: InputTag.h:15
HLT_FULL_cff.fitterRatio
fitterRatio
Definition: HLT_FULL_cff.py:51968
reco::Vertex
Definition: Vertex.h:35
reco_skim_cfg_mod.minHits
minHits
Definition: reco_skim_cfg_mod.py:177
HLT_FULL_cff.clusterizer
clusterizer
Definition: HLT_FULL_cff.py:51953
TemplatedInclusiveVertexFinder::trackFilter
bool trackFilter(const reco::Track &track) const
Definition: InclusiveVertexFinder.h:159
ConfigurableVertexReconstructor
Definition: ConfigurableVertexReconstructor.h:13
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23
HLT_FULL_cff.fitterSigmacut
fitterSigmacut
Definition: HLT_FULL_cff.py:51966