ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Estimator for impact point calculations. More...
#include <acts/blob/master/Core/include/Acts/Vertexing/ImpactPointEstimator.hpp>
Classes | |
struct | Config |
Public Member Functions | |
ImpactPointEstimator (const Config &cfg) | |
Constructor. | |
Result< double > | calculate3dDistance (const GeometryContext &gctx, const BoundParameters &trkParams, const Vector3D &vtxPos) const |
Calculates 3D distance between a track and a 3D point. | |
Result< std::unique_ptr< const BoundParameters > > | estimate3DImpactParameters (const GeometryContext &gctx, const Acts::MagneticFieldContext &mctx, const BoundParameters &trkParams, const Vector3D &vtxPos) const |
Creates track parameters bound to plane at point of closest approach in 3d to given reference position. The parameters and errors are defined on the plane intersecting the track at point of closest approach, with track orthogonal to the plane and center of the plane defined as the given reference point (vertex). | |
Result< double > | get3dVertexCompatibility (const GeometryContext &gctx, const BoundParameters *trkParams, const Vector3D &vertexPos) const |
Estimates the compatibility of a track to a vertex position based on the 3d distance between the track and the vertex. | |
Result< ImpactParametersAndSigma > | estimateImpactParameters (const BoundParameters &track, const Vertex< input_track_t > &vtx, const GeometryContext &gctx, const MagneticFieldContext &mctx) const |
Estimates the impact parameters and their errors of a given track w.r.t. a vertex by propagating the trajectory state towards the vertex position. | |
Private Types | |
using | BField_t = typename propagator_t::Stepper::BField |
Private Member Functions | |
Result< double > | performNewtonApproximation (const Vector3D &trkPos, const Vector3D &vtxPos, double phi, double theta, double r) const |
Performs a Newton approximation to retrieve a point of closest approach in 3D to a reference position. | |
Result< void > | getDistanceAndMomentum (const GeometryContext &gctx, const BoundParameters &trkParams, const Vector3D &vtxPos, Vector3D &deltaR, Vector3D &momDir) const |
Helper function to calculate relative distance between track and vtxPos and the direction of the momentum. | |
Private Attributes | |
const Config | m_cfg |
Configuration object. | |
Estimator for impact point calculations.
Definition at line 39 of file ImpactPointEstimator.hpp.
View newest version in sPHENIX GitHub at line 39 of file ImpactPointEstimator.hpp
|
private |
Definition at line 40 of file ImpactPointEstimator.hpp.
View newest version in sPHENIX GitHub at line 40 of file ImpactPointEstimator.hpp
|
inline |
Constructor.
cfg | Configuration object |
Definition at line 77 of file ImpactPointEstimator.hpp.
View newest version in sPHENIX GitHub at line 77 of file ImpactPointEstimator.hpp
Acts::Result< double > Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::calculate3dDistance | ( | const GeometryContext & | gctx, |
const BoundParameters & | trkParams, | ||
const Vector3D & | vtxPos | ||
) | const |
Calculates 3D distance between a track and a 3D point.
gctx | The geometry context |
trkParams | Track parameters |
vtxPos | Position to calculate distance to |
Definition at line 19 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 19 of file ImpactPointEstimator.ipp
References deltaR().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Acts::Result< std::unique_ptr< const Acts::BoundParameters > > Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::estimate3DImpactParameters | ( | const GeometryContext & | gctx, |
const Acts::MagneticFieldContext & | mctx, | ||
const BoundParameters & | trkParams, | ||
const Vector3D & | vtxPos | ||
) | const |
Creates track parameters bound to plane at point of closest approach in 3d to given reference position. The parameters and errors are defined on the plane intersecting the track at point of closest approach, with track orthogonal to the plane and center of the plane defined as the given reference point (vertex).
gctx | The geometry context |
mctx | The magnetic field context |
trkParams | Track parameters |
vtxPos | Reference position (vertex) |
Definition at line 39 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 39 of file ImpactPointEstimator.ipp
References Acts::backward, and deltaR().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Acts::Result< Acts::ImpactParametersAndSigma > Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::estimateImpactParameters | ( | const BoundParameters & | track, |
const Vertex< input_track_t > & | vtx, | ||
const GeometryContext & | gctx, | ||
const MagneticFieldContext & | mctx | ||
) | const |
Estimates the impact parameters and their errors of a given track w.r.t. a vertex by propagating the trajectory state towards the vertex position.
track | Track to estimate IP from |
vtx | Vertex the track belongs to |
gctx | The geometry context |
mctx | The magnetic field context |
Definition at line 246 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 246 of file ImpactPointEstimator.ipp
References Acts::backward, Acts::Vertex< input_track_t >::covariance(), Acts::eLOC_D0, Acts::eLOC_Z0, Acts::ePHI, Acts::eTHETA, Acts::eZ, Acts::ImpactParametersAndSigma::IPd0, Acts::ImpactParametersAndSigma::IPz0, Acts::ImpactParametersAndSigma::IPz0SinTheta, phi, Acts::Vertex< input_track_t >::position(), Acts::ImpactParametersAndSigma::PVsigmad0, Acts::ImpactParametersAndSigma::PVsigmaz0, Acts::ImpactParametersAndSigma::PVsigmaz0SinTheta, Acts::ImpactParametersAndSigma::sigmad0, Acts::ImpactParametersAndSigma::sigmaz0, Acts::ImpactParametersAndSigma::sigmaz0SinTheta, theta(), and G4InuclParticleNames::z0.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Acts::Result< double > Acts::ImpactPointEstimator< input_track_t, propagator_t, propagator_options_t >::get3dVertexCompatibility | ( | const GeometryContext & | gctx, |
const BoundParameters * | trkParams, | ||
const Vector3D & | vertexPos | ||
) | const |
Estimates the compatibility of a track to a vertex position based on the 3d distance between the track and the vertex.
gctx | The Geometry context |
track | Track parameters at point of closest approach in 3d as retrieved by estimate3DImpactParameters |
vertexPos | The vertex position |
Definition at line 90 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 90 of file ImpactPointEstimator.ipp
References Acts::SingleTrackParameters< ChargePolicy >::covariance(), Acts::eX, Acts::eY, Acts::SingleTrackParameters< ChargePolicy >::parameters(), Acts::SingleBoundTrackParameters< ChargePolicy >::referenceSurface(), and Acts::Surface::transform().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
private |
Helper function to calculate relative distance between track and vtxPos and the direction of the momentum.
gctx | The geometry context |
trkParams | Track parameters |
vtxPos | The vertex position |
deltaR | Relative position between track and vtxPos, to be determined by method |
momDir | Momentum direction, to be determined by method |
Definition at line 188 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 188 of file ImpactPointEstimator.ipp
References kdfinder::abs(), Acts::Surface::center(), Acts::eLOC_D0, Acts::eLOC_Z0, Acts::ePHI, Acts::eQOP, Acts::eTHETA, Acts::eZ, Acts::SingleTrackParameters< ChargePolicy >::parameters(), phi, r, Acts::SingleBoundTrackParameters< ChargePolicy >::referenceSurface(), theta(), and G4InuclParticleNames::z0.
|
private |
Performs a Newton approximation to retrieve a point of closest approach in 3D to a reference position.
trkPos | Initial position |
vtxPos | Reference position |
phi | Phi along the helix which will be changed by the Newton method |
theta | Track theta |
r | Helix radius |
Definition at line 132 of file ImpactPointEstimator.ipp.
View newest version in sPHENIX GitHub at line 132 of file ImpactPointEstimator.ipp
References kdfinder::abs(), phi, and G4InuclParticleNames::z0.
|
private |
Configuration object.
Definition at line 136 of file ImpactPointEstimator.hpp.
View newest version in sPHENIX GitHub at line 136 of file ImpactPointEstimator.hpp