File GenericCurvilinearTrackParameters.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

template<typename particle_hypothesis_t>
class GenericCurvilinearTrackParameters : public Acts::GenericBoundTrackParameters<particle_hypothesis_t>
#include <Acts/EventData/GenericCurvilinearTrackParameters.hpp>

Curvilinear track parameters for a single track.

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

GenericBoundTrackParameters

Template Parameters

particle_hypothesis_t – Helper type to interpret the particle charge/momentum

Public Types

using CovarianceMatrix = BoundSquareMatrix
using ParametersVector = BoundVector
using ParticleHypothesis = particle_hypothesis_t
using Scalar = ActsScalar

Public Functions

GenericCurvilinearTrackParameters() = delete

Parameters are not default constructible due to the charge type.

GenericCurvilinearTrackParameters(const GenericCurvilinearTrackParameters&) = default
template<typename other_particle_hypothesis_t>
inline GenericCurvilinearTrackParameters(const GenericCurvilinearTrackParameters<other_particle_hypothesis_t> &other)

Converts a bound track parameter with a different hypothesis.

inline GenericCurvilinearTrackParameters(const Vector4 &pos4, const Vector3 &dir, Scalar qOverP, std::optional<CovarianceMatrix> cov, ParticleHypothesis particleHypothesis)

Construct from four-position, direction, and qOverP.

Parameters
  • pos4 – Track position/time four-vector

  • dir – Track direction three-vector; normalization is ignored.

  • qOverP – Charge over momentum

  • cov – Curvilinear bound parameters covariance matrix

  • particleHypothesis – Particle hypothesis

inline GenericCurvilinearTrackParameters(const Vector4 &pos4, Scalar phi, Scalar theta, Scalar qOverP, std::optional<CovarianceMatrix> cov, ParticleHypothesis particleHypothesis)

Construct from four-position, angles, and qOverP.

Parameters
  • pos4 – Track position/time four-vector

  • phi – Transverse track direction angle

  • theta – Longitudinal track direction angle

  • qOverP – Charge over momentum

  • cov – Curvilinear bound parameters covariance matrix

  • particleHypothesis – Particle hypothesis

GenericCurvilinearTrackParameters(GenericCurvilinearTrackParameters&&) = default
~GenericCurvilinearTrackParameters() = default
inline Vector4 fourPosition() const

Space-time position four-vector.

GenericCurvilinearTrackParameters &operator=(const GenericCurvilinearTrackParameters&) = default
GenericCurvilinearTrackParameters &operator=(GenericCurvilinearTrackParameters&&) = default
inline Vector3 position() const

Spatial position three-vector.

Public Static Functions

template<typename other_track_parameter_t>
static inline GenericCurvilinearTrackParameters create(const other_track_parameter_t &other)

Converts an unknown bound track parameter.