11#ifndef TRKIPATFITTERUTILS_FITMEASUREMENT_H
12#define TRKIPATFITTERUTILS_FITMEASUREMENT_H
101 double d0(
void)
const;
113 const std::optional<TrackSurfaceIntersection>& value);
145 void print(MsgStream& log)
const;
147 double qOverP(
void)
const;
148 void qOverP(
double value);
152 void residual(std::vector<double>::iterator pointer);
175 double sigma(
void)
const;
176 double sigma2(
void)
const;
182 double weight(
void)
const;
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
Class to represent misalignments or 'discontinuities' on tracks These have a surface where the z axis...
const AlignmentEffectsOnTrack * m_alignmentEffects
bool isFlipped(void) const
bool hasIntersection(ExtrapolationType type) const
double derivative(int param) const
const Amg::Vector3D & sensorDirection(void) const
bool afterCalo(void) const
bool isOutlier(void) const
double scattererPhi(void) const
const Surface * m_surface
double alignmentOffset(void) const
const TrackSurfaceIntersection & intersection(ExtrapolationType type) const
double m_minEnergyDeposit
void flipDriftDirection(void)
FitMeasurement(int hitIndex, HitOnTrack *hitOnTrack, const MeasurementBase *measurementBase)
double signedDriftDistance(void) const
double m_radiationThickness
HitOnTrack * m_hitOnTrack
FitMeasurement & operator=(const FitMeasurement &)
bool isPositionMeasurement(void) const
bool isVertex(void) const
bool m_materialEffectsOwner
const Amg::VectorX & perigee(void) const
unsigned m_firstParameter
const HitOnTrack * hitOnTrack(void) const
static void printHeading(MsgStream &log)
double radiationThickness(void) const
bool isCluster(void) const
const Amg::MatrixX & perigeeWeight(void) const
double alignmentAngle(void) const
unsigned m_alignmentParameter
double m_scatteringAngleOffSet
double weight(void) const
unsigned firstParameter(void) const
double energyLoss(void) const
double sigma2(void) const
std::array< std::optional< TrackSurfaceIntersection >, ExtrapolationTypes > m_intersection
double residual(void) const
void setNumericalDerivative(void)
bool isScatterer(void) const
bool isPassive(void) const
void print(MsgStream &log) const
bool isMaterialDelimiter(void) const
MeasurementType type(void) const
const MeasurementBase * m_measurementBase
double m_particleMassSquared
Amg::MatrixX m_perigeeWeight
bool m_flippedDriftDistance
double minEnergyDeposit(void) const
const MeasurementBase * measurementBase(void) const
unsigned alignmentParameter(void) const
double weight2(void) const
double m_signedDriftDistance
bool m_numericalDerivative
int derivativeRow(void) const
FitMeasurement(const FitMeasurement &)
const MaterialEffectsBase * materialEffects(void) const
bool numericalDerivative(void) const
bool isAlignment(void) const
unsigned alignmentParameter2(void) const
const MaterialEffectsBase * m_materialEffects
void setMaterialEffectsOwner(void)
unsigned m_alignmentParameter2
bool is2Dimensional(void) const
unsigned lastParameter(void) const
const Amg::Vector3D & minimizationDirection(void) const
bool isTrapezoidCluster(void) const
double residual2(void) const
bool isPerigee(void) const
const Amg::Vector3D & normal(void) const
Amg::Vector3D m_sensorDirection
double derivative2(int param) const
std::vector< double >::iterator m_residual
double qOverP(void) const
bool isEnergyDeposit(void) const
const AlignmentEffectsOnTrack * alignmentEffects(void) const
bool isPseudo(void) const
int numberDoF(void) const
double energyLossSigma(void) const
const Surface * surface(void) const
const Amg::Vector3D & position(void) const
void setSigmaSymmetric(void)
void scatteringAngle(double angle, double totalRadiationThickness)
double scattererTheta(void) const
Amg::Vector3D m_minimizationDirection
base class to integrate material effects on Trk::Track in a flexible way.
This class is the pure abstract base class for all fittable tracking measurements.
Abstract Base Class for tracking surfaces.
represents the track state (measurement, material, fit parameters and quality) at a surface.
An intersection with a Surface is given by.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 3, 1 > Vector3D
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters