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

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

+ Inheritance diagram for Acts::MultiComponentCurvilinearTrackParameters:
+ Collaboration diagram for Acts::MultiComponentCurvilinearTrackParameters:

Public Types

using ConstructionTuple = std::tuple< double, Acts::Vector4, Acts::Vector3, ActsScalar, covariance_t >
 
- Public Types inherited from Acts::MultiComponentBoundTrackParameters
using Parameters = BoundTrackParameters
 
using ParticleHypothesis = Parameters::ParticleHypothesis
 
using Scalar = typename Parameters::Scalar
 
using ParametersVector = typename Parameters::ParametersVector
 
using CovarianceMatrix = typename Parameters::CovarianceMatrix
 

Public Member Functions

 MultiComponentCurvilinearTrackParameters (const std::vector< ConstructionTuple > &cmps, ParticleHypothesis particleHypothesis)
 
- Public Member Functions inherited from Acts::MultiComponentBoundTrackParameters
template<typename covariance_t >
 MultiComponentBoundTrackParameters (std::shared_ptr< const Surface > surface, const std::vector< std::tuple< double, BoundVector, covariance_t >> &cmps, ParticleHypothesis particleHypothesis)
 Construct from multiple components.
 
 MultiComponentBoundTrackParameters (std::shared_ptr< const Surface > surface, const BoundVector &params, std::optional< BoundSquareMatrix > cov, ParticleHypothesis particleHypothesis)
 
 MultiComponentBoundTrackParameters ()=delete
 Parameters are not default constructible due to the charge type.
 
 MultiComponentBoundTrackParameters (const MultiComponentBoundTrackParameters &)=default
 
 MultiComponentBoundTrackParameters (MultiComponentBoundTrackParameters &&)=default
 
 ~MultiComponentBoundTrackParameters ()=default
 
MultiComponentBoundTrackParametersoperator= (const MultiComponentBoundTrackParameters &)=default
 
MultiComponentBoundTrackParametersoperator= (MultiComponentBoundTrackParameters &&)=default
 
const autocomponents () const
 Access the parameters.
 
const SurfacereferenceSurface () const
 Reference surface onto which the parameters are bound.
 
std::pair< double, Parametersoperator[] (std::size_t i) const
 Get the weight and a GenericBoundTrackParameters object for one component.
 
ParametersVector parameters () const
 Parameters vector.
 
std::optional< CovarianceMatrixcovariance () const
 Optional covariance matrix.
 
template<BoundIndices kIndex>
Scalar get () const
 
Vector4 fourPosition (const GeometryContext &geoCtx) const
 
Vector3 position (const GeometryContext &geoCtx) const
 
Scalar time () const
 Time coordinate.
 
Vector3 direction () const
 
Scalar phi () const
 Phi direction.
 
Scalar theta () const
 Theta direction.
 
Scalar qOverP () const
 Charge over momentum.
 
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.
 

Private Types

using covariance_t = BoundSquareMatrix
 
using Base = MultiComponentBoundTrackParameters
 
using BaseConstructionTuple = std::tuple< std::shared_ptr< Acts::Surface >, std::vector< std::tuple< double, BoundVector, covariance_t >>>
 

Private Member Functions

 MultiComponentCurvilinearTrackParameters (const BaseConstructionTuple &t, ParticleHypothesis particleHypothesis)
 Private constructor from a tuple.
 

Static Private Member Functions

static BaseConstructionTuple construct (const std::vector< ConstructionTuple > &curvi)
 We need this helper function in order to construct the base class properly.
 

Detailed Description

This class mimics the behaviour of the curvilinear parameters for ordinary track parameters. To adopt this concept, a "common surface" is constructed, and all parameters are projected onto this surface. The use of this is questionable, and if the result is reasonable depends largely on the initial multi component state. However, the propagator infrastructure forces the existence of this type

Template Parameters
charge_tHelper type to interpret the particle charge/momentum

Definition at line 236 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 236 of file MultiComponentTrackParameters.hpp

Member Typedef Documentation

using Acts::MultiComponentCurvilinearTrackParameters::BaseConstructionTuple = std::tuple<std::shared_ptr<Acts::Surface>, std::vector<std::tuple<double, BoundVector, covariance_t>>>
private

Definition at line 249 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 249 of file MultiComponentTrackParameters.hpp

Definition at line 238 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 238 of file MultiComponentTrackParameters.hpp

Constructor & Destructor Documentation

Acts::MultiComponentCurvilinearTrackParameters::MultiComponentCurvilinearTrackParameters ( const BaseConstructionTuple t,
ParticleHypothesis  particleHypothesis 
)
inlineprivate

Private constructor from a tuple.

Definition at line 291 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 291 of file MultiComponentTrackParameters.hpp

Acts::MultiComponentCurvilinearTrackParameters::MultiComponentCurvilinearTrackParameters ( const std::vector< ConstructionTuple > &  cmps,
ParticleHypothesis  particleHypothesis 
)
inline

Definition at line 296 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 296 of file MultiComponentTrackParameters.hpp

Member Function Documentation

static BaseConstructionTuple Acts::MultiComponentCurvilinearTrackParameters::construct ( const std::vector< ConstructionTuple > &  curvi)
inlinestaticprivate

We need this helper function in order to construct the base class properly.

Definition at line 252 of file MultiComponentTrackParameters.hpp.

View newest version in sPHENIX GitHub at line 252 of file MultiComponentTrackParameters.hpp

References Acts::Test::cov, Acts::eBoundLoc0, Acts::eFreePos0, Acts::eTime, gctx, Acts::Test::pos4(), physmon_simulation::s, and Acts::detail::transformFreeToCurvilinearParameters().

+ Here is the call graph for this function:


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