CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
MultiVertexBSeeder Class Reference

#include <MultiVertexBSeeder.h>

Inheritance diagram for MultiVertexBSeeder:
VertexReconstructor

Public Member Functions

MultiVertexBSeederclone () const
 
 MultiVertexBSeeder (double nsigma=50.)
 
std::vector< TransientVertexvertices (const std::vector< reco::TransientTrack > &) const
 
std::vector< TransientVertexvertices (const std::vector< reco::TransientTrack > &, const reco::BeamSpot &) const
 
- Public Member Functions inherited from VertexReconstructor
 VertexReconstructor ()
 
virtual std::vector
< TransientVertex
vertices (const std::vector< reco::TransientTrack > &primaries, const std::vector< reco::TransientTrack > &tracks, const reco::BeamSpot &spot) const
 
virtual ~VertexReconstructor ()
 

Private Attributes

double theNSigma
 

Detailed Description

A good seeder for "B-jetty" setups (i.e. high-multiplicity, collimated track "bundles" with at least one secondary vertex )

Definition at line 12 of file MultiVertexBSeeder.h.

Constructor & Destructor Documentation

MultiVertexBSeeder::MultiVertexBSeeder ( double  nsigma = 50.)

Definition at line 206 of file MultiVertexBSeeder.cc.

206  :
207  theNSigma ( nsigma ) {}

Member Function Documentation

MultiVertexBSeeder * MultiVertexBSeeder::clone ( void  ) const
virtual

Implements VertexReconstructor.

Definition at line 201 of file MultiVertexBSeeder.cc.

202 {
203  return new MultiVertexBSeeder ( * this );
204 }
MultiVertexBSeeder(double nsigma=50.)
vector< TransientVertex > MultiVertexBSeeder::vertices ( const std::vector< reco::TransientTrack > &  ) const
virtual

Reconstruct vertices

Implements VertexReconstructor.

Definition at line 216 of file MultiVertexBSeeder.cc.

References i, run_regression::ret, and funct::true.

Referenced by vertices().

218 {
219  vector < Cluster1D < reco::TransientTrack > > ips = computeIPs ( trks );
220  /*
221  FsmwClusterizer1D < reco::TransientTrack > fsmw ( .4, theNSigma );
222  MultiClusterizer1D<reco::TransientTrack> finder ( fsmw );
223  */
225 
226  pair < vector < Cluster1D<reco::TransientTrack> >,
227  vector < const reco::TransientTrack * > > res;
228  res = finder ( ips );
229  #ifdef MVBS_DEBUG
230  // need to compute jet trajectory again :-(
231  GlobalTrajectoryParameters jet = computeJetTrajectory ( trks );
232  map < string, harvest::MultiType > attrs;
233  attrs["point:mag"]=0.75;
234  attrs["point:color"]="blue";
235  attrs["point:name"]="mode";
236  DebuggingHarvester("out.txt").save ( res.first, jet, attrs, "mode" );
237  #endif
238 
239  vector < TransientVertex > ret;
240  for ( vector< Cluster1D < reco::TransientTrack > >::const_iterator i=res.first.begin();
241  i!=res.first.end() ; ++i )
242  {
243  ret.push_back ( pseudoVertexFit ( *i, i!=res.first.begin(),
244  /* kalman fit*/ true ) );
245  }
246  return ret;
247 }
int i
Definition: DBlmapReader.cc:9
vector< TransientVertex > MultiVertexBSeeder::vertices ( const std::vector< reco::TransientTrack > &  t,
const reco::BeamSpot  
) const
virtual

Reconstruct vertices, exploiting the beamspot constraint for the primary vertex

Reimplemented from VertexReconstructor.

Definition at line 209 of file MultiVertexBSeeder.cc.

References vertices().

212 {
213  return vertices ( trks );
214 }
std::vector< TransientVertex > vertices(const std::vector< reco::TransientTrack > &) const

Member Data Documentation

double MultiVertexBSeeder::theNSigma
private

Definition at line 25 of file MultiVertexBSeeder.h.