1#ifndef VERTEXFITTERSIMPLE_ANALYZERS_H
2#define VERTEXFITTERSIMPLE_ANALYZERS_H
7#include "ROOT/RVec.hxx"
8#include "edm4hep/ReconstructedParticleData.h"
9#include "edm4hep/TrackState.h"
13#include "TMatrixDSym.h"
15#include "TDecompChol.h"
22#include "edm4hep/VertexData.h"
23#include "edm4hep/Vertex.h"
25#include "TrackCovariance/VertexFit.h"
26#include "TrackCovariance/VertexMore.h"
43 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> recoparticles,
44 ROOT::VecOps::RVec<edm4hep::TrackState> alltracks,
45 bool BeamSpotConstraint =
false,
double sigmax = 0.,
double sigmay = 0.,
46 double sigmaz = 0.,
double bsc_x = 0.,
double bsc_y = 0.,
double bsc_z = 0.,
47 bool ComputeMomentaAtVertex =
true);
58VertexFitter_Tk(
int Primary, ROOT::VecOps::RVec<edm4hep::TrackState> tracks,
59 bool BeamSpotConstraint =
false,
double sigmax = 0.,
60 double sigmay = 0.,
double sigmaz = 0.,
double bsc_x = 0.,
61 double bsc_y = 0.,
double bsc_z = 0.,
62 bool ComputeMomentaAtVertex =
true);
65VertexFitter_Tk(
int Primary, ROOT::VecOps::RVec<edm4hep::TrackState> tracks,
66 const ROOT::VecOps::RVec<edm4hep::TrackState> &alltracks,
67 bool BeamSpotConstraint =
false,
double sigmax = 0.,
68 double sigmay = 0.,
double sigmaz = 0.,
double bsc_x = 0.,
69 double bsc_y = 0.,
double bsc_z = 0.,
70 bool ComputeMomentaAtVertex =
true);
73 ROOT::VecOps::RVec<edm4hep::TrackState>
get_PrimaryTracks( ROOT::VecOps::RVec<edm4hep::TrackState> tracks,
74 bool BeamSpotConstraint,
75 double bsc_sigmax,
double bsc_sigmay,
double bsc_sigmaz,
76 double bsc_x,
double bsc_y,
double bsc_z ) ;
80 ROOT::VecOps::RVec<edm4hep::TrackState>
get_NonPrimaryTracks( ROOT::VecOps::RVec<edm4hep::TrackState> allTracks,
81 ROOT::VecOps::RVec<edm4hep::TrackState> primaryTracks ) ;
84 ROOT::VecOps::RVec<bool>
IsPrimary_forTracks( ROOT::VecOps::RVec<edm4hep::TrackState> allTracks,
85 ROOT::VecOps::RVec<edm4hep::TrackState> primaryTracks ) ;
Vertex interface using Franco Bedeshi's code.
Definition VertexFitterSimple.h:36
VertexingUtils::FCCAnalysesVertex VertexFitter(int Primary, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > recoparticles, ROOT::VecOps::RVec< edm4hep::TrackState > alltracks, bool BeamSpotConstraint=false, double sigmax=0., double sigmay=0., double sigmaz=0., double bsc_x=0., double bsc_y=0., double bsc_z=0., bool ComputeMomentaAtVertex=true)
Vertex (code from Franco Bedeschi): passing the recoparticles.
Definition VertexFitterSimple.cc:74
VertexingUtils::FCCAnalysesVertex VertexFitter_Tk(int Primary, ROOT::VecOps::RVec< edm4hep::TrackState > tracks, bool BeamSpotConstraint=false, double sigmax=0., double sigmay=0., double sigmaz=0., double bsc_x=0., double bsc_y=0., double bsc_z=0., bool ComputeMomentaAtVertex=true)
Vertex (code from Franco Bedeschi): passing the tracks.
Definition VertexFitterSimple.cc:121
ROOT::VecOps::RVec< edm4hep::TrackState > get_NonPrimaryTracks(ROOT::VecOps::RVec< edm4hep::TrackState > allTracks, ROOT::VecOps::RVec< edm4hep::TrackState > primaryTracks)
Return the tracks that are NOT flagged as coming from the primary vertex.
Definition VertexFitterSimple.cc:413
ROOT::VecOps::RVec< bool > IsPrimary_forTracks(ROOT::VecOps::RVec< edm4hep::TrackState > allTracks, ROOT::VecOps::RVec< edm4hep::TrackState > primaryTracks)
for an input vector of tracks, return a vector of bools that tell if the track was identified as a pr...
Definition VertexFitterSimple.cc:435
ROOT::VecOps::RVec< edm4hep::TrackState > get_PrimaryTracks(ROOT::VecOps::RVec< edm4hep::TrackState > tracks, bool BeamSpotConstraint, double bsc_sigmax, double bsc_sigmay, double bsc_sigmaz, double bsc_x, double bsc_y, double bsc_z)
Return the tracks that are flagged as coming from the primary vertex.
Definition VertexFitterSimple.cc:303
FCC analyzers collection.
Definition Algorithms.h:15
Structure to keep useful track information that is related to the vertex.
Definition VertexingUtils.h:38