ATLAS Offline Software
Loading...
Searching...
No Matches
xAOD::TrackMeasurement_v1 Class Reference

Track Measurements for Acts MultiTrajectory. More...

#include <TrackMeasurement_v1.h>

Inheritance diagram for xAOD::TrackMeasurement_v1:
Collaboration diagram for xAOD::TrackMeasurement_v1:

Public Member Functions

 TrackMeasurement_v1 ()=default
template<std::size_t measdim = 6>
Eigen::Map< const Eigen::Matrix< double, measdim, 1 > > measEigen () const
 access track Measurements vector of const element
template<std::size_t measdim = 6>
Eigen::Map< Eigen::Matrix< double, measdim, 1 > > measEigen ()
 access Measurements of non const element
const std::vector< double > & meas () const
 access track Measurements as plain vector
void setMeas (const std::vector< double > &m)
 access set Measurements from plain vector
template<std::size_t measdim = 6>
Eigen::Map< const Eigen::Matrix< double, measdim, measdim > > covMatrixEigen () const
 access track covariance matrix (flattened, rows layout) of const element
template<std::size_t measdim = 6>
Eigen::Map< Eigen::Matrix< double, measdim, measdim > > covMatrixEigen ()
 access track covariance matrix (flattened, rows layout)
const std::vector< double > & covMatrix () const
 access track covariance as plain vector
void setCovMatrix (const std::vector< double > &m)
 access set covariance from plain vector
const xAOD::UncalibratedMeasurementuncalibratedMeasurement () const
 access the uncalibrated measurement
void setUncalibratedMeasurement (const xAOD::UncalibratedMeasurement *uncalibrated_measurement)
 set uncalibrated measurement
const std::uint64_t & projector () const
 The quantities measured by detector, are functions of the state vector, corrupted by a measurement noise.
const std::uint64_t * projectorPtr () const
std::uint64_t * projectorPtr ()
void setProjector (const std::uint64_t &m)
void resize (size_t sz=6)
 expands sizes of internal vectors for the data storage ( by default this is 6 for Measurements and 6x6 for Covariance) typically only 5 are used
size_t size () const
 retrieve the size of the internal vectors for the data storage

Static Private Attributes

static const SG::AuxElement::Accessor< std::vector< double > > s_measAcc
static const SG::AuxElement::Accessor< std::vector< double > > s_covMatrixAcc

Detailed Description

Track Measurements for Acts MultiTrajectory.

Definition at line 20 of file TrackMeasurement_v1.h.

Constructor & Destructor Documentation

◆ TrackMeasurement_v1()

xAOD::TrackMeasurement_v1::TrackMeasurement_v1 ( )
default

Member Function Documentation

◆ covMatrix()

const std::vector< double > & xAOD::TrackMeasurement_v1::covMatrix ( ) const

access track covariance as plain vector

◆ covMatrixEigen() [1/2]

template<std::size_t measdim = 6>
Eigen::Map< Eigen::Matrix< double, measdim, measdim > > xAOD::TrackMeasurement_v1::covMatrixEigen ( )
inline

access track covariance matrix (flattened, rows layout)

Definition at line 61 of file TrackMeasurement_v1.h.

61 {
62 return Eigen::Map<Eigen::Matrix<double, measdim, measdim>> {s_covMatrixAcc(*this).data()};
63 }
static const SG::AuxElement::Accessor< std::vector< double > > s_covMatrixAcc

◆ covMatrixEigen() [2/2]

template<std::size_t measdim = 6>
Eigen::Map< const Eigen::Matrix< double, measdim, measdim > > xAOD::TrackMeasurement_v1::covMatrixEigen ( ) const
inline

access track covariance matrix (flattened, rows layout) of const element

Definition at line 53 of file TrackMeasurement_v1.h.

53 {
54 return Eigen::Map<const Eigen::Matrix<double, measdim, measdim>>{s_covMatrixAcc(*this).data()};
55 }

◆ meas()

const std::vector< double > & xAOD::TrackMeasurement_v1::meas ( ) const

access track Measurements as plain vector

◆ measEigen() [1/2]

template<std::size_t measdim = 6>
Eigen::Map< Eigen::Matrix< double, measdim, 1 > > xAOD::TrackMeasurement_v1::measEigen ( )
inline

access Measurements of non const element

Definition at line 35 of file TrackMeasurement_v1.h.

35 {
36 return Eigen::Map<Eigen::Matrix<double, measdim, 1>>{s_measAcc(*this).data()};
37 }
static const SG::AuxElement::Accessor< std::vector< double > > s_measAcc

◆ measEigen() [2/2]

template<std::size_t measdim = 6>
Eigen::Map< const Eigen::Matrix< double, measdim, 1 > > xAOD::TrackMeasurement_v1::measEigen ( ) const
inline

access track Measurements vector of const element

Definition at line 27 of file TrackMeasurement_v1.h.

27 {
28 return Eigen::Map<const Eigen::Matrix<double, measdim, 1>>{s_measAcc(*this).data()};
29 }

◆ projector()

const std::uint64_t & xAOD::TrackMeasurement_v1::projector ( ) const

The quantities measured by detector, are functions of the state vector, corrupted by a measurement noise.

However the state vector is normally not observed directly. The projector is mapping from the state vector to the mesured quantities. In our case the projector is linear, i.e. represented by a matrix of ‘ones’. The projector matrix is coded by the bits of "unsigned long long" variable and the conversion to/from matrix is done in Acts.

Define projector access

◆ projectorPtr() [1/2]

std::uint64_t * xAOD::TrackMeasurement_v1::projectorPtr ( )

◆ projectorPtr() [2/2]

const std::uint64_t * xAOD::TrackMeasurement_v1::projectorPtr ( ) const

◆ resize()

void xAOD::TrackMeasurement_v1::resize ( size_t sz = 6)

expands sizes of internal vectors for the data storage ( by default this is 6 for Measurements and 6x6 for Covariance) typically only 5 are used

Definition at line 48 of file TrackMeasurement_v1.cxx.

48 {
49 s_measAcc(*this).resize(sz);
50 s_covMatrixAcc(*this).resize(sz * sz);
51 }
static Double_t sz

◆ setCovMatrix()

void xAOD::TrackMeasurement_v1::setCovMatrix ( const std::vector< double > & m)

access set covariance from plain vector

◆ setMeas()

void xAOD::TrackMeasurement_v1::setMeas ( const std::vector< double > & m)

access set Measurements from plain vector

◆ setProjector()

void xAOD::TrackMeasurement_v1::setProjector ( const std::uint64_t & m)

◆ setUncalibratedMeasurement()

void xAOD::TrackMeasurement_v1::setUncalibratedMeasurement ( const xAOD::UncalibratedMeasurement * uncalibrated_measurement)

set uncalibrated measurement

Definition at line 29 of file TrackMeasurement_v1.cxx.

29 {
30 static const SG::Decorator<const xAOD::UncalibratedMeasurement *> decor("uncalibratedMeasurement");
31 decor(*this) = an_uncalibrated_measurement;
32 }
SG::Decorator< T, ALLOC > Decorator
Helper class to provide type-safe access to aux data, specialized for JaggedVecElt.
Definition AuxElement.h:576

◆ size()

size_t xAOD::TrackMeasurement_v1::size ( ) const

retrieve the size of the internal vectors for the data storage

Definition at line 53 of file TrackMeasurement_v1.cxx.

53 {
54 return s_measAcc(*this).size();
55 }

◆ uncalibratedMeasurement()

setCovMatrix const xAOD::UncalibratedMeasurement * xAOD::TrackMeasurement_v1::uncalibratedMeasurement ( ) const

access the uncalibrated measurement

Definition at line 23 of file TrackMeasurement_v1.cxx.

23 {
24 static const SG::ConstAccessor<const xAOD::UncalibratedMeasurement *> acc("uncalibratedMeasurement");
25 return acc.isAvailable(*this) ? acc(*this) : nullptr;
26 }
SG::ConstAccessor< T, ALLOC > ConstAccessor
Definition AuxElement.h:570
static const SG::AuxElement::Accessor< ElementLink< IParticleContainer > > acc("originalObjectLink")
Object used for setting/getting the dynamic decoration in question.

Member Data Documentation

◆ s_covMatrixAcc

const SG::AuxElement::Accessor< std::vector< double > > xAOD::TrackMeasurement_v1::s_covMatrixAcc
staticprivate

Definition at line 115 of file TrackMeasurement_v1.h.

◆ s_measAcc

const SG::AuxElement::Accessor< std::vector< double > > xAOD::TrackMeasurement_v1::s_measAcc
staticprivate

Definition at line 114 of file TrackMeasurement_v1.h.


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