EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::SingleCurvilinearTrackParameters< charge_t > Class Template Reference

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

+ Inheritance diagram for Acts::SingleCurvilinearTrackParameters< charge_t >:
+ Collaboration diagram for Acts::SingleCurvilinearTrackParameters< charge_t >:

Public Types

using Scalar = BoundScalar
 
using ParametersVector = BoundVector
 
using CovarianceMatrix = BoundSymMatrix
 
- Public Types inherited from Acts::SingleBoundTrackParameters< charge_t >
using Scalar = BoundScalar
 
using ParametersVector = BoundVector
 
using CovarianceMatrix = BoundSymMatrix
 

Public Member Functions

 SingleCurvilinearTrackParameters (const Vector4D &pos4, const Vector3D &dir, Scalar p, Scalar q, std::optional< CovarianceMatrix > cov=std::nullopt)
 
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
 SingleCurvilinearTrackParameters (const Vector4D &pos4, const Vector3D &dir, Scalar qOverP, std::optional< CovarianceMatrix > cov=std::nullopt)
 
 SingleCurvilinearTrackParameters (const Vector4D &pos4, Scalar phi, Scalar theta, Scalar p, Scalar q, std::optional< CovarianceMatrix > cov=std::nullopt)
 
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
 SingleCurvilinearTrackParameters (const Vector4D &pos4, Scalar phi, Scalar theta, Scalar qOverP, std::optional< CovarianceMatrix > cov=std::nullopt)
 
- Public Member Functions inherited from Acts::SingleBoundTrackParameters< charge_t >
 SingleBoundTrackParameters (std::shared_ptr< const Surface > surface, const ParametersVector &params, Scalar q, std::optional< CovarianceMatrix > cov=std::nullopt)
 
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
 SingleBoundTrackParameters (std::shared_ptr< const Surface > surface, const ParametersVector &params, std::optional< CovarianceMatrix > cov=std::nullopt)
 
 SingleBoundTrackParameters (std::shared_ptr< const Surface > surface, const GeometryContext &geoCtx, const Vector4D &pos4, const Vector3D &dir, Scalar p, Scalar q, std::optional< CovarianceMatrix > cov=std::nullopt)
 
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
 SingleBoundTrackParameters (std::shared_ptr< const Surface > surface, const GeometryContext &geoCtx, const Vector4D &pos4, const Vector3D &dir, Scalar qOverP, std::optional< CovarianceMatrix > cov=std::nullopt)
 
const FullBoundParameterSetgetParameterSet () const
 Access the parameter set holding the parameters vector and covariance.
 
ParametersVector parameters () const
 Parameters vector.
 
const std::optional
< CovarianceMatrix > & 
covariance () const
 Optional covariance matrix.
 
template<BoundIndices kIndex>
Scalar get () const
 
template<BoundIndices kIndex>
Scalar uncertainty () const
 
Vector4D fourPosition (const GeometryContext &geoCtx) const
 
Vector3D position (const GeometryContext &geoCtx) const
 
Scalar time () const
 Time coordinate.
 
Vector3D unitDirection () const
 Unit direction three-vector, i.e. the normalized momentum three-vector.
 
Scalar absoluteMomentum () const
 Absolute momentum.
 
Scalar transverseMomentum () const
 Transverse momentum.
 
Vector3D momentum () const
 Momentum three-vector.
 
constexpr Scalar charge () const
 Particle electric charge.
 
const SurfacereferenceSurface () const
 Reference surface onto which the parameters are bound.
 
RotationMatrix3D referenceFrame (const GeometryContext &geoCtx) const
 

Private Types

using Base = SingleBoundTrackParameters< charge_t >
 

Detailed Description

template<typename charge_t>
class Acts::SingleCurvilinearTrackParameters< charge_t >

Curvilinear track parameters for a single track.

Template Parameters
charge_tHelper type to interpret the particle charge/momentum

This is intended as a user-facing data class that adds additional accessors and charge/momentum interpretation on top of the pure parameters vector. All parameters and their corresponding covariance matrix are stored in curvilinear parametrization.

See Also
SingleBoundTrackParameters

Definition at line 27 of file SingleCurvilinearTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 27 of file SingleCurvilinearTrackParameters.hpp

Member Typedef Documentation

template<typename charge_t>
using Acts::SingleCurvilinearTrackParameters< charge_t >::Base = SingleBoundTrackParameters<charge_t>
private

Definition at line 29 of file SingleCurvilinearTrackParameters.hpp.

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

template<typename charge_t>
using Acts::SingleCurvilinearTrackParameters< charge_t >::CovarianceMatrix = BoundSymMatrix

Definition at line 34 of file SingleCurvilinearTrackParameters.hpp.

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

template<typename charge_t>
using Acts::SingleCurvilinearTrackParameters< charge_t >::ParametersVector = BoundVector

Definition at line 33 of file SingleCurvilinearTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 33 of file SingleCurvilinearTrackParameters.hpp

template<typename charge_t>
using Acts::SingleCurvilinearTrackParameters< charge_t >::Scalar = BoundScalar

Definition at line 32 of file SingleCurvilinearTrackParameters.hpp.

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

Constructor & Destructor Documentation

template<typename charge_t>
Acts::SingleCurvilinearTrackParameters< charge_t >::SingleCurvilinearTrackParameters ( const Vector4D pos4,
const Vector3D dir,
Scalar  p,
Scalar  q,
std::optional< CovarianceMatrix cov = std::nullopt 
)
inline

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

Parameters
pos4Track position/time four-vector
dirTrack direction three-vector; normalization is ignored.
pAbsolute momentum
qParticle charge
covCurvilinear bound parameters covariance matrix

Definition at line 43 of file SingleCurvilinearTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 43 of file SingleCurvilinearTrackParameters.hpp

template<typename charge_t>
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
Acts::SingleCurvilinearTrackParameters< charge_t >::SingleCurvilinearTrackParameters ( const Vector4D pos4,
const Vector3D dir,
Scalar  qOverP,
std::optional< CovarianceMatrix cov = std::nullopt 
)
inline

Construct from four-position, direction, and charge-over-momentum.

Parameters
pos4Track position/time four-vector
dirTrack direction three-vector; normalization is ignored.
qOverPCharge-over-momentum-like parameter
covCurvilinear bound parameters covariance matrix

This constructor is only available if there are no potential charge ambiguities, i.e. the charge interpretation type is default-constructible.

Definition at line 64 of file SingleCurvilinearTrackParameters.hpp.

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

template<typename charge_t>
Acts::SingleCurvilinearTrackParameters< charge_t >::SingleCurvilinearTrackParameters ( const Vector4D pos4,
Scalar  phi,
Scalar  theta,
Scalar  p,
Scalar  q,
std::optional< CovarianceMatrix cov = std::nullopt 
)
inline

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

Parameters
pos4Track position/time four-vector
phiTransverse track direction angle
thetaLongitudinal track direction angle
pAbsolute momentum
qParticle charge
covCurvilinear bound parameters covariance matrix

Definition at line 80 of file SingleCurvilinearTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 80 of file SingleCurvilinearTrackParameters.hpp

template<typename charge_t>
template<typename T = charge_t, std::enable_if_t< std::is_default_constructible_v< T >, int > = 0>
Acts::SingleCurvilinearTrackParameters< charge_t >::SingleCurvilinearTrackParameters ( const Vector4D pos4,
Scalar  phi,
Scalar  theta,
Scalar  qOverP,
std::optional< CovarianceMatrix cov = std::nullopt 
)
inline

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

Parameters
pos4Track position/time four-vector
phiTransverse track direction angle
thetaLongitudinal track direction angle
qOverPCharge-over-momentum-like parameter
covCurvilinear bound parameters covariance matrix

This constructor is only available if there are no potential charge ambiguities, i.e. the charge interpretation type is default-constructible.

Definition at line 104 of file SingleCurvilinearTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 104 of file SingleCurvilinearTrackParameters.hpp


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