3 #include <FairLogger.h>
5 #include <Math/Point3D.h>
6 #include <Math/Vector3D.h>
9 #include <TMatrixTUtils.h>
19 return std::make_unique<AtHitCluster>(*
this);
26 fPositionVariance.SetCoordinates(0, 0, 0);
69 std::array<double, 3> hitPos{}, oldPos{}, pos{};
76 for (
int i = 0; i < 3; ++i)
77 for (
int j = 0; j < i; ++j) {
88 std::array<double, 3> weight{}, totalWeight{}, totalWeight2{};
91 fWeight.GetCoordinates(weight.begin());
96 for (
int i = 0; i < 3; ++i) {
97 fCovNumerator(i, i) += weight[i] * (hitPos[i] - pos[i]) * (hitPos[i] - oldPos[i]);
98 LOG(debug) <<
"Numerator_" << i <<
": " <<
fCovNumerator(i, i);
142 LOG(debug) <<
"w: " <<
fWeight;
145 LOG(debug) <<
"Q: " <<
fCharge;