|
MarlinUtil
1.12.1
|
Public Member Functions | |
| HelixClass () | |
| Constructor. More... | |
| ~HelixClass () | |
| Destructor. | |
| void | Initialize_VP (float *pos, float *mom, float q, float B) |
| Initialization of helix using More... | |
| void | Initialize_BZ (float xCentre, float yCentre, float radius, float bZ, float phi0, float B, float signPz, float zBegin) |
| Initialization of helix according to the following parameterization x = xCentre + radius*cos(bZ*z + phi0) y = yCentre + radius*sin(bZ*z + phi0) where (x,y,z) - position of point on the helix More... | |
| void | Initialize_Canonical (float phi0, float d0, float z0, float omega, float tanlambda, float B) |
| Canonical (LEP-wise) parameterisation with the following parameters More... | |
| const float * | getMomentum () |
| Returns momentum of particle at the point of closest approach to IP | |
| const float * | getReferencePoint () |
| Returns reference point of track | |
| float | getPhi0 () |
| Returns Phi angle of the momentum vector at the point of closest approach to IP | |
| float | getD0 () |
| Returns signed distance of closest approach to IP in the R-Phi plane | |
| float | getZ0 () |
| Returns z coordinate of the point of closest approach to IP in the R-Phi plane | |
| float | getOmega () |
| Returns signed curvature of the track | |
| float | getTanLambda () |
| Returns tangent of dip angle of the track | |
| float | getPXY () |
| Returns transverse momentum of the track | |
| float | getXC () |
| Returns x coordinate of circumference. | |
| float | getYC () |
| Returns y coordinate of circumference. | |
| float | getRadius () |
| Returns radius of circumference. | |
| float | getPointInXY (float x0, float y0, float ax, float ay, float *ref, float *point) |
| Returns helix intersection point with the plane parallel to z axis. More... | |
| float | getPointInZ (float zLine, float *ref, float *point) |
| Returns helix intersection point with the plane perpendicular to z axis. More... | |
| float | getDistanceToPoint (float *xPoint, float *Distance) |
| Return distance of the closest approach of the helix to arbitrary 3D point in space. More... | |
| float | getDistanceToPoint (const float *xPoint, float distCut) |
| Return distance of the closest approach of the helix to arbitrary 3D point in space. More... | |
| float | getDistanceToPoint (const std::vector< float > &xPoint, float distCut) |
| float | getPointOnCircle (float Radius, float *ref, float *point) |
| This method calculates coordinates of both intersection of the helix with a cylinder. More... | |
| float | getDistanceToHelix (HelixClass *helix, float *pos, float *mom) |
| Returns distance between two helixes Output : pos[3] - position of the point of closest approach mom[3] - momentum of V0 | |
| void | setHelixEdges (float *xStart, float *xEnd) |
| Set Edges of helix. | |
| float * | getStartingPoint () |
| Returns starting point of helix. | |
| float * | getEndPoint () |
| Returns endpoint of helix. | |
| float | getBz () |
| Returns BZ for the second parameterization. | |
| float | getPhiZ () |
| Returns Phi for the second parameterization. | |
| void | getExtrapolatedMomentum (float *pos, float *momentum) |
| Returns extrapolated momentum. | |
| float | getCharge () |
| Returns charge. | |
| HelixClass::HelixClass | ( | ) |
Constructor.
Initializations of constants which are used to calculate various parameters associated with helix.
| float HelixClass::getDistanceToPoint | ( | float * | xPoint, |
| float * | Distance | ||
| ) |
Return distance of the closest approach of the helix to
arbitrary 3D point in space.
xPoint[3] - coordinates of
space point. Distance[3] - vector of distances of helix to
a given point in various projections :
Distance[0] - distance in R-Phi plane
Distance[1] - distance along Z axis
Distance[2] - 3D distance
Referenced by getDistanceToPoint().
| float HelixClass::getDistanceToPoint | ( | const float * | xPoint, |
| float | distCut | ||
| ) |
Return distance of the closest approach of the helix to
arbitrary 3D point in space.
xPoint[3] - coordinates of
space point. distCut - limit on the distance between helix
and the point to reduce calculation time
If R-Phi is found to be greater than distCut, rPhi distance is returned
If the R-Phi distance is not too big, than the exact 3D distance is returned
This function can be used, if the exact distance is not always needed
References getDistanceToPoint().
| float HelixClass::getPointInXY | ( | float | x0, |
| float | y0, | ||
| float | ax, | ||
| float | ay, | ||
| float * | ref, | ||
| float * | point | ||
| ) |
Returns helix intersection point with the plane
parallel to z axis.
Plane is defined by two coordinates
of the point belonging to the plane (x0,y0) and normal
vector (ax,ay). ref[3] is the reference point of the helix.
point[3] - returned vector holding the coordinates of
intersection point
| float HelixClass::getPointInZ | ( | float | zLine, |
| float * | ref, | ||
| float * | point | ||
| ) |
Returns helix intersection point with the plane
perpendicular to z axis.
Plane is defined by z coordinate
of the plane. ref[3] is the reference point of the helix.
point[3] - returned vector holding the coordinates of
intersection point
| float HelixClass::getPointOnCircle | ( | float | Radius, |
| float * | ref, | ||
| float * | point | ||
| ) |
This method calculates coordinates of both intersection
of the helix with a cylinder.
Rotational symmetry with respect to z axis is assumed,
meaning that cylinder axis corresponds to the z axis
of reference frame.
Inputs :
Radius - radius of cylinder.
ref[3] - point of closest approach to the origin of the helix.
Output :
point[6] - coordinates of intersection point.
Method returns also generic time, defined as the
ratio of helix length from reference point to the intersection
point to the particle momentum
Referenced by getDistanceToHelix().
| void HelixClass::Initialize_BZ | ( | float | xCentre, |
| float | yCentre, | ||
| float | radius, | ||
| float | bZ, | ||
| float | phi0, | ||
| float | B, | ||
| float | signPz, | ||
| float | zBegin | ||
| ) |
Initialization of helix according to the following
parameterization
x = xCentre + radius*cos(bZ*z + phi0)
y = yCentre + radius*sin(bZ*z + phi0)
where (x,y,z) - position of point on the helix
| void HelixClass::Initialize_Canonical | ( | float | phi0, |
| float | d0, | ||
| float | z0, | ||
| float | omega, | ||
| float | tanlambda, | ||
| float | B | ||
| ) |
Canonical (LEP-wise) parameterisation with the following parameters
| void HelixClass::Initialize_VP | ( | float * | pos, |
| float * | mom, | ||
| float | q, | ||
| float | B | ||
| ) |
Initialization of helix using
1.8.6