Rivet  1.8.0
Public Member Functions | Protected Member Functions | List of all members
Rivet::SVertex Class Reference

Determine secondary vertices. More...

#include <SVertex.hh>

Inheritance diagram for Rivet::SVertex:
Rivet::Projection Rivet::ProjectionApplier

Public Member Functions

const vector< FourMomentum > & getTaggedJets () const
 Return vector of tagged jets (FourMomentum's)
Standard constructors and destructors.
 SVertex (const ChargedFinalState &chfs, const vector< FourMomentum > &jetaxes, double deltaR, double detEta, double IPres, double DLS, double DLSres=0.0)
virtual const Projectionclone () const
 Clone on the heap.
- Public Member Functions inherited from Rivet::Projection
bool before (const Projection &p) const
virtual const std::set< PdgIdPairbeamPairs () const
virtual std::string name () const
 Get the name of the projection.
ProjectionaddPdgIdPair (PdgId beam1, PdgId beam2)
 Add a colliding beam pair.
LoggetLog () const
 Get a Log object based on the getName() property of the calling projection object.
void setName (const std::string &name)
 Used by derived classes to set their name.
 Projection ()
 The default constructor.
virtual ~Projection ()
 The destructor.
- Public Member Functions inherited from Rivet::ProjectionApplier
 ProjectionApplier ()
 Constructor.
std::set< ConstProjectionPtrgetProjections () const
 Get the contained projections, including recursion.
template<typename PROJ >
const PROJ & getProjection (const std::string &name) const
 Get the named projection, specifying return type via a template argument.
const ProjectiongetProjection (const std::string &name) const
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const PROJ &proj) const
 Apply the supplied projection on event.
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const Projection &proj) const
 Apply the supplied projection on event.
template<typename PROJ >
const PROJ & applyProjection (const Event &evt, const std::string &name) const
 Apply the named projection on event.

Protected Member Functions

void project (const Event &e)
 Apply the projection to the event.
int compare (const Projection &p) const
 Compare projections.
- Protected Member Functions inherited from Rivet::Projection
Cmp< ProjectionmkNamedPCmp (const Projection &otherparent, const std::string &pname) const
Cmp< ProjectionmkPCmp (const Projection &otherparent, const std::string &pname) const
- Protected Member Functions inherited from Rivet::ProjectionApplier
ProjectionHandlergetProjHandler () const
 Get a reference to the ProjectionHandler for this thread.
template<typename PROJ >
const PROJ & addProjection (const PROJ &proj, const std::string &name)

Detailed Description

Determine secondary vertices.

Makes use of PVertex projection.

Todo:
Replace function with a functor to improve equality comparisons.

Complex cuts on tracks and vertices to validate them have to be provided by an external function bool f(SVertex&, ParticleVector&, const HepMC::GenVertex&, FourMomentum); which can be embedded in the analysis code. An example can be found in the S6653332 analysis. A pointer to this function has to be given to the constructor of the SVertex projection. Its arguments are as follows:

in: reference to instance of SVertex projection, ParticleVector of vertex to be analyzed, primary (Gen)Vertex out: FourMomentum = visible Momentum of vertex (selected tracks), return bool: cuts passed? 1 : 0

In this way the SVertex projection can be kept as universal/flexible as possible.

The constructor expects also a list of (pre-selected) jets. Associated tracks and vertices to a jet are checked for displacement. A list of tagged jets can be obtained via the getTaggedJets() function

Constructor & Destructor Documentation

Rivet::SVertex::SVertex ( const ChargedFinalState chfs,
const vector< FourMomentum > &  jetaxes,
double  deltaR,
double  detEta,
double  IPres,
double  DLS,
double  DLSres = 0.0 
)
inline

The default constructor. Must specify a PVertex projection object which is assumed to live through the run.

References Rivet::ProjectionApplier::addProjection(), and Rivet::Projection::setName().

Referenced by clone().

Member Function Documentation

void Rivet::SVertex::project ( const Event e)
protectedvirtual

The documentation for this class was generated from the following files: