public class WTrack extends Object
Modifier and Type | Field and Description |
---|---|
private double |
_a |
private double |
_bfield |
private boolean |
_debug |
org.lcsim.fit.helicaltrack.HelicalTrackFit |
_htf |
private double[] |
_parameters |
private double |
epsilon_intercept |
private int |
max_iterations_intercept |
Constructor and Description |
---|
WTrack(org.lcsim.fit.helicaltrack.HelicalTrackFit track,
double bfield)
Constructor.
|
WTrack(WTrack trk)
Copy constructor
|
Modifier and Type | Method and Description |
---|---|
double |
a() |
private int |
getCharge() |
Hep3Vector |
getHelixAndPlaneIntercept(Hep3Vector xp,
Hep3Vector eta,
Hep3Vector h)
Find the interception point between the helix and a plane
|
double[] |
getHelixParametersAtPathLength(double s,
Hep3Vector h) |
private Hep3Vector |
getMomentumOnHelix(double s) |
private Hep3Vector |
getMomentumOnHelix(double s,
Hep3Vector h) |
Hep3Vector |
getP0() |
double[] |
getParameters() |
private double |
getPathLengthToPlaneApprox(Hep3Vector xp,
Hep3Vector eta,
Hep3Vector h) |
private Hep3Vector |
getPointOnHelix(double s) |
private Hep3Vector |
getPointOnHelix(double s,
Hep3Vector h)
Get point on helix at path length s in arbitrary oriented, constant magnetic field with unit vector h
|
Hep3Vector |
getX0() |
private boolean |
goingForward() |
String |
paramsToString() |
void |
setTrackParameters(double[] params) |
String |
toString() |
private double[] _parameters
public org.lcsim.fit.helicaltrack.HelicalTrackFit _htf
private double _bfield
private double _a
private boolean _debug
private final int max_iterations_intercept
private final double epsilon_intercept
public WTrack(org.lcsim.fit.helicaltrack.HelicalTrackFit track, double bfield)
track
- @ref{HelicalTrackFit}bfield
- value and sign of magnetic fieldpublic WTrack(WTrack trk)
trk
- public void setTrackParameters(double[] params)
public double[] getParameters()
private boolean goingForward()
public double a()
private int getCharge()
public Hep3Vector getP0()
public Hep3Vector getX0()
public String paramsToString()
private Hep3Vector getMomentumOnHelix(double s)
private Hep3Vector getPointOnHelix(double s)
private double getPathLengthToPlaneApprox(Hep3Vector xp, Hep3Vector eta, Hep3Vector h)
private Hep3Vector getPointOnHelix(double s, Hep3Vector h)
s
- - path lengthh
- - magnetic field unit vectorprivate Hep3Vector getMomentumOnHelix(double s, Hep3Vector h)
public double[] getHelixParametersAtPathLength(double s, Hep3Vector h)
public Hep3Vector getHelixAndPlaneIntercept(Hep3Vector xp, Hep3Vector eta, Hep3Vector h)
xp
- point on the planeeta
- unit vector of the planeh
- unit vector of magnetic fieldCopyright © 2019. All rights reserved.