Template Class SingleCurvilinearTrackParameters¶
Defined in File SingleCurvilinearTrackParameters.hpp
Inheritance Relationships¶
Base Type¶
public Acts::SingleTrackParameters< ChargePolicy >
(Template Class SingleTrackParameters)
Class Documentation¶
-
template<typename
ChargePolicy
>
classActs
::
SingleCurvilinearTrackParameters
: public Acts::SingleTrackParameters<ChargePolicy>¶ Charged and Neutrial Curvilinear Track representation This is a single-component representation.
- Note
the curvilinear representation is bound to the curvilinear planar surface represenation. I.e. the local parameters are by construction (0,0), the curvilinear surface is characterised by being perpendicular to the track direction. It’s internal frame is constructed with the help of the global z axis.
Public Types
-
using
CovMatrix_t
= typename SingleTrackParameters<ChargePolicy>::CovMatrix_t¶ type of covariance matrix
Public Functions
-
template<typename
T
= ChargePolicy, std::enable_if_t<std::is_same<T, ChargedPolicy>::value, int> = 0>SingleCurvilinearTrackParameters
(std::optional<CovMatrix_t> cov, const ActsVectorD<3> &position, const ActsVectorD<3> &momentum, double dCharge, double dTime)¶ constructor for curvilienear representation This is the constructor from global parameters, enabled only for charged representations.
- Parameters
[in] cov
: The covariance matrix w.r.t. curvilinear frame[in] position
: The global position of this track parameterisation[in] momentum
: The global momentum of this track parameterisation[in] dCharge
: The charge of this track parameterisation
-
template<typename
T
= ChargePolicy, std::enable_if_t<std::is_same<T, NeutralPolicy>::value, int> = 0>SingleCurvilinearTrackParameters
(std::optional<CovMatrix_t> cov, const ActsVectorD<3> &position, const ActsVectorD<3> &momentum, double dTime)¶ constructor for curvilienear representation This is the constructor from global parameters, enabled only for charged representations.
- Parameters
[in] cov
: The covariance matrix w.r.t. curvilinear frame[in] position
: The global position of this track parameterisation[in] momentum
: The global momentum of this track parameterisation
-
SingleCurvilinearTrackParameters
(const SingleCurvilinearTrackParameters<ChargePolicy> ©)¶ copy constructor - charged/neutral
- Parameters
[in] copy
: The source parameters
-
SingleCurvilinearTrackParameters
(SingleCurvilinearTrackParameters<ChargePolicy> &&other)¶ move constructor - charged/neutral
- Parameters
[in] other
: The source parameters
-
~SingleCurvilinearTrackParameters
() final = default¶
-
SingleCurvilinearTrackParameters<ChargePolicy> &
operator=
(const SingleCurvilinearTrackParameters<ChargePolicy> &rhs)¶ copy assignment operator - charged/netural virtual constructor for type creation without casting
-
SingleCurvilinearTrackParameters<ChargePolicy> &
operator=
(SingleCurvilinearTrackParameters<ChargePolicy> &&rhs)¶ move assignment operator - charged/netural virtual constructor for type creation without casting
-
RotationMatrix3D
referenceFrame
(const GeometryContext &gctx) const¶ access to the measurement frame, i.e.
the rotation matrix with respect to the global coordinate system, in which the local error is described.
- Note
For a curvilinear track parameterisation this is identical to the rotation matrix of the intrinsic planar surface.
- Parameters
gctx
: The current geometry context object, e.g. alignment It is ignored for Curvilinear parameters
-
template<ParID_t
par
, std::enable_if_t<std::is_same_v<BoundParameterType<par>, local_parameter>, int> = 0>
voidset
(const GeometryContext &gctx, ParValue_t newValue)¶ update of the track parameterisation only possible on non-const objects, enable for local parameters
For curvilinear parameters the local parameters are forced to be (0,0), hence an update is an effective shift of the reference
- Template Parameters
ParID_t
: The parameter type
- Parameters
gctx
: The current geometry context object, e.g. alignmentnewValue
: The new updaed value
-
template<ParID_t
par
, std::enable_if_t<not std::is_same_v<BoundParameterType<par>, local_parameter>, int> = 0>
voidset
(const GeometryContext &gctx, ParValue_t newValue)¶ update of the track parameterisation only possible on non-const objects enable for parameters that are not local parameters
For curvilinear parameters the directional change of parameters causes a recalculation of the surface
- Template Parameters
ParID_t
: The parameter type
- Parameters
gctx
: The current geometry context object, e.g. alignmentnewValue
: The new updaed value