FCCAnalyses
Loading...
Searching...
No Matches
VertexingUtils.h File Reference
#include <cmath>
#include <vector>
#include "ROOT/RVec.hxx"
#include "edm4hep/ReconstructedParticleData.h"
#include "edm4hep/MCParticleData.h"
#include "edm4hep/TrackState.h"
#include "edm4hep/VertexData.h"
#include "edm4hep/Vertex.h"
#include "TLorentzVector.h"
#include "TVectorD.h"
#include "TVector3.h"
#include "TMatrixDSym.h"
#include "fastjet/JetDefinition.hh"
Include dependency graph for VertexingUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  FCCAnalyses::VertexingUtils::FCCAnalysesVertex
 Structure to keep useful track information that is related to the vertex. More...
 
struct  FCCAnalyses::VertexingUtils::FCCAnalysesV0
 Structure to keep useful information that is related to the V0. More...
 
struct  FCCAnalyses::VertexingUtils::FCCAnalysesVertexMC
 Structure to keep useful track information that is related to the vertex. More...
 
struct  FCCAnalyses::VertexingUtils::selTracks
 Selection of particles based on the d0 / z0 significances of the associated track. More...
 

Namespaces

namespace  FCCAnalyses
 FCC analyzers collection.
 
namespace  FCCAnalyses::VertexingUtils
 Vertexing utilities.
 

Functions

TVectorD FCCAnalyses::VertexingUtils::XPtoPar (TVector3 x, TVector3 p, Double_t Q)
 from delphes: returns track state parameters (delphes convention) for a given vertex (x), momentum (p) and charge
 
TVector3 FCCAnalyses::VertexingUtils::ParToP (TVectorD Par)
 from delphes: returns the momentum corresponding to a given track state
 
ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > FCCAnalyses::VertexingUtils::SelPrimaryTracks (ROOT::VecOps::RVec< int > recind, ROOT::VecOps::RVec< int > mcind, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > reco, ROOT::VecOps::RVec< edm4hep::MCParticleData > mc, TVector3 MC_EventPrimaryVertex)
 Selection of primary particles :
 
int FCCAnalyses::VertexingUtils::get_Nvertex (ROOT::VecOps::RVec< FCCAnalysesVertex > TheVertexColl)
 Retrieve the number of reconstructed vertices from the collection of vertex object.
 
FCCAnalysesVertex FCCAnalyses::VertexingUtils::get_FCCAnalysesVertex (ROOT::VecOps::RVec< FCCAnalysesVertex > TheVertexColl, int index)
 Retrieve a single FCCAnalyses vertex from the collection of vertex object.
 
edm4hep::VertexData FCCAnalyses::VertexingUtils::get_VertexData (FCCAnalysesVertex TheVertex)
 Retrieve the edm4hep::VertexData from the vertex object.
 
ROOT::VecOps::RVec< edm4hep::VertexData > FCCAnalyses::VertexingUtils::get_VertexData (ROOT::VecOps::RVec< FCCAnalysesVertex > TheVertexColl)
 Retrieve a vector of edm4hep::VertexData from the collection of vertex object.
 
edm4hep::VertexData FCCAnalyses::VertexingUtils::get_VertexData (ROOT::VecOps::RVec< FCCAnalysesVertex > TheVertexColl, int index)
 Retrieve a edm4hep::VertexData from the collection of vertex object at a given index.
 
int FCCAnalyses::VertexingUtils::get_VertexNtrk (FCCAnalysesVertex TheVertex)
 Retrieve the number of tracks from FCCAnalysesVertex.
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_VertexNtrk (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_VertexRecoInd (FCCAnalysesVertex TheVertex)
 Retrieve the tracks indices from FCCAnalysesVertex.
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_VertexRecoParticlesInd (FCCAnalysesVertex TheVertex, const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &reco)
 Retrieve the indices of the tracks fitted to that vertex, but now in the collection of RecoParticles.
 
int FCCAnalyses::VertexingUtils::get_nTracks (ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
 Return the number of tracks in a given track collection.
 
bool FCCAnalyses::VertexingUtils::compare_Tracks (const edm4hep::TrackState &tr1, const edm4hep::TrackState &tr2)
 compare two track states
 
ROOT::VecOps::RVec< FCCAnalysesVertexFCCAnalyses::VertexingUtils::get_all_vertices (FCCAnalysesVertex PV, ROOT::VecOps::RVec< FCCAnalysesVertex > SV)
 functions used for SV reconstruction
 
ROOT::VecOps::RVec< FCCAnalysesVertexFCCAnalyses::VertexingUtils::get_all_vertices (FCCAnalysesVertex PV, ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > SV)
 
double FCCAnalyses::VertexingUtils::get_invM_pairs (FCCAnalysesVertex vertex, double m1=0.13957039, double m2=0.13957039)
 returns the invariant mass of a two-track vertex CAUTION: m1 -> mass of first track, m2 -> mass of second track by default both pions
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_invM_pairs (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, double m1=0.13957039, double m2=0.13957039)
 
double FCCAnalyses::VertexingUtils::get_invM (FCCAnalysesVertex vertex)
 returns the invariant mass of a vertex assuming all tracks to be pions
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_invM (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 returns the invariant mass of a vector of vertices assuming all tracks to be pions
 
double FCCAnalyses::VertexingUtils::get_PV2V0angle (FCCAnalysesVertex V0, FCCAnalysesVertex PV)
 returns the cos of the angle b/n V0 candidate's (or any vtx's) momentum & PV to V0 (vtx) displacement vector
 
double FCCAnalyses::VertexingUtils::get_PV2vtx_angle (ROOT::VecOps::RVec< edm4hep::TrackState > tracks, FCCAnalysesVertex vtx, FCCAnalysesVertex PV)
 returns cos of the angle b/n track (that form the vtx) momentum sum & PV to vtx displacement vector
 
double FCCAnalyses::VertexingUtils::get_trackE (edm4hep::TrackState track)
 returns a track's energy assuming the track to be a pion
 
int FCCAnalyses::VertexingUtils::get_n_SV (FCCAnalysesV0 SV)
 V0 Reconstruction Return the number of reconstructed V0s.
 
ROOT::VecOps::RVec< TVector3 > FCCAnalyses::VertexingUtils::get_position_SV (FCCAnalysesV0 SV)
 Return the vertex position of all reconstructed V0s (in mm)
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_pdg_V0 (FCCAnalysesV0 V0)
 Return the PDG IDs of all reconstructed V0s.
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_invM_V0 (FCCAnalysesV0 V0)
 Return the invariant masses of all reconstructed V0s.
 
ROOT::VecOps::RVec< TVector3 > FCCAnalyses::VertexingUtils::get_p_SV (FCCAnalysesV0 SV)
 Return the momentum of all reconstructed V0s.
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_chi2_SV (FCCAnalysesV0 SV)
 Return chi2 of all reconstructed V0s.
 
int FCCAnalyses::VertexingUtils::get_n_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Passing a vector of FCCAnalysesVertex instead of FCCAnalysesV0 Return the number of reconstructed SVs.
 
ROOT::VecOps::RVec< TVector3 > FCCAnalyses::VertexingUtils::get_p_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return the momentum of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< TVector3 > FCCAnalyses::VertexingUtils::get_position_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return the vertex position of all reconstructed SVs (in mm)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_pMag_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return the momentum magnitude of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_chi2_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return chi2 of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_norm_chi2_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return normalised chi2 of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_nDOF_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return no of DOF of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_theta_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return polar angle (theta) of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_phi_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices)
 Return azimuthal angle (phi) of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_relTheta_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, ROOT::VecOps::RVec< int > nSV_jet, ROOT::VecOps::RVec< fastjet::PseudoJet > jets)
 Return polar angle (theta) of all reconstructed vertices wrt jets (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_relPhi_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, ROOT::VecOps::RVec< int > nSV_jet, ROOT::VecOps::RVec< fastjet::PseudoJet > jets)
 Return azimuthal angle (phi) of all reconstructed vertices wrt jets (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_pointingangle_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, FCCAnalysesVertex PV)
 Return the pointing angle of all reconstructed vertices (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_dxy_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, FCCAnalysesVertex PV)
 Return the distances of all reconstructed vertices from PV in xy plane [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_d3d_SV (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, FCCAnalysesVertex PV)
 Return the distances of all reconstructed vertices from PV in 3D [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_d3d_SV_obj (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, TVector3 location)
 Return the distances of all reconstructed verteces from given TVector3d object in 3D [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_d3d_SV_obj (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, edm4hep::Vector3d location)
 Return the distances of all reconstructed verteces from given edm4hep::Vector3d object in 3D [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_dR_SV_obj (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, TVector3 location)
 Return the distance in R of all reconstructed verteces from given TVector3d object in 3D [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< double > FCCAnalyses::VertexingUtils::get_dR_SV_obj (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, edm4hep::Vector3d location)
 Return the distances in R of all reconstructed verteces from given edm4hep::Vector3d object in 3D [mm] (or V0.vtx)
 
ROOT::VecOps::RVec< FCCAnalysesVertexFCCAnalyses::VertexingUtils::get_all_SVs (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 For get_SV_jets ///.
 
int FCCAnalyses::VertexingUtils::get_n_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 Return the total number of reconstructed SVs.
 
ROOT::VecOps::RVec< int > FCCAnalyses::VertexingUtils::get_n_SV_jets (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 Return the number of reconstructed SVs per jet.
 
std::vector< std::vector< edm4hep::TrackState > > FCCAnalyses::VertexingUtils::get_tracksInJets (ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > recoparticles, ROOT::VecOps::RVec< edm4hep::TrackState > thetracks, ROOT::VecOps::RVec< fastjet::PseudoJet > jets, std::vector< std::vector< int > > jet_consti)
 Return the tracks separated by jets.
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > FCCAnalyses::VertexingUtils::get_svInJets (ROOT::VecOps::RVec< FCCAnalysesVertex > vertices, ROOT::VecOps::RVec< int > nSV_jet)
 Return V0s separated by jets.
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_invM (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< TVector3 > > FCCAnalyses::VertexingUtils::get_p_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_pMag_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< int > > FCCAnalyses::VertexingUtils::get_VertexNtrk (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_chi2_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_norm_chi2_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< int > > FCCAnalyses::VertexingUtils::get_nDOF_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_theta_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_phi_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_relTheta_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices, ROOT::VecOps::RVec< fastjet::PseudoJet > jets)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_relPhi_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices, ROOT::VecOps::RVec< fastjet::PseudoJet > jets)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_pointingangle_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices, FCCAnalysesVertex PV)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_dxy_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices, FCCAnalysesVertex PV)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_d3d_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices, FCCAnalysesVertex PV)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< int > > FCCAnalyses::VertexingUtils::get_pdg_V0 (ROOT::VecOps::RVec< int > pdg, ROOT::VecOps::RVec< int > nSV_jet)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< double > > FCCAnalyses::VertexingUtils::get_invM_V0 (ROOT::VecOps::RVec< double > invM, ROOT::VecOps::RVec< int > nSV_jet)
 
ROOT::VecOps::RVec< ROOT::VecOps::RVec< TVector3 > > FCCAnalyses::VertexingUtils::get_position_SV (ROOT::VecOps::RVec< ROOT::VecOps::RVec< FCCAnalysesVertex > > vertices)
 Return the vertex position of all reconstructed SVs (in mm)
 
float FCCAnalyses::VertexingUtils::get_trackMom (edm4hep::TrackState &atrack)
 
TVectorD FCCAnalyses::VertexingUtils::Edm4hep2Delphes_TrackParam (const TVectorD &param, bool Units_mm)
 convert track parameters, from edm4hep to delphes conventions
 
TVectorD FCCAnalyses::VertexingUtils::Delphes2Edm4hep_TrackParam (const TVectorD &param, bool Units_mm)
 convert track parameters, from delphes to edm4hep conventions
 
TMatrixDSym FCCAnalyses::VertexingUtils::Edm4hep2Delphes_TrackCovMatrix (const std::array< float, 21 > &covMatrix, bool Units_mm)
 convert track covariance matrix, from edm4hep to delphes conventions
 
std::array< float, 21 > FCCAnalyses::VertexingUtils::Delphes2Edm4hep_TrackCovMatrix (const TMatrixDSym &cov, bool Units_mm)
 convert track covariance matrix, from delphes to edm4hep conventions
 
TVectorD FCCAnalyses::VertexingUtils::get_trackParam (edm4hep::TrackState &atrack, bool Units_mm=false)
 — Internal methods needed by the code of Franco B:
 
TMatrixDSym FCCAnalyses::VertexingUtils::get_trackCov (const edm4hep::TrackState &atrack, bool Units_mm=false)
 
TVectorD FCCAnalyses::VertexingUtils::ParToACTS (TVectorD Par)
 
TMatrixDSym FCCAnalyses::VertexingUtils::CovToACTS (TMatrixDSym Cov, TVectorD Par)