#include <Helix.h>
Public Member Functions | |
| Helix (const float phi0, const float d0, const float x0, const float omega, const float tanlambda, const float bField) | |
| Constructor using canonical (LEP-wise) parameterisation. More... | |
| Helix (const pandora::CartesianVector &position, const pandora::CartesianVector &momentum, const float charge, const float bField) | |
| Constructor. More... | |
| pandora::StatusCode | GetPointInZY (const float z0, const float y0, const float az, const float ay, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint) const |
| Get helix intersection point with a plane parallel to x axis. The plane is defined by two coordinates in the plane (z0,y0) and a normal vector (az,ay). More... | |
| pandora::StatusCode | GetPointInZY (const float z0, const float y0, const float az, const float ay, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint, float &genericTime) const |
| Get helix intersection point with a plane parallel to x axis. The plane is defined by two coordinates in the plane (z0,y0) and a normal vector (az,ay). More... | |
| pandora::StatusCode | GetPointInX (const float xPlane, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint) const |
| Get helix intersection point with a plane perpendicular to x axis. More... | |
| pandora::StatusCode | GetPointInX (const float xPlane, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint, float &genericTime) const |
| Get helix intersection point with a plane perpendicular to x axis. More... | |
| pandora::StatusCode | GetPointOnCircle (const float radius, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint) const |
| Get coordinates of helix intersection with cylinder, aligned along z-axis. More... | |
| pandora::StatusCode | GetPointOnCircle (const float radius, const pandora::CartesianVector &referencePoint, pandora::CartesianVector &intersectionPoint, float &genericTime) const |
| Get coordinates of helix intersection with cylinder, aligned along z-axis. More... | |
| pandora::StatusCode | GetDistanceToPoint (const pandora::CartesianVector &point, pandora::CartesianVector &distance) const |
| Get distance of the closest approach of helix to an arbitrary point in space. More... | |
| pandora::StatusCode | GetDistanceToPoint (const pandora::CartesianVector &point, pandora::CartesianVector &distance, float &genericTime) const |
| Get distance of the closest approach of helix to an arbitrary point in space. More... | |
| pandora::StatusCode | GetDistanceToHelix (const Helix *const pHelix, pandora::CartesianVector &positionOfClosestApproach, pandora::CartesianVector &v0momentum, float &helixDistance) const |
| Get distance between two helices. More... | |
| pandora::CartesianVector | GetExtrapolatedMomentum (const pandora::CartesianVector &position) const |
| const pandora::CartesianVector & | GetMomentum () const |
| Get momentum of particle at the point of closest approach to IP. More... | |
| const pandora::CartesianVector & | GetReferencePoint () const |
| Get reference point of track. More... | |
| float | GetPhi0 () const |
| Get phi angle of the momentum vector at the point of closest approach to IP. More... | |
| float | GetD0 () const |
| Get x signed distance of closest approach to IP in the R-Phi plane. More... | |
| float | GetX0 () const |
| Get x coordinate of the point of closest approach to IP in the R-Phi plane. More... | |
| float | GetOmega () const |
| Get signed curvature of the track. More... | |
| float | GetTanLambda () const |
| Get tangent of dip angle of the track. More... | |
| float | GetPzy () const |
| Get transverse momentum of the track. More... | |
| float | GetCharge () const |
| Get charge. More... | |
| float | GetZCentre () const |
| Get z coordinate of circumference. More... | |
| float | GetYCentre () const |
| Get y coordinate of circumference. More... | |
| float | GetRadius () const |
| Get radius of circumference. More... | |
Private Attributes | |
| pandora::CartesianVector | m_referencePoint |
| The coordinates of the reference point. More... | |
| pandora::CartesianVector | m_momentum |
| The momentum vector at reference point. More... | |
| float | m_phi0 |
| phi0 in canonical parameterization More... | |
| float | m_d0 |
| d0 in canonical parameterisation More... | |
| float | m_x0 |
| x0 in canonical parameterisation More... | |
| float | m_omega |
| signed curvature in canonical parameterisation More... | |
| float | m_tanLambda |
| tanLambda More... | |
| float | m_pzy |
| The transverse momentum. More... | |
| float | m_charge |
| The particle charge. More... | |
| float | m_zCentre |
| The circle centre z coordinate. More... | |
| float | m_yCentre |
| The circle centre y coordinate. More... | |
| float | m_radius |
| The radius of circle in ZY plane. More... | |
| float | m_phiRefPoint |
| Phi w.r.t. (Z0, Y0) of circle at reference point. More... | |
| float | m_phiAtPCA |
| Phi w.r.t. (Z0, Y0) of circle at point of closest approach. More... | |
| float | m_zAtPCA |
| z coordinate at point of closest approach More... | |
| float | m_yAtPCA |
| y coordinate at point of closest approach More... | |
| float | m_pzAtPCA |
| Momentum z component at point of closest approach. More... | |
| float | m_pyAtPCA |
| Momentum y component at point of closest approach. More... | |
| float | m_phiMomRefPoint |
| Phi of Momentum vector at reference point. More... | |
Static Private Attributes | |
| static const float | FCT = 2.99792458E-4f |
| static const float | TWO_PI = static_cast<float>(2. * std::acos(-1.0)) |
| static const float | HALF_PI = static_cast<float>(0.5 * std::acos(-1.0)) |
| gar_content::Helix::Helix | ( | const float | phi0, |
| const float | d0, | ||
| const float | x0, | ||
| const float | omega, | ||
| const float | tanlambda, | ||
| const float | bField | ||
| ) |
Constructor using canonical (LEP-wise) parameterisation.
| phi0 | phi angle of momentum vector at the point of closest approach to IP in R-Phi plane |
| d0 | signed distance of closest approach in R-Phi plane |
| x0 | x coordinate of the point of closest approach to IP in R-Phi plane |
| omega | signed curvature |
| tanLambda | tangent of dip angle |
| bField | magnetic field (in Tesla) |
Definition at line 16 of file Helix.cc.
| gar_content::Helix::Helix | ( | const pandora::CartesianVector & | position, |
| const pandora::CartesianVector & | momentum, | ||
| const float | charge, | ||
| const float | bField | ||
| ) |
Constructor.
| position | position of the reference point |
| momentum | momentum vector at the reference point |
| charge | particle charge |
| bField | magnetic field (in Tesla) |
Definition at line 49 of file Helix.cc.
|
inline |
|
inline |
| pandora::StatusCode gar_content::Helix::GetDistanceToHelix | ( | const Helix *const | pHelix, |
| pandora::CartesianVector & | positionOfClosestApproach, | ||
| pandora::CartesianVector & | v0momentum, | ||
| float & | helixDistance | ||
| ) | const |
Get distance between two helices.
| pHelix | address of a second helix |
| positionOfClosestApproach | to receive position of the point of closest approach |
| v0momentum | to receive the v0 momentum |
| helixDistance | to receive the distance between the two helices |
Definition at line 341 of file Helix.cc.
|
inline |
Get distance of the closest approach of helix to an arbitrary point in space.
| point | coordinates of the specified point |
| distance | to receive a vector of distances from helix to point in the following projections: x component: distance in R-Phi plane y-component: distance along Z axis z-component: 3D distance magnitude |
Definition at line 289 of file Helix.h.
| pandora::StatusCode gar_content::Helix::GetDistanceToPoint | ( | const pandora::CartesianVector & | point, |
| pandora::CartesianVector & | distance, | ||
| float & | genericTime | ||
| ) | const |
Get distance of the closest approach of helix to an arbitrary point in space.
| point | coordinates of the specified point |
| distance | to receive a vector of distances from helix to point in the following projections: x component: distance in R-Phi plane y-component: distance along Z axis z-component: 3D distance magnitude |
| genericTime | to receive the generic time (helix length, from reference point to intersection, divided by particle momentum) |
Definition at line 290 of file Helix.cc.
| pandora::CartesianVector gar_content::Helix::GetExtrapolatedMomentum | ( | const pandora::CartesianVector & | position | ) | const |
| Get | extrapolated momentum at a specified position |
| position | the specified position |
Definition at line 514 of file Helix.cc.
|
inline |
Get momentum of particle at the point of closest approach to IP.
Definition at line 297 of file Helix.h.
|
inline |
Get signed curvature of the track.
Definition at line 335 of file Helix.h.
|
inline |
|
inline |
Get helix intersection point with a plane perpendicular to x axis.
| xPlane | the x coordinate for the specified plane |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
Definition at line 273 of file Helix.h.
| pandora::StatusCode gar_content::Helix::GetPointInX | ( | const float | xPlane, |
| const pandora::CartesianVector & | referencePoint, | ||
| pandora::CartesianVector & | intersectionPoint, | ||
| float & | genericTime | ||
| ) | const |
Get helix intersection point with a plane perpendicular to x axis.
| xPlane | the x coordinate for the specified plane |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
| genericTime | to receive the generic time (helix length, from reference point to intersection, divided by particle momentum) |
Definition at line 196 of file Helix.cc.
|
inline |
Get helix intersection point with a plane parallel to x axis. The plane is defined by two coordinates in the plane (z0,y0) and a normal vector (az,ay).
| z0 | z coordinate in the specified plane |
| y0 | y coordinate in the specified plane |
| az | z component of vector normal to specified plane |
| ay | y component of vector normal to specified plane |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
Definition at line 264 of file Helix.h.
| pandora::StatusCode gar_content::Helix::GetPointInZY | ( | const float | z0, |
| const float | y0, | ||
| const float | az, | ||
| const float | ay, | ||
| const pandora::CartesianVector & | referencePoint, | ||
| pandora::CartesianVector & | intersectionPoint, | ||
| float & | genericTime | ||
| ) | const |
Get helix intersection point with a plane parallel to x axis. The plane is defined by two coordinates in the plane (z0,y0) and a normal vector (az,ay).
| z0 | z coordinate in the specified plane |
| y0 | y coordinate in the specified plane |
| az | z component of vector normal to specified plane |
| ay | y component of vector normal to specified plane |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
| genericTime | to receive the generic time (helix length, from reference point to intersection, divided by particle momentum) |
Definition at line 124 of file Helix.cc.
|
inline |
Get coordinates of helix intersection with cylinder, aligned along z-axis.
| radius | the radius of the cylinder |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
Definition at line 281 of file Helix.h.
| pandora::StatusCode gar_content::Helix::GetPointOnCircle | ( | const float | radius, |
| const pandora::CartesianVector & | referencePoint, | ||
| pandora::CartesianVector & | intersectionPoint, | ||
| float & | genericTime | ||
| ) | const |
Get coordinates of helix intersection with cylinder, aligned along z-axis.
| radius | the radius of the cylinder |
| referencePoint | the reference point of the helix |
| intersectionPoint | to receive the coordinates of the intersection point |
| genericTime | to receive the generic time (helix length, from reference point to intersection, divided by particle momentum) |
Definition at line 214 of file Helix.cc.
|
inline |
|
inline |
|
inline |
Get reference point of track.
Definition at line 304 of file Helix.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
staticprivate |
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |
1.8.11