Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ActsAlignmentStates.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file ActsAlignmentStates.h
1 #ifndef TRACKRECO_ACTSALIGNMENTSTATES_H
2 #define TRACKRECO_ACTSALIGNMENTSTATES_H
3 
4 #include <trackbase/TrkrDefs.h>
5 
7 
9 
13 
14 #include <trackbase/ActsGeometry.h>
18 
19 #include <string>
20 
21 class PHCompositeNode;
22 class SvtxTrack;
24 class ActsGeometry;
26 /*
27  * Helper class that contains functionality to fill alignment state
28  * map from Acts track fitter
29  */
31 {
32  public:
34 
37 
39  const std::vector<Acts::MultiTrajectoryTraits::IndexType>& tips,
40  SvtxTrack* track,
42  void verbosity(const int verb) { m_verbosity = verb; }
46  {
47  m_dcc_static = stat;
48  m_dcc_average = average;
49  m_dcc_fluctuation = fluc;
50  }
51  void actsGeometry(ActsGeometry* geom) { m_tGeometry = geom; }
52  void clusters(TrkrClusterContainer* clus) { m_clusterMap = clus; }
54  void fieldMap(std::string& fieldmap) {m_fieldMap = fieldmap; }
55 
56  private:
57  void makeTpcGlobalCorrections(TrkrDefs::cluskey cluster_key, short int crossing, Acts::Vector3& global);
58 
59  std::pair<Acts::Vector3, Acts::Vector3> get_projectionXY(const Acts::Surface& surface, const Acts::Vector3& tangent);
60  SvtxAlignmentState::GlobalMatrix makeGlobalDerivatives(const Acts::Vector3& OM, const std::pair<Acts::Vector3, Acts::Vector3>& projxy);
61 
62  int m_verbosity = 0;
63 
64  float sensorAngles[3] = {0.1, 0.1, 0.2}; // perturbation values for each alignment angle
65 
69 
77 };
78 
79 #endif