ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
ActsFatras::Hit Class Reference

A simulation hit on a surface. More...

#include <ActsFatras/EventData/Hit.hpp>

Public Member Functions

 Hit ()=default
 Construct default hit with (mostly) invalid information.
 Hit (Acts::GeometryIdentifier geometryId, Barcode particleId, const Acts::Vector4 &pos4, const Acts::Vector4 &before4, const Acts::Vector4 &after4, std::int32_t index_=-1)
 Construct from four-position and four-momenta.
 Hit (const Hit &)=default
 Copy constructor.
 Hit (Hit &&)=default
 Move constructor.
double depositedEnergy () const
 Energy deposited by the hit.
Acts::Vector3 direction () const
 Average normalized particle direction vector through the surface.
Acts::Vector3 directionAfter () const
 Normalized particle direction vector the hit.
Acts::Vector3 directionBefore () const
 Normalized particle direction vector before the hit.
const Acts::Vector4fourPosition () const
 Space-time position four-vector.
constexpr Acts::GeometryIdentifier geometryId () const
 Geometry identifier of the hit surface.
constexpr std::int32_t index () const
 Hit index along the particle trajectory.
const Acts::Vector4momentum4After () const
 Particle four-momentum after the hit.
const Acts::Vector4momentum4Before () const
 Particle four-momentum before the hit.
Hitoperator= (const Hit &)=default
 Copy assignment operator.
Hitoperator= (Hit &&)=default
 Move assignment operator.
constexpr Barcode particleId () const
 Particle identifier of the particle that generated the hit.
auto position () const
 Three-position, i.e.
double time () const
 Time coordinate.

Detailed Description

A simulation hit on a surface.

This is the undigitized, truth hit, i.e. just a recording of the particle state at the surface intersection. Since Fatras is surface-based, the hit position is always constrained to a surface. Depending on the simulated interactions the momentum state before and after might differ and is thus stored as two separate four-vectors.

Constructor & Destructor Documentation

◆ Hit() [1/4]

ActsFatras::Hit::Hit ( )
default

Construct default hit with (mostly) invalid information.

◆ Hit() [2/4]

ActsFatras::Hit::Hit ( Acts::GeometryIdentifier geometryId,
Barcode particleId,
const Acts::Vector4 & pos4,
const Acts::Vector4 & before4,
const Acts::Vector4 & after4,
std::int32_t index_ = -1 )

Construct from four-position and four-momenta.

Parameters
geometryIdGeometry identifier of the surface
particleIdParticle identifier of the particle that created the hit
pos4Particle space-time four-vector on the surface
before4Particle four-momentum before the interaction
after4Particle four-momentum after the interaction
index_Hit index along the particle trajectory

All quantities are given in the global coordinate system. It is the users responsibility to ensure that the position correspond to a position on the given surface.

◆ Hit() [3/4]

ActsFatras::Hit::Hit ( const Hit & )
default

Copy constructor.

◆ Hit() [4/4]

ActsFatras::Hit::Hit ( Hit && )
default

Move constructor.

Member Function Documentation

◆ depositedEnergy()

double ActsFatras::Hit::depositedEnergy ( ) const

Energy deposited by the hit.

Return values
positiveif the particle lost energy when it passed the surface
negativeif magic was involved

◆ direction()

Acts::Vector3 ActsFatras::Hit::direction ( ) const

Average normalized particle direction vector through the surface.

Returns
Average normalized direction vector of particle momentum before and after

◆ directionAfter()

Acts::Vector3 ActsFatras::Hit::directionAfter ( ) const

Normalized particle direction vector the hit.

Returns
Normalized three-dimensional direction vector after interaction

◆ directionBefore()

Acts::Vector3 ActsFatras::Hit::directionBefore ( ) const

Normalized particle direction vector before the hit.

Returns
Normalized three-dimensional direction vector before interaction

◆ fourPosition()

const Acts::Vector4 & ActsFatras::Hit::fourPosition ( ) const

Space-time position four-vector.

Returns
Reference to four-vector containing position and time coordinates

◆ geometryId()

Acts::GeometryIdentifier ActsFatras::Hit::geometryId ( ) const
constexpr

Geometry identifier of the hit surface.

Returns
GeometryIdentifier of the surface where the hit occurred

◆ index()

std::int32_t ActsFatras::Hit::index ( ) const
constexpr

Hit index along the particle trajectory.

Return values
negativeif the hit index is undefined.

◆ momentum4After()

const Acts::Vector4 & ActsFatras::Hit::momentum4After ( ) const

Particle four-momentum after the hit.

Returns
Reference to four-momentum vector after interaction

◆ momentum4Before()

const Acts::Vector4 & ActsFatras::Hit::momentum4Before ( ) const

Particle four-momentum before the hit.

Returns
Reference to four-momentum vector before interaction

◆ operator=() [1/2]

Hit & ActsFatras::Hit::operator= ( const Hit & )
default

Copy assignment operator.

Returns
Reference to this hit after copying

◆ operator=() [2/2]

Hit & ActsFatras::Hit::operator= ( Hit && )
default

Move assignment operator.

Returns
Reference to this hit after moving

◆ particleId()

Barcode ActsFatras::Hit::particleId ( ) const
constexpr

Particle identifier of the particle that generated the hit.

Returns
Barcode identifier of the particle that created this hit

◆ position()

auto ActsFatras::Hit::position ( ) const

Three-position, i.e.

spatial coordinates without the time.

Returns
Three-dimensional position vector (x,y,z)

◆ time()

double ActsFatras::Hit::time ( ) const

Time coordinate.

Returns
Time of the hit occurrence