#include <SurfYZPlane.h>
Public Member Functions | |
SurfYZPlane () | |
Default constructor. More... | |
SurfYZPlane (double x0, double y0, double z0, double phi) | |
Initializing constructor. More... | |
virtual | ~SurfYZPlane () |
Destructor. More... | |
double | x0 () const |
X origin. More... | |
double | y0 () const |
Y origin. More... | |
double | z0 () const |
Z origin. More... | |
double | phi () const |
Rotation angle about x-axis. More... | |
virtual Surface * | clone () const |
Clone method. More... | |
virtual bool | isTrackValid (const TrackVector &vec) const |
Surface-specific tests of validity of track parameters. More... | |
virtual void | toLocal (const double xyz[3], double uvw[3]) const |
Transform global to local coordinates. More... | |
virtual void | toGlobal (const double uvw[3], double xyz[3]) const |
Transform local to global coordinates. More... | |
virtual void | getPosition (const TrackVector &vec, double xyz[3]) const |
Get position of track. More... | |
virtual void | getMomentum (const TrackVector &vec, double mom[3], TrackDirection dir=UNKNOWN) const |
Get momentum vector of track. More... | |
virtual bool | isParallel (const Surface &surf) const |
Test whether two surfaces are parallel, within tolerance. More... | |
virtual double | distanceTo (const Surface &surf) const |
Find perpendicular forward distance to a parallel surface. More... | |
virtual bool | isEqual (const Surface &surf) const |
Test two surfaces for equality, within tolerance. More... | |
virtual std::ostream & | Print (std::ostream &out) const |
Printout. More... | |
Public Member Functions inherited from trkf::SurfPlane | |
SurfPlane () | |
Default constructor. More... | |
virtual | ~SurfPlane () |
Destructor. More... | |
double | PointingError (const TrackVector &vec, const TrackError &err) const |
Get pointing error of track. More... | |
void | getStartingError (TrackError &err) const |
Get starting error matrix for Kalman filter. More... | |
Public Member Functions inherited from trkf::Surface | |
Surface () | |
Default constructor. More... | |
virtual | ~Surface () |
Destructor. More... | |
virtual TrackVector | getDiff (const TrackVector &vec1, const TrackVector &vec2) const |
Calculate difference of two track parameter vectors. More... | |
virtual TrackDirection | getDirection (const TrackVector &, TrackDirection dir=UNKNOWN) const |
Get direction of track (default UNKNOWN). More... | |
Private Attributes | |
double | fX0 |
X origin. More... | |
double | fY0 |
Y origin. More... | |
double | fZ0 |
Z origin. More... | |
double | fPhi |
Rotation angle about x-axis. More... | |
Static Private Attributes | |
static double | fPhiTolerance = 1.e-10 |
Phi tolerance for parallel. More... | |
static double | fSepTolerance = 1.e-6 |
Separation tolerance for equal. More... | |
Additional Inherited Members | |
Public Types inherited from trkf::Surface | |
enum | TrackDirection { FORWARD, BACKWARD, UNKNOWN } |
Track direction enum. More... | |
Definition at line 46 of file SurfYZPlane.h.
trkf::SurfYZPlane::SurfYZPlane | ( | ) |
trkf::SurfYZPlane::SurfYZPlane | ( | double | x0, |
double | y0, | ||
double | z0, | ||
double | phi | ||
) |
Initializing constructor.
Initializing constructor.
Arguments:
x0, y0, z0 - Global coordinates of local origin. phi - Rotation angle about x-axis.
Definition at line 38 of file SurfYZPlane.cxx.
|
virtual |
|
virtual |
|
virtual |
Find perpendicular forward distance to a parallel surface.
Find perpendicular forward distance to a parallel surface.
Throw an exception if the other surface is not parallel.
Assuming the other surface is parallel, the distance is simply the w-coordinate of the other surface, and is signed.
Arguments:
surf - Other surface.
Returned value: Distance.
Implements trkf::Surface.
Definition at line 218 of file SurfYZPlane.cxx.
|
virtual |
Get momentum vector of track.
Get momentum vector of track.
Arguments:
vec - Track state vector. mom - Momentum vector in global coordinate system. dir - Track direction.
Implements trkf::Surface.
Definition at line 135 of file SurfYZPlane.cxx.
|
virtual |
Get position of track.
Get position of track.
Arguments:
vec - Track state vector. xyz - Position in global coordinate system.
Implements trkf::Surface.
Definition at line 112 of file SurfYZPlane.cxx.
|
virtual |
Test two surfaces for equality, within tolerance.
Test two surfaces for equality, within tolerance. Here equal is defined as having all surface parameters the same, not just having the surfaces coincide spatially, so that the local coordinate systems are the same between the two surfaces.
Arguments:
surf - Other surface.
Returned values: true if equal.
Implements trkf::Surface.
Definition at line 251 of file SurfYZPlane.cxx.
|
virtual |
Test whether two surfaces are parallel, within tolerance.
Test whether two surfaces are parallel, within tolerance. This method will only return true if the other surface is a SurfYZPlane.
Arguments:
surf - Other surface.
Returned value: true if parallel.
Implements trkf::Surface.
Definition at line 186 of file SurfYZPlane.cxx.
|
virtual |
Surface-specific tests of validity of track parameters.
Implements trkf::Surface.
Definition at line 56 of file SurfYZPlane.cxx.
|
inline |
Rotation angle about x-axis.
Definition at line 63 of file SurfYZPlane.h.
|
virtual |
Printout.
Implements trkf::Surface.
Definition at line 276 of file SurfYZPlane.cxx.
|
virtual |
Transform local to global coordinates.
Transform local to global coordinates.
Arguments:
uvw - Cartesian coordinates in local coordinate system. xyz - Cartesian coordinates in global coordinate system.
Implements trkf::Surface.
Definition at line 90 of file SurfYZPlane.cxx.
|
virtual |
Transform global to local coordinates.
Transform global to local coordinates.
Arguments:
xyz - Cartesian coordinates in global coordinate system. uvw - Cartesian coordinates in local coordinate system.
Implements trkf::Surface.
Definition at line 68 of file SurfYZPlane.cxx.
|
inline |
X origin.
Definition at line 60 of file SurfYZPlane.h.
|
inline |
Y origin.
Definition at line 61 of file SurfYZPlane.h.
|
inline |
Z origin.
Definition at line 62 of file SurfYZPlane.h.
|
private |
Rotation angle about x-axis.
Definition at line 108 of file SurfYZPlane.h.
|
staticprivate |
Phi tolerance for parallel.
Definition at line 100 of file SurfYZPlane.h.
|
staticprivate |
Separation tolerance for equal.
Definition at line 101 of file SurfYZPlane.h.
|
private |
X origin.
Definition at line 105 of file SurfYZPlane.h.
|
private |
Y origin.
Definition at line 106 of file SurfYZPlane.h.
|
private |
Z origin.
Definition at line 107 of file SurfYZPlane.h.