Class Helix

java.lang.Object
org.jlab.clas.tracking.trackrep.Helix

public class Helix extends Object
Author:
ziegler
  • Field Details

  • Constructor Details

    • Helix

      public Helix()
    • Helix

      public Helix(double d0, double phi0, double omega, double z0, double tanL, int turningSign, double B, double xb, double yb, Units unit)
    • Helix

      public Helix(double x0, double y0, double z0, double px0, double py0, double pz0, int q, double B, double xb, double yb, Units unit)
  • Method Details

    • getUnits

      public Units getUnits()
    • getLightVelocity

      public final double getLightVelocity()
    • reset

      public void reset(double d0, double phi0, double omega, double z0, double tanL, double B)
    • update

      public final void update()
    • getB

      public double getB()
    • getD0

      public double getD0()
    • getPhi0

      public double getPhi0()
    • getCosphi0

      public double getCosphi0()
    • getSinphi0

      public double getSinphi0()
    • getOmega

      public double getOmega()
    • getZ0

      public double getZ0()
    • getTanL

      public double getTanL()
    • getTurningSign

      public int getTurningSign()
    • getR

      public double getR()
    • setR

      public void setR(double _R)
    • getXc

      public double getXc()
    • getYc

      public double getYc()
    • getXb

      public double getXb()
    • getYb

      public double getYb()
    • getPhi

      public double getPhi(double l)
    • getPt

      public double getPt(double B)
    • getX

      public double getX(double l)
    • getY

      public double getY(double l)
    • getZ

      public double getZ(double l)
    • getPx

      public double getPx(double B, double l)
    • getPy

      public double getPy(double B, double l)
    • getPz

      public double getPz(double B)
    • getX

      public double getX()
    • getY

      public double getY()
    • getZ

      public double getZ()
    • getPx

      public double getPx()
    • getPy

      public double getPy()
    • getPz

      public double getPz()
    • getLAtPlane

      public double getLAtPlane(double X1, double Y1, double X2, double Y2, double tolerance)
    • getHelixPointAtPlane

      public org.jlab.geom.prim.Point3D getHelixPointAtPlane(double X1, double Y1, double X2, double Y2, double tolerance)
    • getMomentumAtPlane

      public org.jlab.geom.prim.Vector3D getMomentumAtPlane(double X1, double Y1, double X2, double Y2, double tolerance)
    • getLAtR

      public double getLAtR(double r)
    • getHelixPointAtR

      public org.jlab.geom.prim.Point3D getHelixPointAtR(double r)
    • getMomentumAtR

      public org.jlab.geom.prim.Vector3D getMomentumAtR(double r)
    • getLAtZ

      public double getLAtZ(double z)
    • getHelixPointAtZ

      public org.jlab.geom.prim.Point3D getHelixPointAtZ(double z)
    • getMomentumAtZ

      public org.jlab.geom.prim.Vector3D getMomentumAtZ(double z)
    • getPathLength

      public double getPathLength(double rMin, double rMax)
      Computes the path length between to points at radius rMin and rMax of the helix.
      Parameters:
      rMin - the radius of the point from which to measure.
      rMax - the radius of the point to which to measure. helix parametrization is X(l) = xc - s*R*sin(phi0+omega*l) Y(l) = yc + s*R*cos(phi0+omega*l) Z(l) = z0 - l*tanL d^2 = (dX/dl)^2 + (dY/dl)^2 + (dZ/dl)^2 pathlength = integral of d(l) from l(rMin) to l(rMax) pathlength = sqrt(R^2omega^2+tanL^2)*(l(rMax)-l(rMin))
    • toString

      public String toString()
      Overrides:
      toString in class Object