Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHActsKDTreeSeeding.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHActsKDTreeSeeding.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef PHACTSKDTREESEEDING_H
4 #define PHACTSKDTREESEEDING_H
5 
6 #include <trackbase/SpacePoint.h>
7 
8 #include <fun4all/SubsysReco.h>
9 
10 #include <trackbase/ActsGeometry.h>
12 
16 
17 #include <string>
18 
19 class PHCompositeNode;
21 class ActsGeometry;
23 class TrackSeedContainer;
24 class TrkrCluster;
26 class TrackSeed;
27 
29 {
30  public:
31  PHActsKDTreeSeeding(const std::string& name = "PHActsKDTreeSeeding");
32 
33  ~PHActsKDTreeSeeding() override;
34 
35  int Init(PHCompositeNode* topNode) override;
36  int InitRun(PHCompositeNode* topNode) override;
37  int process_event(PHCompositeNode* topNode) override;
38  int End(PHCompositeNode* topNode) override;
39 
40  void useTruthClusters(bool truth) { m_useTruthClusters = truth; }
41 
42  private:
43  void configureSeedFinder();
44  int getNodes(PHCompositeNode* topNode);
45  int createNodes(PHCompositeNode* topNode);
48  std::vector<const SpacePoint*> getMvtxSpacePoints();
50  const TrkrDefs::cluskey key,
51  TrkrCluster* clus);
52 
55  void findInttMatches(std::map<TrkrDefs::cluskey, Acts::Vector3>& clusters,
56  TrackSeed& seed);
57 
58  void matchInttClusters(std::map<TrkrDefs::cluskey, Acts::Vector3>& clusters,
59  const double xProj[],
60  const double yProj[],
61  const double zProj[]);
62 
66 
79 
81  float m_maxSeedsPerSpM = 1;
82  float m_cotThetaMax = 2.9;
83  float m_sigmaScattering = 5;
84  float m_radLengthPerSeed = 0.05;
85  float m_minPt = 100.; // MeV
86  float m_bFieldInZ = 0.0014; // kTesla
87  float m_beamPosX = 0;
88  float m_beamPosY = 0;
89 
92 
96 
97  int m_nIteration = 0;
98  std::string m_trackMapName = "SiliconTrackSeedContainer";
99  bool m_useTruthClusters = false;
100 
102  float m_uncfactor = 3.175;
103  const static int m_nInttLayers = 4;
105  float m_rPhiSearchWin = 0.1;
106 
112 };
113 
114 #endif // PHACTSKDTREESEEDING_H