EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
base class for Measurements More...
#include <acts/blob/sPHENIX/Core/include/Acts/EventData/Measurement.hpp>
Public Types | |
using | Scalar = typename ParamSet::Scalar |
using | ParametersVector = typename ParamSet::ParametersVector |
type of the vector containing the parameter values | |
using | FullParametersVector = typename ParamSet::FullParametersVector |
Vector type containing all parameters from the same space. | |
using | CovarianceMatrix = typename ParamSet::CovarianceMatrix |
type of the covariance matrix of the measurement | |
using | ProjectionMatrix = typename ParamSet::ProjectionMatrix |
matrix type for projecting full parameter vector onto measured parameters | |
using | RefObject = typename detail::ReferenceObject< parameter_indices_t >::type |
Object type that corresponds to the measurement. | |
Public Member Functions | |
Measurement ()=delete | |
Delete the default constructor. | |
template<typename... Tail> | |
Measurement (std::shared_ptr< const RefObject > referenceObject, const source_link_t &source, CovarianceMatrix cov, typename std::enable_if< sizeof...(Tail)+1==sizeof...(params), Scalar >::type head, Tail...values) | |
standard constructor for surface/volume measurements | |
Measurement (std::shared_ptr< const RefObject > referenceObject, const source_link_t &source, CovarianceMatrix cov, ParametersVector vec) | |
standard constructor for surface/volume measurements | |
virtual | ~Measurement ()=default |
Measurement (const Measurement< source_link_t, parameter_indices_t, params...> ©) | |
copy constructor | |
Measurement (Measurement< source_link_t, parameter_indices_t, params...> &&other) | |
move constructor | |
Measurement< source_link_t, parameter_indices_t, params...> & | operator= (const Measurement< source_link_t, parameter_indices_t, params...> &rhs) |
copy assignment operator | |
Measurement< source_link_t, parameter_indices_t, params...> & | operator= (Measurement< source_link_t, parameter_indices_t, params...> &&rhs) |
move assignment operator | |
template<parameter_indices_t parameter> | |
Scalar | get () const |
retrieve stored value for given parameter | |
const ParametersVector & | parameters () const |
access vector with measured parameter values | |
const CovarianceMatrix & | covariance () const |
access covariance matrix of the measured parameter values | |
template<parameter_indices_t parameter> | |
Scalar | uncertainty () const |
retrieve stored uncertainty for given parameter | |
const RefObject & | referenceObject () const |
access associated object | |
const source_link_t & | sourceLink () const |
link access to the source of the measurement. | |
ParametersVector | residual (const FullParametersVector &trackPars) const |
calculate residual with respect to given track parameters | |
virtual bool | operator== (const Measurement< source_link_t, parameter_indices_t, params...> &rhs) const |
equality operator | |
bool | operator!= (const Measurement< source_link_t, parameter_indices_t, params...> &rhs) const |
inequality operator | |
Static Public Member Functions | |
static constexpr unsigned int | size () |
number of measured parameters | |
static const ProjectionMatrix & | projector () |
operator | |
Protected Member Functions | |
virtual std::ostream & | print (std::ostream &out) const |
Private Types | |
using | ParamSet = ParameterSet< parameter_indices_t, params...> |
Private Attributes | |
ParamSet | m_oParameters |
measured parameter set | |
std::shared_ptr< const RefObject > | m_pReferenceObject |
object which corresponds to the measurement | |
source_link_t | m_sourceLink |
link to the source for this measurement | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const Measurement< source_link_t, parameter_indices_t, params...> &m) |
base class for Measurements
This class describes the measurement of track parameters at a certain Surface/Volume in the TrackingGeometry.
If the measurement is in local parameters and will not provide localToGlobal information. It is thus free from any Context.
source_link_t | the templated class that allows to link back to the source used to create this measurement, this can simply be an identifier or an extended object that allows to navigate back to the original source. The source link is necessary when e.g. calibrating the object or in other circumstances where the pure mathematical view of a measurement is not sufficient. The name link indicates that there is a relationship to a unique source object, i.e. if a measurement appears on several tracks, then there must be a uniquely identifyable common source for those. |
Identifier | identification object for this measurement |
parameter_indices_t | Enum of parameter identifier |
params | parameter pack containing the measured parameters |
Definition at line 70 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 70 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::CovarianceMatrix = typename ParamSet::CovarianceMatrix |
type of the covariance matrix of the measurement
Definition at line 85 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 85 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::FullParametersVector = typename ParamSet::FullParametersVector |
Vector type containing all parameters from the same space.
Definition at line 83 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 83 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::ParametersVector = typename ParamSet::ParametersVector |
type of the vector containing the parameter values
Definition at line 81 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 81 of file Measurement.hpp
|
private |
Definition at line 76 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 76 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::ProjectionMatrix = typename ParamSet::ProjectionMatrix |
matrix type for projecting full parameter vector onto measured parameters
Definition at line 87 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 87 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::RefObject = typename detail::ReferenceObject<parameter_indices_t>::type |
Object type that corresponds to the measurement.
Definition at line 89 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 89 of file Measurement.hpp
using Acts::Measurement< source_link_t, parameter_indices_t, params >::Scalar = typename ParamSet::Scalar |
Definition at line 79 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 79 of file Measurement.hpp
|
delete |
Delete the default constructor.
|
inline |
standard constructor for surface/volume measurements
Concrete class for all possible measurements.
referenceObject | surface/volume origin of the measurement |
source | object for this measurement |
cov | covariance matrix of the measurement. |
head,values | consistent number of parameter values of the measurement |
Definition at line 104 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 104 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject.
|
inline |
standard constructor for surface/volume measurements
Concrete class for all possible measurements, built from properly formatted covariance matrix and parameter vector
referenceObject | surface/volume origin of the measurement |
source | object for this measurement |
cov | covariance matrix of the measurement |
vec | parameter vector of the measurement |
Definition at line 124 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 124 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject.
|
virtualdefault |
|
inline |
copy constructor
source_link_t | The identifier type |
parameter_indices_t | Enum of parameter identifier |
params...The | local parameter pack |
copy | is the source for the copy |
Definition at line 142 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 142 of file Measurement.hpp
|
inline |
move constructor
source_link_t | The identifier type |
parameter_indices_t | Enum of parameter identifier |
params...The | local parameter pack |
other | is the source for the move |
Definition at line 155 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 155 of file Measurement.hpp
|
inline |
access covariance matrix of the measured parameter values
Definition at line 222 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 222 of file Measurement.hpp
References Acts::ParameterSet< parameter_indices_t, params >::getCovariance(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters.
Referenced by Acts::Measurement< source_link_t, parameter_indices_t, params >::print(), and Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated().
|
inline |
retrieve stored value for given parameter
parameter | identifier for the parameter to be retrieved |
parameter
must be part of the template parameter pack params
. Otherwise a compile-time error is generated.Definition at line 204 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 204 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters.
|
inline |
inequality operator
true
if both objects are not equal, otherwise false
Definition at line 297 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 297 of file Measurement.hpp
|
inline |
copy assignment operator
source_link_t | The identifier type |
parameter_indices_t | Enum of parameter identifier |
params...The | local parameter pack |
rhs | is the source for the assignment |
Definition at line 168 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 168 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters, Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject, and Acts::Measurement< source_link_t, parameter_indices_t, params >::m_sourceLink.
|
inline |
move assignment operator
source_link_t | The identifier type |
parameter_indices_t | Enum of parameter identifier |
params...The | local parameter pack |
rhs | is the source for the move assignment |
Definition at line 186 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 186 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters, Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject, and Acts::Measurement< source_link_t, parameter_indices_t, params >::m_sourceLink.
|
inlinevirtual |
equality operator
true
if parameter sets and associated surfaces/volumes compare equal, otherwise false
Definition at line 285 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 285 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters, Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject, and Acts::Measurement< source_link_t, parameter_indices_t, params >::m_sourceLink.
|
inline |
access vector with measured parameter values
params
.Definition at line 215 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 215 of file Measurement.hpp
References Acts::ParameterSet< parameter_indices_t, params >::getParameters(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::Measurement< source_link_t, parameter_indices_t, params >::print(), Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated(), ActsExamples::CsvPlanarClusterWriter::writeT(), and ActsExamples::RootPlanarClusterWriter::writeT().
|
inlineprotectedvirtual |
Definition at line 313 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 313 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::covariance(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::parameters().
|
inlinestatic |
operator
Definition at line 303 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 303 of file Measurement.hpp
References Acts::ParameterSet< parameter_indices_t, params...>::projector().
Referenced by Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated().
|
inline |
access associated object
ReferenceObject
object used to construct this Measurement
object must still be valid at the same memory location.Definition at line 251 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 251 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_pReferenceObject.
Referenced by Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated(), ActsExamples::CsvPlanarClusterWriter::writeT(), and ActsExamples::RootPlanarClusterWriter::writeT().
|
inline |
calculate residual with respect to given track parameters
trackPars | reference TrackParameters object |
Definition at line 277 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 277 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters, and Acts::ParameterSet< parameter_indices_t, params >::residual().
|
inlinestatic |
number of measured parameters
Definition at line 243 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 243 of file Measurement.hpp
References Acts::ParameterSet< parameter_indices_t, params...>::size().
Referenced by Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated().
|
inline |
link access to the source of the measurement.
The source link can be simply an identifier or a more complicated object, see description above.
Definition at line 259 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 259 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_sourceLink.
Referenced by Acts::detail_lt::TrackStateProxy< source_link_t, M, ReadOnly >::setCalibrated(), ActsExamples::CsvPlanarClusterWriter::writeT(), and ActsExamples::RootPlanarClusterWriter::writeT().
|
inline |
retrieve stored uncertainty for given parameter
parameter | identifier for the parameter to be retrieved |
parameter
must be part of the template parameter pack params
. Otherwise a compile-time error is generated.Definition at line 236 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 236 of file Measurement.hpp
References Acts::Measurement< source_link_t, parameter_indices_t, params >::m_oParameters.
Referenced by dr1998(), and r1998().
|
friend |
Definition at line 305 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 305 of file Measurement.hpp
|
private |
measured parameter set
Definition at line 326 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 326 of file Measurement.hpp
Referenced by Acts::Measurement< source_link_t, parameter_indices_t, params >::covariance(), Acts::Measurement< source_link_t, parameter_indices_t, params >::get(), Acts::Measurement< source_link_t, parameter_indices_t, params >::operator=(), Acts::Measurement< source_link_t, parameter_indices_t, params >::operator==(), Acts::Measurement< source_link_t, parameter_indices_t, params >::parameters(), Acts::Measurement< source_link_t, parameter_indices_t, params >::residual(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::uncertainty().
|
private |
object which corresponds to the measurement
Definition at line 327 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 327 of file Measurement.hpp
Referenced by Acts::Measurement< source_link_t, parameter_indices_t, params >::Measurement(), Acts::Measurement< source_link_t, parameter_indices_t, params >::operator=(), Acts::Measurement< source_link_t, parameter_indices_t, params >::operator==(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::referenceObject().
|
private |
link to the source for this measurement
Definition at line 329 of file Measurement.hpp.
View newest version in sPHENIX GitHub at line 329 of file Measurement.hpp
Referenced by Acts::Measurement< source_link_t, parameter_indices_t, params >::operator=(), Acts::Measurement< source_link_t, parameter_indices_t, params >::operator==(), and Acts::Measurement< source_link_t, parameter_indices_t, params >::sourceLink().