ATLAS Offline Software
|
#include <CurvilinearParametersT.h>
Public Member Functions | |
CurvilinearParametersT ()=default | |
default constructor only for POOL More... | |
CurvilinearParametersT (const AmgVector(DIM+2) ¶meters, std::optional< AmgSymMatrix(DIM)> covariance=std::nullopt, unsigned int cIdenfier=0) | |
Create CurvilinearParametersT from DIM+2 parameters. More... | |
CurvilinearParametersT (const Amg::Vector3D &pos, double phi, double theta, double qOverP, std::optional< AmgSymMatrix(DIM)> covariance=std::nullopt, unsigned int cIdenfier=0) | |
Create CurvilinearParametersT from mixed parameters: pos, local parameters. More... | |
CurvilinearParametersT (const Amg::Vector3D &pos, const Amg::Vector3D &mom, double charge, std::optional< AmgSymMatrix(DIM)> covariance=std::nullopt, unsigned int cIdenfier=0) | |
Create CurvilinearParametersT from global parameters. More... | |
CurvilinearParametersT (const CurvilinearParametersT< DIM, T, S > &)=default | |
Copy Constructor. More... | |
CurvilinearParametersT (CurvilinearParametersT< DIM, T, S > &&) noexcept=default | |
Move Constructor. More... | |
CurvilinearParametersT< DIM, T, S > & | operator= (const CurvilinearParametersT< DIM, T, S > &)=default |
Assignment operator. More... | |
CurvilinearParametersT< DIM, T, S > & | operator= (CurvilinearParametersT< DIM, T, S > &&) noexcept=default |
Move assignment operator. More... | |
virtual | ~CurvilinearParametersT ()=default |
Destructor. More... | |
unsigned int | cIdentifier () const |
the curvilinear parameters identifier More... | |
void | setcIdentifier (unsigned int cIdentifier) |
virtual bool | hasSurface () const override final |
Test to see if there's a surface there. More... | |
virtual const S & | associatedSurface () const override final |
Access to the Surface method. More... | |
virtual bool | operator== (const ParametersBase< DIM, T > &rhs) const override final |
equality operator More... | |
virtual CurvilinearParametersT< DIM, T, S > * | clone () const override final |
Virtual clone. More... | |
constexpr virtual ParametersType | type () const override final |
Return the ParametersType enum. More... | |
constexpr virtual SurfaceType | surfaceType () const override final |
Return the Surface Type enum. More... | |
virtual Amg::RotationMatrix3D | measurementFrame () const override final |
Return the measurementFrame of the parameters. More... | |
virtual MsgStream & | dump (MsgStream &out) const override final |
Dumps relevant information about the track parameters into the ostream. More... | |
virtual std::ostream & | dump (std::ostream &out) const override final |
double | charge () const |
Returns the charge. More... | |
const Amg::Vector3D & | position () const |
Access method for the position. More... | |
const Amg::Vector3D & | momentum () const |
Access method for the momentum. More... | |
double | pT () const |
Access method for transverse momentum. More... | |
double | eta () const |
Access method for pseudorapidity - from momentum. More... | |
std::unique_ptr< ParametersBase< DIM, T > > | uniqueClone () const |
clone method for polymorphic deep copy returning unique_ptr; it is not overriden, but uses the existing clone method. More... | |
const | AmgVector (DIM) ¶meters() const |
Access methods for the parameters. More... | |
AmgVector (DIM) ¶meters() | |
const | AmgSymMatrix (DIM) *covariance() const |
Access method for the covariance matrix - returns nullptr if no covariance matrix is given. More... | |
AmgSymMatrix (DIM) *covariance() | |
constexpr bool | isCharged () const |
Returns true if Charged or false if Neutral. More... | |
Amg::Vector2D | localPosition () const |
Access method for the local coordinates, \((loc1,loc2)\) local parameter definitions differ for each surface type. More... | |
void | setParameters (const AmgVector(DIM) ¶m) |
set parameters More... | |
void | setCovariance (const AmgSymMatrix(DIM) &cov) |
set covariance More... | |
void | updateParameters (const AmgVector(DIM) &, const AmgSymMatrix(DIM) &) |
Update parameters and covariance , passing covariance by ref. More... | |
void | updateParameters (const AmgVector(DIM) &) |
Update parameters. More... | |
Static Public Attributes | |
static constexpr int | dim = DIM |
Protected Member Functions | |
AmgVector (DIM) m_parameters | |
contains the n x n covariance matrix More... | |
Protected Attributes | |
S | m_surface |
surface template More... | |
unsigned int | m_cIdentifier = 0 |
the curvilinear parameters identifier More... | |
Amg::Vector3D | m_position |
point on track More... | |
Amg::Vector3D | m_momentum |
momentum at this point on track More... | |
std::optional< AmgSymMatrix(DIM)> | m_covariance = std::nullopt |
charge definition for this track More... | |
T | m_chargeDef {} |
charge definition for this track More... | |
Private Member Functions | |
virtual void | updateParametersHelper (const AmgVector(DIM) &) override final |
contains the n parameters More... | |
CurvilinearUVT | curvilinearFrame () const |
return the curvilinear frame More... | |
Friends | |
template<typename pars > | |
class | ::TrackParametersCovarianceCnv |
class | ::TrackParametersCnv_p2 |
class | ::MeasuredPerigeeCnv_p1 |
class | MaterialEffectsEngine |
DESIGN TO BE REVISITED. More... | |
The specialised class for charged and neutral track parameters in the curvilinear frame.
The method parameters() returns a vector of the track parameters, defined as: \(\left(\begin{array}{c} locX\\locY\\\phi\\\theta\\q/p \end{array}\right)\)
The following is true per definition:
DIM | number of track parameters (usually 5) |
T | charge of track (either Trk::Charged or Trk::Neutral ) |
Definition at line 47 of file CurvilinearParametersT.h.
|
default |
default constructor only for POOL
Trk::CurvilinearParametersT< DIM, T, S >::CurvilinearParametersT | ( | const AmgVector(DIM+2) & | parameters, |
std::optional< AmgSymMatrix(DIM)> | covariance = std::nullopt , |
||
unsigned int | cIdenfier = 0 |
||
) |
Create CurvilinearParametersT from DIM+2 parameters.
Trk::CurvilinearParametersT< DIM, T, S >::CurvilinearParametersT | ( | const Amg::Vector3D & | pos, |
double | phi, | ||
double | theta, | ||
double | qOverP, | ||
std::optional< AmgSymMatrix(DIM)> | covariance = std::nullopt , |
||
unsigned int | cIdenfier = 0 |
||
) |
Create CurvilinearParametersT from mixed parameters: pos, local parameters.
Trk::CurvilinearParametersT< DIM, T, S >::CurvilinearParametersT | ( | const Amg::Vector3D & | pos, |
const Amg::Vector3D & | mom, | ||
double | charge, | ||
std::optional< AmgSymMatrix(DIM)> | covariance = std::nullopt , |
||
unsigned int | cIdenfier = 0 |
||
) |
Create CurvilinearParametersT from global parameters.
– it will throw a GaudiException if the position is not on surface
|
default |
Copy Constructor.
|
defaultnoexcept |
Move Constructor.
|
virtualdefault |
Destructor.
|
inherited |
|
inherited |
Access method for the covariance matrix - returns nullptr if no covariance matrix is given.
|
inherited |
|
inherited |
Access methods for the parameters.
|
protectedinherited |
contains the n x n covariance matrix
|
finaloverridevirtual |
Access to the Surface method.
Implements Trk::ParametersBase< DIM, T >.
|
inherited |
Returns the charge.
unsigned int Trk::CurvilinearParametersT< DIM, T, S >::cIdentifier | ( | ) | const |
the curvilinear parameters identifier
|
finaloverridevirtual |
Virtual clone.
Implements Trk::ParametersBase< DIM, T >.
|
private |
return the curvilinear frame
|
finaloverridevirtual |
Dumps relevant information about the track parameters into the ostream.
Reimplemented from Trk::ParametersBase< DIM, T >.
|
finaloverridevirtual |
Reimplemented from Trk::ParametersBase< DIM, T >.
|
inherited |
Access method for pseudorapidity - from momentum.
|
finaloverridevirtual |
Test to see if there's a surface there.
Implements Trk::ParametersBase< DIM, T >.
|
constexprinherited |
|
inherited |
Access method for the local coordinates, \((loc1,loc2)\) local parameter definitions differ for each surface type.
|
finaloverridevirtual |
Return the measurementFrame of the parameters.
Implements Trk::ParametersBase< DIM, T >.
|
inherited |
Access method for the momentum.
|
default |
Assignment operator.
|
defaultnoexcept |
Move assignment operator.
|
finaloverridevirtual |
equality operator
Reimplemented from Trk::ParametersBase< DIM, T >.
|
inherited |
Access method for the position.
|
inherited |
Access method for transverse momentum.
void Trk::CurvilinearParametersT< DIM, T, S >::setcIdentifier | ( | unsigned int | cIdentifier | ) |
|
inherited |
set covariance
|
inherited |
set parameters
|
constexprfinaloverridevirtual |
Return the Surface Type enum.
Implements Trk::ParametersBase< DIM, T >.
|
constexprfinaloverridevirtual |
Return the ParametersType enum.
Implements Trk::ParametersBase< DIM, T >.
|
inlineinherited |
clone method for polymorphic deep copy returning unique_ptr; it is not overriden, but uses the existing clone method.
Definition at line 97 of file ParametersBase.h.
|
inherited |
Update parameters.
Derived classes override the implementation via updateParametersHelper as this could possibly lead to updating other data members
|
inherited |
Update parameters and covariance , passing covariance by ref.
A covariance is created if one does not exist. Otherwise in place update occurs via assignment.
Derived classes override the implementation via updateParametersHelper as this could possibly lead to updating other data members
|
finaloverrideprivatevirtual |
contains the n parameters
Implements Trk::ParametersBase< DIM, T >.
|
friend |
Definition at line 151 of file CurvilinearParametersT.h.
|
friend |
Definition at line 150 of file CurvilinearParametersT.h.
|
friend |
Definition at line 149 of file CurvilinearParametersT.h.
|
friend |
DESIGN TO BE REVISITED.
Definition at line 154 of file CurvilinearParametersT.h.
|
staticconstexprinherited |
Definition at line 50 of file ParametersCommon.h.
|
protectedinherited |
charge definition for this track
Definition at line 149 of file ParametersCommon.h.
|
protected |
the curvilinear parameters identifier
Definition at line 144 of file CurvilinearParametersT.h.
|
protectedinherited |
charge definition for this track
Definition at line 147 of file ParametersCommon.h.
|
protectedinherited |
momentum at this point on track
Definition at line 141 of file ParametersBase.h.
|
protectedinherited |
point on track
Definition at line 140 of file ParametersBase.h.
|
protected |
surface template
Definition at line 142 of file CurvilinearParametersT.h.