GeneralBrokenLines V03-01-02
gblpy
Public Member Functions | Private Attributes | List of all members
gblsit.gblSimpleHelix Class Reference

Simple helix. More...

Inheritance diagram for gblsit.gblSimpleHelix:

Public Member Functions

def __init__ (self, parameter)
 Constructor. More...
 
def getPrediction (self, refPos, uDir, vDir)
 Get prediction. More...
 
def getArcLengthXY (self, xPos, yPos)
 Get (2D) arc length for given point. More...
 
def moveTo (self, newRefPoint)
 Change reference point. More...
 

Private Attributes

 __rinv
 curvature (in XY) More...
 
 __phi0
 flight direction at point of closest approach (in XY) More...
 
 __dir0
 direction vector at point of closest approach (in XY) More...
 
 __dca
 distance of closest approach in (XY) More...
 
 __dzds
 dZ/ds More...
 
 __z0
 Z position at distance of closest approach. More...
 
 __xRelCenter
 XY circle parameter: X position of center / R. More...
 
 __yRelCenter
 XY circle parameter: Y position of center / R. More...
 

Detailed Description

Simple helix.

Assuming constant magnetic field in (positive) Z-direction

Definition at line 485 of file gblsit.py.

Constructor & Destructor Documentation

◆ __init__()

def gblsit.gblSimpleHelix.__init__ (   self,
  parameter 
)

Constructor.

Parameters
[in]parameterhelix parameter (curv, phi0, dca, dzds, z0); list

For comparison: Generalized circle equation: n_0 + x*n_1 + y*n_2 + (x*x+y*y)*n_3 = 0, n_0 ~= -dca, (n_1, n_2) = -(cos(phi_0), sin(phi_0)), n_3 = 0.5*rinv

Definition at line 495 of file gblsit.py.

Member Function Documentation

◆ getArcLengthXY()

def gblsit.gblSimpleHelix.getArcLengthXY (   self,
  xPos,
  yPos 
)

Get (2D) arc length for given point.

Arc length from dca to point on circle on intersection with line from circle center to given point

Parameters
[in]xPosX Position; float
[in]yPosY Position; float
Returns
arc length from dca to point on circle; float

Definition at line 573 of file gblsit.py.

References gblsit.gblSimpleHelix.__dir0, gblsit.gblSimpleHelix.__phi0, gblsit.gblSimpleHelix.__rinv, gblsit.gblSimpleHelix.__xRelCenter, and gblsit.gblSimpleHelix.__yRelCenter.

Referenced by gblsit.gblSimpleHelix.getPrediction().

◆ getPrediction()

def gblsit.gblSimpleHelix.getPrediction (   self,
  refPos,
  uDir,
  vDir 
)

Get prediction.

Get prediction from intersection of helix with measurement plane.

Parameters
[in]refPosreference position on detector plane; vector
[in]uDirmeasurement direction 'u'; vector
[in]vDirmeasurement direction 'v'; vector
Returns
prediction; class

Definition at line 522 of file gblsit.py.

References gblsit.gblSimpleHelix.__dca, gblsit.gblSimpleHelix.__dir0, gblsit.gblSimpleHelix.__dzds, gblsit.gblSimpleHelix.__phi0, gblsit.gblSimpleHelix.__rinv, gblsit.gblSimpleHelix.__xRelCenter, gblsit.gblSimpleHelix.__yRelCenter, gblsit.gblSimpleHelix.__z0, and gblsit.gblSimpleHelix.getArcLengthXY().

◆ moveTo()

def gblsit.gblSimpleHelix.moveTo (   self,
  newRefPoint 
)

Change reference point.

Parameters
[in]newRefPointnew reference point (in XY); vector
Returns
new helix parameters; list

Based on V. Karimaki, NIM A305 (1991) 187-191, eqn (19)

Definition at line 591 of file gblsit.py.

References gblsit.gblSimpleHelix.__dca, gblsit.gblSimpleHelix.__dir0, gblsit.gblSimpleHelix.__dzds, gblsit.gblSimpleHelix.__phi0, gblsit.gblSimpleHelix.__rinv, and gblsit.gblSimpleHelix.__z0.

Member Data Documentation

◆ __dca

gblsit.gblSimpleHelix.__dca
private

distance of closest approach in (XY)

Definition at line 503 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getPrediction(), and gblsit.gblSimpleHelix.moveTo().

◆ __dir0

gblsit.gblSimpleHelix.__dir0
private

direction vector at point of closest approach (in XY)

Definition at line 501 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getArcLengthXY(), gblsit.gblSimpleHelix.getPrediction(), and gblsit.gblSimpleHelix.moveTo().

◆ __dzds

gblsit.gblSimpleHelix.__dzds
private

dZ/ds

Definition at line 505 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getPrediction(), and gblsit.gblSimpleHelix.moveTo().

◆ __phi0

gblsit.gblSimpleHelix.__phi0
private

flight direction at point of closest approach (in XY)

Definition at line 499 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getArcLengthXY(), gblsit.gblSimpleHelix.getPrediction(), and gblsit.gblSimpleHelix.moveTo().

◆ __rinv

gblsit.gblSimpleHelix.__rinv
private

◆ __xRelCenter

gblsit.gblSimpleHelix.__xRelCenter
private

XY circle parameter: X position of center / R.

Definition at line 509 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getArcLengthXY(), and gblsit.gblSimpleHelix.getPrediction().

◆ __yRelCenter

gblsit.gblSimpleHelix.__yRelCenter
private

XY circle parameter: Y position of center / R.

Definition at line 511 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getArcLengthXY(), and gblsit.gblSimpleHelix.getPrediction().

◆ __z0

gblsit.gblSimpleHelix.__z0
private

Z position at distance of closest approach.

Definition at line 507 of file gblsit.py.

Referenced by gblsit.gblSimpleHelix.getPrediction(), and gblsit.gblSimpleHelix.moveTo().


The documentation for this class was generated from the following file: