10#include <tracking/spacePointCreation/SpacePoint.h>
11#include <framework/geometry/B2Vector3.h>
20 namespace vxdHoughTracking {
78 if (result < 0.0) result += M_PI;
81 return (std::isnan(result) || std::isinf(result)) ? double(0) : result;
89 return outerSpacePoint.
TimeU() - innerSpacePoint.
TimeU();
97 return outerSpacePoint.
TimeV() - innerSpacePoint.
TimeV();
DataType Z() const
access variable Z (= .at(2) without boundary check)
DataType X() const
access variable X (= .at(0) without boundary check)
DataType Y() const
access variable Y (= .at(1) without boundary check)
DataType Perp() const
The transverse component (R in cylindrical coordinate system).
SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters.
double TimeV() const
return the time in ns of the cluster on the V side
double TimeU() const
return the time in ns of the cluster on the U side
Class that allows the calculation of simple variables to check whether a combination of two hits shou...
double getCosXY()
calculate the cosine of the angle between two vectors in x-y
double get3DDistanceSquared()
get the square of the difference of two vectors
double get1DZDistance()
get the difference in z between two vectors
double getDistanceInTimeV(const SpacePoint &outerSpacePoint, const SpacePoint &innerSpacePoint)
get the time difference of two space points for the v-side measurement
void setBFieldZ(const double bfieldZ=1.5)
Set the B-Field value used for pT calculations.
TwoHitVariables(const B2Vector3D &oHit, const B2Vector3D &iHit)
Constructor.
double m_BFieldZ
BField along z to estimate pT.
void setHits(const B2Vector3D &oHit, const B2Vector3D &iHit)
Set hits if not given in constructor of if they need to be changed.
double getDistanceInTimeU(const SpacePoint &outerSpacePoint, const SpacePoint &innerSpacePoint)
get the time difference of two space points for the u-side measurement
B2Vector3D m_oHit
outermost hit position
double get1DZDistanceSquared()
get the squared difference in z between two vectors
B2Vector3D m_iHit
innermost hit position
double get2DXYDistanceSquared()
get the squared distance between two vectors in x-y
double getRZSlope()
get an estimate for the slope in R-z, similar to theta
double atan(double a)
atan for double
double sqrt(double a)
sqrt for double
Abstract base class for different kinds of events.