public class SurfDCA extends Surface
The surface parameter is the angle alpha from the radial direction to the direction of the track:
A track on a DCA surface would normally be parametrized by: (r, phi_position, z, tan(lamda), q/pT). In order to make the parameters continous when a track crosses the origin, however, a modified set of parameters has been chosen:
where:
The method get_parameter is designed to always return +pi/2 and the method safe_pure_equal is designed to always return true. The crossing status of a track and the DCA surface is defined as following:
at - the pure surface of the track is the DCA surface on - the track vector is on the DCA surface, i.e. the angle from the radial direction to the direction of the track is equal to pi/2 (in absolute value) inside - the track vector points towards the origin, i.e. the angle from the radial direction to the direction of the track is greater than pi/2 (in absolute value) outside - the track vector points away from the origin, i.e. the angle from the radial direction to the direction of the track is less than pi/2 (in absolute value)Note that all angles are defined from -pi to pi.
Modifier and Type | Field and Description |
---|---|
private double |
_dxdz |
private double |
_dydz |
private double |
_x |
private double |
_y |
static int |
IDXDZ |
static int |
IDYDZ |
static int |
IPHID |
static int |
IQPT |
static int |
IRSIGNED |
static int |
ITLM |
static int |
IX |
static int |
IY |
static int |
IZ |
Constructor and Description |
---|
SurfDCA()
Construct a default instance .
|
SurfDCA(double x,
double y)
Construct a default instance .
|
SurfDCA(double x,
double y,
double dxdz,
double dydz)
Construct a fully qualified instance .
|
Modifier and Type | Method and Description |
---|---|
TrackSurfaceDirection |
direction(TrackVector vec)
Return the direction.
|
double |
dXdZ() |
double |
dYdZ() |
Surface |
newPureSurface()
Return a copy of the underlying pure Surface.
|
double |
parameter(int ipar)
Return the surface parameter.
|
CrossStat |
pureStatus(VTrack trv)
Find the crossing status for a track vector without error.
|
String |
pureType()
Return a String representation of the class' type name.
|
double |
qOverP(TrackVector vec)
Return the signed inverse momentum, q/p.
|
protected boolean |
safePureEqual(Surface srf) |
protected boolean |
safePureLessThan(Surface srf) |
SpacePath |
spacePath(TrackVector vec,
TrackSurfaceDirection dir)
Return the space vector for a track vector.
|
SpacePoint |
spacePoint(TrackVector vec)
Return the space point for a track vector.
|
static String |
staticType()
Return a String representation of the class' type name.
|
String |
toString()
output stream
|
static String |
typeName()
Return a String representation of the class' type name.
|
TrackVector |
vecDiff(TrackVector vec1,
TrackVector vec2)
Return the vector difference of two tracks on this surface.
|
double |
x() |
double |
x(double z) |
double |
y() |
double |
y(double z) |
boundEqual, equals, genericType, getInteractor, interact, isPure, newSurface, pureEqual, pureLessThan, safeBoundEqual, setInteractor, setSimInteractor, simInteract, simInteractor, status, status, type
public static final int IRSIGNED
public static final int IZ
public static final int IPHID
public static final int ITLM
public static final int IQPT
public static final int IX
public static final int IY
public static final int IDXDZ
public static final int IDYDZ
private double _x
private double _y
private double _dxdz
private double _dydz
public SurfDCA()
public SurfDCA(double x, double y)
public SurfDCA(double x, double y, double dxdz, double dydz)
public static String typeName()
public static String staticType()
public Surface newPureSurface()
newPureSurface
in class Surface
public String pureType()
public double parameter(int ipar)
public String toString()
public CrossStat pureStatus(VTrack trv)
pureStatus
in class Surface
trv
- The VTrack to test.public TrackVector vecDiff(TrackVector vec1, TrackVector vec2)
public SpacePoint spacePoint(TrackVector vec)
spacePoint
in class Surface
vec
- The TrackVector at this Surface.public SpacePath spacePath(TrackVector vec, TrackSurfaceDirection dir)
public double qOverP(TrackVector vec)
protected boolean safePureEqual(Surface srf)
safePureEqual
in class Surface
protected boolean safePureLessThan(Surface srf)
safePureLessThan
in class Surface
public TrackSurfaceDirection direction(TrackVector vec)
public double x()
public double y()
public double x(double z)
public double y(double z)
public double dXdZ()
public double dYdZ()
Copyright © 2016 Linear Collider Detector (LCD). All rights reserved.