52 const ::cluster::ClusterParamsAlg& cluster2)
56 if (cluster1.GetHitVector().size() <
_min_hits || cluster2.GetHitVector().size() <
_min_hits)
59 bool FirstTrackSecondBlob =
false;
60 bool SecondTrackFirstBlob =
false;
66 if (FirstTrackSecondBlob) {
67 std::cout <<
"*********************************************" << std::endl;
68 std::cout <<
"First track second blob! First has params:" << std::endl;
69 std::cout <<
"Angle 2D = " << cluster1.GetParams().angle_2d << std::endl;
70 std::cout <<
"Opening Angle = " << cluster1.GetParams().opening_angle << std::endl;
71 std::cout <<
"Sum charge = " << cluster1.GetParams().sum_charge << std::endl;
72 std::cout <<
"Length = " << cluster1.GetParams().length << std::endl;
73 std::cout <<
"Width = " << cluster1.GetParams().width << std::endl;
74 std::cout <<
"N_Hits = " << cluster1.GetHitVector().size() << std::endl;
75 std::cout <<
"eigenvalue_principal = " << cluster1.GetParams().eigenvalue_principal
77 std::cout <<
"Second has params:" << std::endl;
78 std::cout <<
"Angle 2D = " << cluster2.GetParams().angle_2d << std::endl;
79 std::cout <<
"Opening Angle = " << cluster2.GetParams().opening_angle << std::endl;
80 std::cout <<
"Sum charge = " << cluster2.GetParams().sum_charge << std::endl;
81 std::cout <<
"Length = " << cluster2.GetParams().length << std::endl;
82 std::cout <<
"Width = " << cluster2.GetParams().width << std::endl;
83 std::cout <<
"N_Hits = " << cluster2.GetHitVector().size() << std::endl;
84 std::cout <<
"eigenvalue_principal = " << cluster2.GetParams().eigenvalue_principal
90 if (FirstTrackSecondBlob) {
91 std::pair<float, float> trackEndPoint =
92 std::pair<float, float>(cluster1.GetParams().end_point.w, cluster1.GetParams().end_point.t);
95 if (cluster2.GetParams().PolyObject.PointInside(trackEndPoint))
102 else if (SecondTrackFirstBlob) {
103 std::pair<float, float> trackEndPoint =
104 std::pair<float, float>(cluster2.GetParams().end_point.w, cluster2.GetParams().end_point.t);
107 if (cluster1.GetParams().PolyObject.PointInside(trackEndPoint))
132 if (cluster.GetParams().eigenvalue_principal >
_min_EP)
142 cluster.GetParams().eigenvalue_principal <
_min_EP)
Cluster finding and building.
This merge algo is looking for short tracks from the start of a shower that are overlapping a blob th...