Belle II Software development
|
Extension of the generalized circle also caching the perigee coordinates. More...
#include <Helix.h>
Public Member Functions | |
Helix () | |
Default constructor for ROOT compatibility. | |
Helix (const PerigeeCircle &circleXY, const SZLine &szLine) | |
Constructor combining a two dimensional circle with the linear augment in the sz space. | |
Helix (const HelixParameters ¶meters) | |
Constructor taking all stored parameters for internal use. | |
Helix (double curvature, double phi0, double impact, double tanLambda, double z0) | |
Constructor from all helix parameter. | |
Helix (double curvature, const Vector2D &phi0Vec, double impact, double tanLambda, double z0) | |
Constructor from all helix parameter, phi given as a unit vector. | |
void | invalidate () |
Sets all circle parameters to zero. | |
bool | isInvalid () const |
Indicates if the stored parameter combination designates a valid helix. | |
void | reverse () |
Flips the travel direction of the helix in place, pivot point is unchanged. | |
Helix | reversed () const |
Returns a copy of the helix with flips the travel direction, pivot point is the same. | |
double | arcLength2DToClosest (const Vector3D &point, bool firstPeriod=true) const |
Calculates the perpendicular travel distance at which the helix has the closest approach to the given point. | |
double | arcLength2DToXY (const Vector2D &point) const |
Calculates the two dimensional arc length that is closest to two dimensional point in the xy projection. | |
double | arcLength2DToCylindricalR (double cylindricalR) const |
Calculates the two dimensional arc length that first reaches a cylindrical radius on the helix Returns NAN if the radius cannot be reached. | |
Vector3D | closest (const Vector3D &point, bool firstPeriod=true) const |
Calculates the point on the helix with the smallest total distance. | |
Vector3D | closestXY (const Vector2D &pointXY) const |
Calculates the point on the helix with the smallest perpendicular (xy) distance. | |
double | distance (const Vector3D &point) const |
Calculates the distance of the point to the point of closest approach on the helix. | |
double | distanceXY (const Vector2D &point) const |
Calculates the distance of the line parallel to the z axes through the given point. | |
double | passiveMoveBy (const Vector3D &by) |
Moves the coordinates system by the given vector. | |
HelixJacobian | passiveMoveByJacobian (const Vector3D &by) const |
Computes the Jacobi matrix for a move of the coordinate system by the given vector. | |
double | shiftPeriod (int nPeriods) |
Adjust the arclength measure to start n periods later. | |
Vector3D | atArcLength2D (double s) const |
Calculates the point, which lies at the give perpendicular travel distance (counted from the perigee) | |
Vector3D | atZ (double z) const |
Calculates the point, which lies at the given z coordinate. | |
Vector2D | xyAtZ (double z) const |
Calculates the point, which lies at the given z coordinate. | |
double | minimalCylindricalR () const |
Gives the minimal cylindrical radius the circle reaches (unsigned) | |
double | maximalCylindricalR () const |
Gives the maximal cylindrical radius the circle reaches. | |
double | curvatureXY () const |
Getter for the signed curvature in the xy projection. | |
double | impactXY () const |
Getter for the signed distance to the z axes at the perigee point. | |
double | omega () const |
Getter for the omega parameter of the common helix parameterisation. | |
double | d0 () const |
Getter for the signed distance to the z axes at the perigee point. | |
Vector2D | perigeeXY () const |
Getter for the perigee point in the xy projection. | |
Vector3D | perigee () const |
Getter for the perigee point of the helix. | |
double | tanLambda () const |
Getter for the proportinality factor from arc length in xy space to z. | |
double | cotTheta () const |
Getter for the proportinality factor from arc length in xy space to z. | |
double | z0 () const |
Getter for z coordinate at the perigee point of the helix. | |
double | zPeriod () const |
Getter for the distance in z at which the two points on the helix coincide in the xy projection. | |
double | arcLength2DPeriod () const |
Getter for the arc length of one trip around the helix. | |
double | perimeterXY () const |
Getter for the perimeter of the circle in the xy projection. | |
double | radiusXY () const |
Getter for the radius of the circle in the xy projection. | |
Vector2D | centerXY () const |
Getter for the central point of the helix. | |
Vector3D | tangential () const |
Getter for the unit three dimensional tangential vector at the perigee point of the helix. | |
const Vector2D & | phi0Vec () const |
Getter for the direction vector in the xy projection at the perigee of the helix. | |
double | phi0 () const |
Getter for the azimuth angle of the direction of flight at the perigee. | |
HelixParameters | helixParameters () const |
Getter for the five helix parameters in the order defined by EHelixParameter.h. | |
const PerigeeCircle & | circleXY () const |
Getter for the projection into xy space. | |
const SZLine & | szLine () const |
Getter for the projection into xy space. | |
Private Attributes | |
PerigeeCircle | m_circleXY |
Memory of the projection of the helix in xy space. | |
SZLine | m_szLine |
Memory of the of the linear relation between perpendicular travel distance and the z position. | |
Extension of the generalized circle also caching the perigee coordinates.
|
inline |
Default constructor for ROOT compatibility.
Definition at line 32 of file Helix.h.
|
inline |
Constructor combining a two dimensional circle with the linear augment in the sz space.
Definition at line 39 of file Helix.h.
|
inlineexplicit |
Constructor taking all stored parameters for internal use.
Definition at line 46 of file Helix.h.
|
inline |
Constructor from all helix parameter.
Definition at line 53 of file Helix.h.
|
inline |
Constructor from all helix parameter, phi given as a unit vector.
Definition at line 60 of file Helix.h.
|
inline |
Getter for the arc length of one trip around the helix.
Definition at line 265 of file Helix.h.
double arcLength2DToClosest | ( | const Vector3D & | point, |
bool | firstPeriod = true |
||
) | const |
Calculates the perpendicular travel distance at which the helix has the closest approach to the given point.
Definition at line 29 of file Helix.cc.
|
inline |
Calculates the two dimensional arc length that first reaches a cylindrical radius on the helix Returns NAN if the radius cannot be reached.
Definition at line 112 of file Helix.h.
|
inline |
Calculates the two dimensional arc length that is closest to two dimensional point in the xy projection.
Always gives a solution in the first half period in the positive or negative direction
|
inline |
|
inline |
Calculates the point, which lies at the given z coordinate.
Definition at line 180 of file Helix.h.
|
inline |
Getter for the central point of the helix.
Definition at line 283 of file Helix.h.
|
inline |
Getter for the projection into xy space.
Calculates the point on the helix with the smallest total distance.
Definition at line 118 of file Helix.h.
Calculates the point on the helix with the smallest perpendicular (xy) distance.
Definition at line 125 of file Helix.h.
|
inline |
|
inline |
Getter for the signed curvature in the xy projection.
|
inline |
Getter for the signed distance to the z axes at the perigee point.
Definition at line 222 of file Helix.h.
|
inline |
Calculates the distance of the point to the point of closest approach on the helix.
Definition at line 132 of file Helix.h.
|
inline |
Calculates the distance of the line parallel to the z axes through the given point.
|
inline |
Getter for the five helix parameters in the order defined by EHelixParameter.h.
Definition at line 307 of file Helix.h.
|
inline |
Getter for the signed distance to the z axes at the perigee point.
Definition at line 210 of file Helix.h.
|
inline |
Sets all circle parameters to zero.
Definition at line 67 of file Helix.h.
|
inline |
Indicates if the stored parameter combination designates a valid helix.
Definition at line 74 of file Helix.h.
|
inline |
Gives the maximal cylindrical radius the circle reaches.
Definition at line 198 of file Helix.h.
|
inline |
Gives the minimal cylindrical radius the circle reaches (unsigned)
Definition at line 192 of file Helix.h.
|
inline |
Getter for the omega parameter of the common helix parameterisation.
Definition at line 216 of file Helix.h.
|
inline |
Moves the coordinates system by the given vector.
Updates perigee point in place.
Definition at line 147 of file Helix.h.
HelixJacobian passiveMoveByJacobian | ( | const Vector3D & | by | ) | const |
Computes the Jacobi matrix for a move of the coordinate system by the given vector.
Definition at line 90 of file Helix.cc.
|
inline |
Getter for the perigee point of the helix.
Definition at line 234 of file Helix.h.
|
inline |
Getter for the perigee point in the xy projection.
|
inline |
Getter for the perimeter of the circle in the xy projection.
Definition at line 271 of file Helix.h.
|
inline |
Getter for the azimuth angle of the direction of flight at the perigee.
Definition at line 301 of file Helix.h.
|
inline |
Getter for the direction vector in the xy projection at the perigee of the helix.
Definition at line 295 of file Helix.h.
|
inline |
Getter for the radius of the circle in the xy projection.
Definition at line 277 of file Helix.h.
|
inline |
Flips the travel direction of the helix in place, pivot point is unchanged.
Definition at line 80 of file Helix.h.
|
inline |
Returns a copy of the helix with flips the travel direction, pivot point is the same.
Definition at line 87 of file Helix.h.
|
inline |
|
inline |
|
inline |
|
inline |
Getter for the proportinality factor from arc length in xy space to z.
|
inline |
|
inline |
Getter for z coordinate at the perigee point of the helix.
|
inline |
Getter for the distance in z at which the two points on the helix coincide in the xy projection.
Definition at line 259 of file Helix.h.
|
private |
|
private |