ATLAS Offline Software
ProjectionMatricesSet.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // ProjectionMatricesSet.h, (c) ATLAS Detector software
8 
9 #ifndef TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
10 #define TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
11 
12 // Amg
14 // Trk
16 
18 namespace Trk {
19 
20 
30 
31  public:
33  ProjectionMatricesSet(int maxdim);
34 
36  const Amg::MatrixX& expansionMatrix(int mtx) const;
37 
39  const Amg::MatrixX& reductionMatrix(int mtx) const;
40 
42  int accessor(int mtx, ParamDefs par) const;
43 
44  private:
45  int m_maxdim;
46  std::vector<Amg::MatrixX> m_expansions;
47  std::vector<Amg::MatrixX> m_reductions;
48  std::vector<std::vector<int>> m_accessors;
49 
50  };
51 
52 inline const Amg::MatrixX& ProjectionMatricesSet::expansionMatrix(int mtx) const { return m_expansions[mtx]; }
53 
54 inline const Amg::MatrixX& ProjectionMatricesSet::reductionMatrix(int mtx) const { return m_reductions[mtx]; }
55 
56 inline int ProjectionMatricesSet::accessor(int mtx, ParamDefs par) const { return (par-(m_accessors[mtx])[par]); }
57 
58 } // end of namespace
59 
60 
61 #endif // TRKEVENTPRIMITIVES_PROJECTIONMATRICESSET_H
Trk::ProjectionMatricesSet::accessor
int accessor(int mtx, ParamDefs par) const
Accessors for members.
Definition: ProjectionMatricesSet.h:56
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:29
Trk::ProjectionMatricesSet
the matrices to access the variably-dimensioned local parameters and map them to the defined five tra...
Definition: ProjectionMatricesSet.h:29
Trk::ParamDefs
ParamDefs
Definition: ParamDefs.h:38
Trk::ProjectionMatricesSet::ProjectionMatricesSet
ProjectionMatricesSet(int maxdim)
Explicit constructor for 1-dimensional vector.
Definition: ProjectionMatricesSet.cxx:12
ParamDefs.h
Trk::ProjectionMatricesSet::m_expansions
std::vector< Amg::MatrixX > m_expansions
Definition: ProjectionMatricesSet.h:46
Trk::ProjectionMatricesSet::reductionMatrix
const Amg::MatrixX & reductionMatrix(int mtx) const
Reduction matrix return.
Definition: ProjectionMatricesSet.h:54
Trk::ProjectionMatricesSet::m_reductions
std::vector< Amg::MatrixX > m_reductions
Definition: ProjectionMatricesSet.h:47
Trk::ProjectionMatricesSet::m_maxdim
int m_maxdim
Definition: ProjectionMatricesSet.h:45
Trk::ProjectionMatricesSet::expansionMatrix
const Amg::MatrixX & expansionMatrix(int mtx) const
Expansion matrix return.
Definition: ProjectionMatricesSet.h:52
EventPrimitives.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
Trk::ProjectionMatricesSet::m_accessors
std::vector< std::vector< int > > m_accessors
Definition: ProjectionMatricesSet.h:48