Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::GenericFreeTrackParameters< particle_hypothesis_t > Class Template Reference

#include <acts/blob/sPHENIX/Core/include/Acts/EventData/GenericFreeTrackParameters.hpp>

Public Types

using Scalar = ActsScalar
 
using ParametersVector = FreeVector
 
using CovarianceMatrix = FreeSquareMatrix
 
using ParticleHypothesis = particle_hypothesis_t
 

Public Member Functions

 GenericFreeTrackParameters (const ParametersVector &params, std::optional< CovarianceMatrix > cov, ParticleHypothesis particleHypothesis)
 
 GenericFreeTrackParameters (const Vector4 &pos4, Scalar phi, Scalar theta, Scalar qOverP, std::optional< CovarianceMatrix > cov, ParticleHypothesis particleHypothesis)
 
template<typename other_particle_hypothesis_t >
 GenericFreeTrackParameters (const GenericFreeTrackParameters< other_particle_hypothesis_t > &other)
 Converts a free track parameter with a different hypothesis.
 
 GenericFreeTrackParameters ()=delete
 Parameters are not default constructible due to the charge type.
 
 GenericFreeTrackParameters (const GenericFreeTrackParameters &)=default
 
 GenericFreeTrackParameters (GenericFreeTrackParameters &&)=default
 
 ~GenericFreeTrackParameters ()=default
 
GenericFreeTrackParametersoperator= (const GenericFreeTrackParameters &)=default
 
GenericFreeTrackParametersoperator= (GenericFreeTrackParameters &&)=default
 
const ParametersVectorparameters () const
 Parameters vector.
 
const std::optional
< CovarianceMatrix > & 
covariance () const
 Optional covariance matrix.
 
template<FreeIndices kIndex>
Scalar get () const
 
Vector4 fourPosition () const
 Space-time position four-vector.
 
Vector3 position () const
 Spatial position three-vector.
 
Scalar time () const
 Time coordinate.
 
Scalar phi () const
 Phi direction.
 
Scalar theta () const
 Theta direction.
 
Scalar qOverP () const
 Charge over momentum.
 
Vector3 direction () const
 Unit direction three-vector, i.e. the normalized momentum three-vector.
 
Scalar absoluteMomentum () const
 Absolute momentum.
 
Scalar transverseMomentum () const
 Transverse momentum.
 
Vector3 momentum () const
 Momentum three-vector.
 
Scalar charge () const
 Particle electric charge.
 
const ParticleHypothesisparticleHypothesis () const
 Particle hypothesis.
 

Static Public Member Functions

template<typename other_track_parameter_t >
static GenericFreeTrackParameters create (const other_track_parameter_t &other)
 Converts an unknown bound track parameter.
 

Private Attributes

FreeVector m_params
 
std::optional< FreeSquareMatrixm_cov
 
ParticleHypothesis m_particleHypothesis
 

Friends

std::ostream & operator<< (std::ostream &os, const GenericFreeTrackParameters &tp)
 Print information to the output stream.
 

Detailed Description

template<class particle_hypothesis_t>
class Acts::GenericFreeTrackParameters< particle_hypothesis_t >

Track parameters not bound to a surface for a single track.

Template Parameters
particle_hypothesis_tHelper type to interpret the particle charge/momentum

Parameters and covariance matrix are stored using the free parametrization defined in enum FreeIndices.

Definition at line 32 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 32 of file GenericFreeTrackParameters.hpp

Member Typedef Documentation

template<class particle_hypothesis_t>
using Acts::GenericFreeTrackParameters< particle_hypothesis_t >::CovarianceMatrix = FreeSquareMatrix

Definition at line 36 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 36 of file GenericFreeTrackParameters.hpp

template<class particle_hypothesis_t>
using Acts::GenericFreeTrackParameters< particle_hypothesis_t >::ParametersVector = FreeVector

Definition at line 35 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 35 of file GenericFreeTrackParameters.hpp

template<class particle_hypothesis_t>
using Acts::GenericFreeTrackParameters< particle_hypothesis_t >::ParticleHypothesis = particle_hypothesis_t

Definition at line 37 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 37 of file GenericFreeTrackParameters.hpp

template<class particle_hypothesis_t>
using Acts::GenericFreeTrackParameters< particle_hypothesis_t >::Scalar = ActsScalar

Definition at line 34 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 34 of file GenericFreeTrackParameters.hpp

Constructor & Destructor Documentation

template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( const ParametersVector params,
std::optional< CovarianceMatrix cov,
ParticleHypothesis  particleHypothesis 
)
inline

Construct from a parameters vector and particle charge.

Parameters
paramsFree parameters vector
covFree parameters covariance matrix
particleHypothesisParticle hypothesis

In principle, only the charge magnitude is needed her to allow unambiguous extraction of the absolute momentum. The particle charge is required as an input here to be consistent with the other constructors below that that also take the charge as an input. The charge sign is only used in debug builds to check for consistency with the q/p parameter.

Definition at line 50 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 50 of file GenericFreeTrackParameters.hpp

template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( const Vector4 pos4,
Scalar  phi,
Scalar  theta,
Scalar  qOverP,
std::optional< CovarianceMatrix cov,
ParticleHypothesis  particleHypothesis 
)
inline

Construct from four-position, angles, absolute momentum, and charge.

Parameters
pos4Track position/time four-vector
phiTransverse track direction angle
thetaLongitudinal track direction angle
qOverPCharge over momentum
covFree parameters covariance matrix
particleHypothesisParticle hypothesis

Definition at line 65 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 65 of file GenericFreeTrackParameters.hpp

References Acts::eFreeDir0, Acts::eFreeDir1, Acts::eFreeDir2, Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeQOverP, Acts::eFreeTime, Acts::eMom0, Acts::eMom1, Acts::eMom2, Acts::ePos0, Acts::ePos1, Acts::ePos2, Acts::eTime, Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params, Acts::makeDirectionFromPhiTheta(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::qOverP().

+ Here is the call graph for this function:

template<class particle_hypothesis_t>
template<typename other_particle_hypothesis_t >
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( const GenericFreeTrackParameters< other_particle_hypothesis_t > &  other)
inline

Converts a free track parameter with a different hypothesis.

Definition at line 84 of file GenericFreeTrackParameters.hpp.

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

template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( )
delete

Parameters are not default constructible due to the charge type.

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::create().

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( const GenericFreeTrackParameters< particle_hypothesis_t > &  )
default
template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters ( GenericFreeTrackParameters< particle_hypothesis_t > &&  )
default
template<class particle_hypothesis_t>
Acts::GenericFreeTrackParameters< particle_hypothesis_t >::~GenericFreeTrackParameters ( )
default

Member Function Documentation

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::absoluteMomentum ( ) const
inline

Absolute momentum.

Definition at line 149 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 149 of file GenericFreeTrackParameters.hpp

References Acts::eFreeQOverP, Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_particleHypothesis.

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::momentum(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::transverseMomentum().

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::charge ( ) const
inline

Particle electric charge.

Definition at line 169 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 169 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_particleHypothesis.

template<class particle_hypothesis_t>
const std::optional<CovarianceMatrix>& Acts::GenericFreeTrackParameters< particle_hypothesis_t >::covariance ( ) const
inline

Optional covariance matrix.

Definition at line 113 of file GenericFreeTrackParameters.hpp.

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

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_cov.

Referenced by BOOST_DATA_TEST_CASE().

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
template<typename other_track_parameter_t >
static GenericFreeTrackParameters Acts::GenericFreeTrackParameters< particle_hypothesis_t >::create ( const other_track_parameter_t &  other)
inlinestatic

Converts an unknown bound track parameter.

Definition at line 92 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 92 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters().

+ Here is the call graph for this function:

template<class particle_hypothesis_t>
Vector3 Acts::GenericFreeTrackParameters< particle_hypothesis_t >::direction ( ) const
inline

Unit direction three-vector, i.e. the normalized momentum three-vector.

Definition at line 145 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 145 of file GenericFreeTrackParameters.hpp

References Acts::eFreeDir0, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::momentum(), Acts::GenericFreeTrackParameters< particle_hypothesis_t >::phi(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::theta().

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Vector4 Acts::GenericFreeTrackParameters< particle_hypothesis_t >::fourPosition ( ) const
inline

Space-time position four-vector.

Definition at line 124 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 124 of file GenericFreeTrackParameters.hpp

References Acts::eFreePos0, Acts::eFreePos1, Acts::eFreePos2, Acts::eFreeTime, Acts::ePos0, Acts::ePos1, Acts::ePos2, Acts::eTime, Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params, and Acts::Test::pos4().

+ Here is the call graph for this function:

template<class particle_hypothesis_t>
template<FreeIndices kIndex>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::get ( ) const
inline

Access a single parameter value identified by its index.

Template Parameters
kIndexTrack parameter index

Definition at line 119 of file GenericFreeTrackParameters.hpp.

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

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

template<class particle_hypothesis_t>
Vector3 Acts::GenericFreeTrackParameters< particle_hypothesis_t >::momentum ( ) const
inline

Momentum three-vector.

Definition at line 166 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 166 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::absoluteMomentum(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::direction().

+ Here is the call graph for this function:

template<class particle_hypothesis_t>
GenericFreeTrackParameters& Acts::GenericFreeTrackParameters< particle_hypothesis_t >::operator= ( const GenericFreeTrackParameters< particle_hypothesis_t > &  )
default
template<class particle_hypothesis_t>
GenericFreeTrackParameters& Acts::GenericFreeTrackParameters< particle_hypothesis_t >::operator= ( GenericFreeTrackParameters< particle_hypothesis_t > &&  )
default
template<class particle_hypothesis_t>
const ParametersVector& Acts::GenericFreeTrackParameters< particle_hypothesis_t >::parameters ( ) const
inline

Parameters vector.

Definition at line 111 of file GenericFreeTrackParameters.hpp.

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

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

template<class particle_hypothesis_t>
const ParticleHypothesis& Acts::GenericFreeTrackParameters< particle_hypothesis_t >::particleHypothesis ( ) const
inline

Particle hypothesis.

Definition at line 174 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 174 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_particleHypothesis.

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::phi ( ) const
inline

Phi direction.

Definition at line 138 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 138 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::direction(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::phi().

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::phi().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Vector3 Acts::GenericFreeTrackParameters< particle_hypothesis_t >::position ( ) const
inline

Spatial position three-vector.

Definition at line 133 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 133 of file GenericFreeTrackParameters.hpp

References Acts::eFreePos0, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::qOverP ( ) const
inline

Charge over momentum.

Definition at line 142 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 142 of file GenericFreeTrackParameters.hpp

References Acts::eFreeQOverP, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::GenericFreeTrackParameters().

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::theta ( ) const
inline

Theta direction.

Definition at line 140 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 140 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::direction(), and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::theta().

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::theta().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::time ( ) const
inline

Time coordinate.

Definition at line 135 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 135 of file GenericFreeTrackParameters.hpp

References Acts::eFreeTime, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

template<class particle_hypothesis_t>
Scalar Acts::GenericFreeTrackParameters< particle_hypothesis_t >::transverseMomentum ( ) const
inline

Transverse momentum.

Definition at line 153 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 153 of file GenericFreeTrackParameters.hpp

References Acts::GenericFreeTrackParameters< particle_hypothesis_t >::absoluteMomentum(), Acts::eFreeDir0, Acts::eFreeDir1, Acts::eFreeDir2, and Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_params.

+ Here is the call graph for this function:

Friends And Related Function Documentation

template<class particle_hypothesis_t>
std::ostream& operator<< ( std::ostream &  os,
const GenericFreeTrackParameters< particle_hypothesis_t > &  tp 
)
friend

Print information to the output stream.

Definition at line 185 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 185 of file GenericFreeTrackParameters.hpp

Member Data Documentation

template<class particle_hypothesis_t>
std::optional<FreeSquareMatrix> Acts::GenericFreeTrackParameters< particle_hypothesis_t >::m_cov
private

Definition at line 180 of file GenericFreeTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 180 of file GenericFreeTrackParameters.hpp

Referenced by Acts::GenericFreeTrackParameters< particle_hypothesis_t >::covariance().


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