16 inline float f_atan2f(
float y,
float x) {
return unsafe_atan2f<7>(
y,
x); }
18 inline float f_phi(
V v) {
19 return f_atan2f(
v.y(),
v.x());
72 bool pos = icharge > 0;
80 for (
int i = 0;
i != 2; ++
i)
93 return r1.intersection(
r2);
106 return r1.intersection(
r2);
116 for (
int i = 0;
i < 4; ++
i)
124 for (
int i = 0;
i < 2; ++
i) {
125 auto x = xr[0] * u[
i] + yr[0] *
v[
i];
126 auto y = xr[1] * u[
i] + yr[1] *
v[
i];
127 phi1[
i] = f_atan2f(
y,
x);
128 phi2[
i] = phi1[
i] + (
v[
i + 2] -
v[
i]);
131 return getRange(phi1[1], phi2[1],
emptyM).sum(getRange(phi1[0], phi2[0],
emptyP));
ThirdHitPredictionFromInvParabola()
Scalar ipFromCurvature(Scalar curvature, bool pos) const
BasicVector rotateBack(const BasicVector &v) const
PixelRecoRange< float > Range
TkRotation2D< Scalar > Rotation
void swap(Association< C > &lhs, Association< C > &rhs)
void init(const GlobalPoint &P1, const GlobalPoint &P2, Scalar ip, Scalar curv)
Range rangeRPhi(Scalar radius, int charge) const
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t V
Abs< T >::type abs(const T &t)
PixelRecoRange< Scalar > RangeD
Point2D transform(Point2D const &p) const
PixelRecoRange< T > intersection(const PixelRecoRange< T > &r) const
Square< F >::type sqr(const F &f)
void findPointAtCurve(Scalar radius, Scalar ip, Scalar &u, Scalar &v) const