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

Simple helix. More...

Inheritance diagram for gblsit3.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 gblsit3.py.

Constructor & Destructor Documentation

◆ __init__()

def gblsit3.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 gblsit3.py.

Member Function Documentation

◆ getArcLengthXY()

def gblsit3.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 gblsit3.py.

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

Referenced by gblsit3.gblSimpleHelix.getPrediction().

◆ getPrediction()

def gblsit3.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 gblsit3.py.

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

◆ moveTo()

def gblsit3.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 gblsit3.py.

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

Member Data Documentation

◆ __dca

gblsit3.gblSimpleHelix.__dca
private

distance of closest approach in (XY)

Definition at line 452 of file gblsit3.py.

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

◆ __dir0

gblsit3.gblSimpleHelix.__dir0
private

direction vector at point of closest approach (in XY)

Definition at line 450 of file gblsit3.py.

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

◆ __dzds

gblsit3.gblSimpleHelix.__dzds
private

dZ/ds

Definition at line 454 of file gblsit3.py.

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

◆ __phi0

gblsit3.gblSimpleHelix.__phi0
private

flight direction at point of closest approach (in XY)

Definition at line 448 of file gblsit3.py.

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

◆ __rinv

gblsit3.gblSimpleHelix.__rinv
private

◆ __xRelCenter

gblsit3.gblSimpleHelix.__xRelCenter
private

XY circle parameter: X position of center / R.

Definition at line 458 of file gblsit3.py.

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

◆ __yRelCenter

gblsit3.gblSimpleHelix.__yRelCenter
private

XY circle parameter: Y position of center / R.

Definition at line 460 of file gblsit3.py.

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

◆ __z0

gblsit3.gblSimpleHelix.__z0
private

Z position at distance of closest approach.

Definition at line 456 of file gblsit3.py.

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


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