ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
ActsFatras::PlanarSurfaceDrift Struct Reference

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/PlanarSurfaceDrift.hpp>

Public Types

using Segment2D = std::array<Acts::Vector2, 2>
 Shorthand for a 2D segment.

Public Member Functions

Segment2D toReadout (const Acts::GeometryContext &gctx, const Acts::Surface &surface, double thickness, const Acts::Vector3 &pos, const Acts::Vector3 &dir, const Acts::Vector3 &driftdir) const
 Drift the full 3D segment onto a surface 2D readout plane.

Detailed Description

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.

Member Typedef Documentation

◆ Segment2D

Shorthand for a 2D segment.

Member Function Documentation

◆ toReadout()

Segment2D ActsFatras::PlanarSurfaceDrift::toReadout ( const Acts::GeometryContext & gctx,
const Acts::Surface & surface,
double thickness,
const Acts::Vector3 & pos,
const Acts::Vector3 & dir,
const Acts::Vector3 & driftdir ) const

Drift the full 3D segment onto a surface 2D readout plane.

Parameters
gctxThe current Geometry context
surfaceThe nominal intersection surface
thicknessThe emulated module/depletion thickness
posThe position in global coordinates
dirThe direction in global coordinates
driftdirThe drift direction in local (surface) coordinates
Note
a drift direction of (0,0,0) is drift to central plane any other a drift direction with driftDir.z() != 0. will result on a readout on either + 0.5*depletion or -0.5*depletion
Returns
a Segment on the readout surface
Note
without masking