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

Simple helix. More...

Inheritance diagram for gblpy.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 434 of file gblsit.py.

Constructor & Destructor Documentation

◆ __init__()

def gblpy.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 444 of file gblsit.py.

Member Function Documentation

◆ getArcLengthXY()

def gblpy.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 522 of file gblsit.py.

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

Referenced by gblpy.gblsit.gblSimpleHelix.getPrediction().

◆ getPrediction()

def gblpy.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 471 of file gblsit.py.

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

◆ moveTo()

def gblpy.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 540 of file gblsit.py.

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

Member Data Documentation

◆ __dca

gblpy.gblsit.gblSimpleHelix.__dca
private

distance of closest approach in (XY)

Definition at line 452 of file gblsit.py.

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

◆ __dir0

gblpy.gblsit.gblSimpleHelix.__dir0
private

direction vector at point of closest approach (in XY)

Definition at line 450 of file gblsit.py.

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

◆ __dzds

gblpy.gblsit.gblSimpleHelix.__dzds
private

◆ __phi0

gblpy.gblsit.gblSimpleHelix.__phi0
private

flight direction at point of closest approach (in XY)

Definition at line 448 of file gblsit.py.

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

◆ __rinv

gblpy.gblsit.gblSimpleHelix.__rinv
private

◆ __xRelCenter

gblpy.gblsit.gblSimpleHelix.__xRelCenter
private

XY circle parameter: X position of center / R.

Definition at line 458 of file gblsit.py.

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

◆ __yRelCenter

gblpy.gblsit.gblSimpleHelix.__yRelCenter
private

XY circle parameter: Y position of center / R.

Definition at line 460 of file gblsit.py.

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

◆ __z0

gblpy.gblsit.gblSimpleHelix.__z0
private

Z position at distance of closest approach.

Definition at line 456 of file gblsit.py.

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


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