2#ifndef RECONSTRUCTEDPARTICLE2TRACK_ANALYZERS_H
3#define RECONSTRUCTEDPARTICLE2TRACK_ANALYZERS_H
8#include "ROOT/RVec.hxx"
9#include "edm4hep/Quantity.h"
10#include "edm4hep/ReconstructedParticleData.h"
11#include "edm4hep/TrackData.h"
12#include "edm4hep/TrackState.h"
13#if __has_include("edm4hep/TrackerHit3DData.h")
14#include "edm4hep/TrackerHit3DData.h"
16#include "edm4hep/TrackerHitData.h"
23#include <TLorentzVector.h>
30namespace ReconstructedParticle2Track{
33 ROOT::VecOps::RVec<float>
getRP2TRK_mom (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
34 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
37 ROOT::VecOps::RVec<float>
getRP2TRK_charge(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
38 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
41 ROOT::VecOps::RVec<float>
getRP2TRK_Bz(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& rps,
42 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks);
44 float Bz(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& rps,
45 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks);
47 ROOT::VecOps::RVec<float>
XPtoPar_dxy(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& in,
48 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks,
49 const TLorentzVector& V,
52 ROOT::VecOps::RVec<float>
XPtoPar_dz(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& in,
53 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks,
54 const TLorentzVector& V,
57 ROOT::VecOps::RVec<float>
XPtoPar_phi(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& in,
58 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks,
59 const TLorentzVector& V,
62 ROOT::VecOps::RVec<float>
XPtoPar_C(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& in,
63 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks,
66 ROOT::VecOps::RVec<float>
XPtoPar_ct(
const ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData>& in,
67 const ROOT::VecOps::RVec<edm4hep::TrackState>& tracks,
71 ROOT::VecOps::RVec<float>
getRP2TRK_D0 (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
72 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
75 ROOT::VecOps::RVec<float>
getRP2TRK_Z0 (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
76 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
79 ROOT::VecOps::RVec<float>
getRP2TRK_phi (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
80 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
83 ROOT::VecOps::RVec<float>
getRP2TRK_omega (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
84 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
87 ROOT::VecOps::RVec<float>
getRP2TRK_tanLambda (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
88 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
91 ROOT::VecOps::RVec<float>
getRP2TRK_D0_sig (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
92 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
95 ROOT::VecOps::RVec<float>
getRP2TRK_Z0_sig (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
96 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
100 ROOT::VecOps::RVec<float>
getRP2TRK_D0_cov (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
101 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
104 ROOT::VecOps::RVec<float>
getRP2TRK_Z0_cov (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
105 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
108 ROOT::VecOps::RVec<float>
getRP2TRK_phi_cov (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
109 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
112 ROOT::VecOps::RVec<float>
getRP2TRK_omega_cov (ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
113 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
117 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
120 ROOT::VecOps::RVec<float>
getRP2TRK_d0_phi0_cov(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
121 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
124 ROOT::VecOps::RVec<float>
getRP2TRK_d0_omega_cov(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
125 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
128 ROOT::VecOps::RVec<float>
getRP2TRK_d0_z0_cov(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
129 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
133 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
137 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
140 ROOT::VecOps::RVec<float>
getRP2TRK_phi0_z0_cov(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
141 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
145 ROOT::VecOps::RVec<edm4hep::TrackState> tracks) ;
148 ROOT::VecOps::RVec<float>
getRP2TRK_omega_z0_cov(ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
149 ROOT::VecOps::RVec<edm4hep::TrackState> tracks) ;
153 ROOT::VecOps::RVec<edm4hep::TrackState> tracks) ;
157 ROOT::VecOps::RVec<edm4hep::TrackState> tracks);
161 ROOT::VecOps::RVec<edm4hep::TrackState>
getRP2TRK( ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
162 ROOT::VecOps::RVec<edm4hep::TrackState> tracks ) ;
165 ROOT::VecOps::RVec<int>
get_recoindTRK( ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in,
166 ROOT::VecOps::RVec<edm4hep::TrackState> tracks ) ;
169 int getTK_n(ROOT::VecOps::RVec<edm4hep::TrackState> x) ;
172 ROOT::VecOps::RVec<bool>
hasTRK( ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> in ) ;
ROOT::VecOps::RVec< float > getRP2TRK_tanLambda_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the variance (not the sigma) of the tanLambda of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:379
ROOT::VecOps::RVec< float > XPtoPar_ct(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks, const float &Bz)
Definition ReconstructedParticle2Track.cc:219
float Bz(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &rps, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks)
Definition ReconstructedParticle2Track.cc:49
ROOT::VecOps::RVec< float > getRP2TRK_omega(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the omega of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:343
ROOT::VecOps::RVec< float > getRP2TRK_tanLambda(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the tanLambda of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:367
ROOT::VecOps::RVec< float > getRP2TRK_mom(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the momentum of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:9
ROOT::VecOps::RVec< float > getRP2TRK_omega_tanlambda_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (omega,tanlambda) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:487
ROOT::VecOps::RVec< float > XPtoPar_dz(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks, const TLorentzVector &V, const float &Bz)
Definition ReconstructedParticle2Track.cc:108
ROOT::VecOps::RVec< float > getRP2TRK_d0_z0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (d0,z0) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:415
ROOT::VecOps::RVec< float > getRP2TRK_phi0_z0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (phi0,z0) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:451
ROOT::VecOps::RVec< float > getRP2TRK_Z0(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the Z0 of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:282
ROOT::VecOps::RVec< float > getRP2TRK_d0_tanlambda_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (d0,tanlambda) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:427
ROOT::VecOps::RVec< float > getRP2TRK_phi0_omega_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (phi0,omega) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:439
ROOT::VecOps::RVec< float > getRP2TRK_d0_omega_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (d0, omega) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:403
ROOT::VecOps::RVec< int > get_recoindTRK(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the reco indices of particles that have tracks.
Definition ReconstructedParticle2Track.cc:528
ROOT::VecOps::RVec< float > XPtoPar_dxy(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks, const TLorentzVector &V, const float &Bz)
Definition ReconstructedParticle2Track.cc:64
ROOT::VecOps::RVec< float > getRP2TRK_D0(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the D0 of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:246
ROOT::VecOps::RVec< float > getRP2TRK_phi_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the variance (not the sigma) of the the Phi of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:330
ROOT::VecOps::RVec< float > getRP2TRK_D0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the variance (not the sigma) of the the D0 of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:258
int getTK_n(ROOT::VecOps::RVec< edm4hep::TrackState > x)
Return the size of a collection of TrackStates.
Definition ReconstructedParticle2Track.cc:541
ROOT::VecOps::RVec< edm4hep::TrackState > getRP2TRK(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the tracks associated to reco'ed particles.
Definition ReconstructedParticle2Track.cc:511
ROOT::VecOps::RVec< float > getRP2TRK_d0_phi0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (d0, phi0) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:391
ROOT::VecOps::RVec< float > getRP2TRK_Bz(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &rps, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks)
Definition ReconstructedParticle2Track.cc:32
ROOT::VecOps::RVec< float > getRP2TRK_phi(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the Phi of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:318
ROOT::VecOps::RVec< float > getRP2TRK_Z0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the variance (not the sigma) of the the Z0 of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:294
ROOT::VecOps::RVec< float > getRP2TRK_charge(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the charge of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:21
ROOT::VecOps::RVec< float > getRP2TRK_D0_sig(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the D0 significance of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:270
ROOT::VecOps::RVec< float > XPtoPar_phi(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks, const TLorentzVector &V, const float &Bz)
Definition ReconstructedParticle2Track.cc:156
ROOT::VecOps::RVec< float > getRP2TRK_Z0_sig(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the Z0 significance of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:306
ROOT::VecOps::RVec< float > XPtoPar_C(const ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > &in, const ROOT::VecOps::RVec< edm4hep::TrackState > &tracks, const float &Bz)
Definition ReconstructedParticle2Track.cc:194
ROOT::VecOps::RVec< float > getRP2TRK_z0_tanlambda_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (z0,tanlambda) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:499
ROOT::VecOps::RVec< float > getRP2TRK_phi0_tanlambda_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (phi0,tanlambda) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:463
ROOT::VecOps::RVec< bool > hasTRK(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in)
Return if a Reco particle have an associated track.
Definition ReconstructedParticle2Track.cc:548
ROOT::VecOps::RVec< float > getRP2TRK_omega_z0_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the off-diag term (omega,z0) of the covariance matrix.
Definition ReconstructedParticle2Track.cc:475
ROOT::VecOps::RVec< float > getRP2TRK_omega_cov(ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > in, ROOT::VecOps::RVec< edm4hep::TrackState > tracks)
Return the variance (not the sigma) of the omega of a track to a reconstructed particle.
Definition ReconstructedParticle2Track.cc:355
FCC analyzers collection.
Definition Algorithms.h:15
Definition JetConstituentsUtils.h:12
edm4hep::TrackerHitData TrackerHit3DData
Definition JetConstituentsUtils.h:13