|
ACTS
Experiment-independent tracking
|
The PlanarSurfaceDrift takes an intersection in the nominal surface and projects the ends into the readout surface, which can be at : -1, 0, 1. More...
#include <ActsFatras/Digitization/SurfaceDrift.hpp>
Public Types | |
| using | Segment2D = std::array<Acts::Vector2, 2> |
| Shorthand for a 2D segment - drifted segment in 2D readout coordinates. | |
| using | Segment3D = std::array<Acts::Vector3, 2> |
| Shorthand for a 3D segment - undrifted segment in the local 3D frame. | |
Public Member Functions | |
| Acts::Result< std::tuple< Segment2D, Segment3D > > | toReadout (const Acts::GeometryContext &gctx, const Acts::Surface &surface, double thickness, const Acts::Vector3 &pos, const Acts::Vector3 &dir, const Acts::Vector3 &driftDir=Acts::Vector3(0., 0., 0.)) const |
| Drift the full 3D segment onto the surface 2D readout frame. | |
The PlanarSurfaceDrift takes an intersection in the nominal surface and projects the ends into the readout surface, which can be at : -1, 0, 1.
A Lorentz drift angle can be applied.
A single implementation handles all supported surface types; the readout frame is selected internally from surface.type():
In every case the in-plane "x"/"y" coordinates carry the same physical (length) units, so the downstream masking and segmentation are identical.
| Acts::Result< std::tuple< Segment2D, Segment3D > > ActsFatras::SurfaceDrift::toReadout | ( | const Acts::GeometryContext & | gctx, |
| const Acts::Surface & | surface, | ||
| double | thickness, | ||
| const Acts::Vector3 & | pos, | ||
| const Acts::Vector3 & | dir, | ||
| const Acts::Vector3 & | driftDir = Acts::Vector3(0., 0., 0.) ) const |
Drift the full 3D segment onto the surface 2D readout frame.
| gctx | The current Geometry context |
| surface | The nominal intersection surface |
| thickness | The emulated module/depletion thickness |
| pos | The position in global coordinates |
| dir | The direction in global coordinates |
| driftDir | The drift direction in the readout-local frame (plane/disc: local x, y, normal; cylinder: tangential, axial, radial). A direction with no perpendicular component emulates a 3D pixel sensor / no Lorentz drift. |