ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsFatras::Hit Class Reference

#include <acts/blob/master/Fatras/include/ActsFatras/EventData/Hit.hpp>

+ Collaboration diagram for ActsFatras::Hit:

Public Types

using Scalar = double
 
using Vector4 = Acts::ActsVector< Scalar, 4 >
 
using Vector3 = Acts::ActsVector< Scalar, 3 >
 

Public Member Functions

 Hit ()=default
 Construct default hit with (mostly) invalid information.
 
template<typename Position4 , typename Momentum40 , typename Momentum41 >
 Hit (Acts::GeometryID geometryId, Barcode particleId, const Eigen::MatrixBase< Position4 > &pos4, const Eigen::MatrixBase< Momentum40 > &before4, const Eigen::MatrixBase< Momentum41 > &after4, int32_t index_=-1)
 
 Hit (const Hit &)=default
 
 Hit (Hit &&)=default
 
Hitoperator= (const Hit &)=default
 
Hitoperator= (Hit &&)=default
 
constexpr Acts::GeometryID geometryId () const
 Geometry identifier of the hit surface.
 
constexpr Barcode particleId () const
 Particle identifier of the particle that generated the hit.
 
constexpr int32_t index () const
 
const Vector4position4 () const
 
auto position () const
 Three-position, i.e. spatial coordinates without the time.
 
Scalar time () const
 Time coordinate.
 
const Vector4momentum4Before () const
 
const Vector4momentum4After () const
 
Vector3 unitDirectionBefore () const
 Normalized particle direction vector before the hit.
 
Vector3 unitDirectionAfter () const
 Normalized particle direction vector the hit.
 
Vector3 unitDirection () const
 Average normalized particle direction vector through the surface.
 
Scalar depositedEnergy () const
 

Private Attributes

Acts::GeometryID m_geometryId
 Identifier of the surface.
 
Barcode m_particleId
 Identifier of the generating particle.
 
int32_t m_index = -1
 Index of the hit along the particle trajectory.
 
Vector4 m_pos4 = Vector4::Zero()
 Global space-time position four-vector.
 
Vector4 m_before4 = Vector4::Zero()
 Global particle energy-momentum four-vector before the hit.
 
Vector4 m_after4 = Vector4::Zero()
 Global particle energy-momentum four-vector after the hit.
 

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.

Definition at line 26 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 26 of file Hit.hpp

Member Typedef Documentation

using ActsFatras::Hit::Scalar = double

Definition at line 28 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 28 of file Hit.hpp

Definition at line 30 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 30 of file Hit.hpp

Definition at line 29 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 29 of file Hit.hpp

Constructor & Destructor Documentation

ActsFatras::Hit::Hit ( )
default

Construct default hit with (mostly) invalid information.

template<typename Position4 , typename Momentum40 , typename Momentum41 >
ActsFatras::Hit::Hit ( Acts::GeometryID  geometryId,
Barcode  particleId,
const Eigen::MatrixBase< Position4 > &  pos4,
const Eigen::MatrixBase< Momentum40 > &  before4,
const Eigen::MatrixBase< Momentum41 > &  after4,
int32_t  index_ = -1 
)
inline

Construct from four-position and four-momenta.

Parameters
geoIdGeometry 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. The four-vector component order must be [x,y,z,t] and [px,py,pz,E].

Definition at line 48 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 48 of file Hit.hpp

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

Member Function Documentation

Scalar ActsFatras::Hit::depositedEnergy ( ) const
inline

Energy deposited by the hit.

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

Definition at line 105 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 105 of file Hit.hpp

References m_after4, and m_before4.

constexpr Acts::GeometryID ActsFatras::Hit::geometryId ( ) const
inline

Geometry identifier of the hit surface.

Definition at line 64 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 64 of file Hit.hpp

References m_geometryId.

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

Hit index along the particle trajectory.

Return values
negativeif the hit index is undefined.

Definition at line 70 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 70 of file Hit.hpp

References m_index.

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

Particle four-momentum after the hit.

The component order is [px,py,pz,E].

Definition at line 88 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 88 of file Hit.hpp

References m_after4.

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

Particle four-momentum before the hit.

The component order is [px,py,pz,E].

Definition at line 84 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 84 of file Hit.hpp

References m_before4.

Hit& ActsFatras::Hit::operator= ( const Hit )
default
Hit& ActsFatras::Hit::operator= ( Hit &&  )
default
constexpr Barcode ActsFatras::Hit::particleId ( ) const
inline

Particle identifier of the particle that generated the hit.

Definition at line 66 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 66 of file Hit.hpp

References m_particleId.

auto ActsFatras::Hit::position ( ) const
inline

Three-position, i.e. spatial coordinates without the time.

Definition at line 77 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 77 of file Hit.hpp

References m_pos4.

const Vector4& ActsFatras::Hit::position4 ( ) const
inline

Space-time position four-vector.

The component order is [x,y,z,t].

Definition at line 75 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 75 of file Hit.hpp

References m_pos4.

Scalar ActsFatras::Hit::time ( ) const
inline

Time coordinate.

Definition at line 79 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 79 of file Hit.hpp

References m_pos4.

Vector3 ActsFatras::Hit::unitDirection ( ) const
inline

Average normalized particle direction vector through the surface.

Definition at line 96 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 96 of file Hit.hpp

References m_after4, m_before4, and norm.

Vector3 ActsFatras::Hit::unitDirectionAfter ( ) const
inline

Normalized particle direction vector the hit.

Definition at line 94 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 94 of file Hit.hpp

References m_after4.

Vector3 ActsFatras::Hit::unitDirectionBefore ( ) const
inline

Normalized particle direction vector before the hit.

Definition at line 90 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 90 of file Hit.hpp

References m_before4.

Member Data Documentation

Vector4 ActsFatras::Hit::m_after4 = Vector4::Zero()
private

Global particle energy-momentum four-vector after the hit.

Definition at line 119 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 119 of file Hit.hpp

Referenced by depositedEnergy(), momentum4After(), unitDirection(), and unitDirectionAfter().

Vector4 ActsFatras::Hit::m_before4 = Vector4::Zero()
private

Global particle energy-momentum four-vector before the hit.

Definition at line 117 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 117 of file Hit.hpp

Referenced by depositedEnergy(), momentum4Before(), unitDirection(), and unitDirectionBefore().

Acts::GeometryID ActsFatras::Hit::m_geometryId
private

Identifier of the surface.

Definition at line 109 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 109 of file Hit.hpp

Referenced by geometryId().

int32_t ActsFatras::Hit::m_index = -1
private

Index of the hit along the particle trajectory.

Definition at line 113 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 113 of file Hit.hpp

Referenced by index().

Barcode ActsFatras::Hit::m_particleId
private

Identifier of the generating particle.

Definition at line 111 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 111 of file Hit.hpp

Referenced by particleId().

Vector4 ActsFatras::Hit::m_pos4 = Vector4::Zero()
private

Global space-time position four-vector.

Definition at line 115 of file Hit.hpp.

View newest version in sPHENIX GitHub at line 115 of file Hit.hpp

Referenced by position(), position4(), and time().


The documentation for this class was generated from the following file: