41 TMatrixT<double> returnMat(2,1);
48 returnMat[0][0] = rC[6][0];
49 returnMat[1][0] = rC[7][0];
58 TMatrixT<double> returnCov(2,2);
61 returnCov[0][0] = rawCov[6][6];
62 returnCov[1][0] = rawCov[7][6];
63 returnCov[0][1] = rawCov[6][7];
64 returnCov[1][1] = rawCov[7][7];
76 assert(rC.GetNrows()==8);
78 TVector3 wire1(rC[0][0], rC[1][0], rC[2][0]);
79 TVector3 wire2(rC[3][0], rC[4][0], rC[5][0]);
80 TVector3 wiredirection = wire1 - wire2;
82 TVector3 vaxis = plane.
getV();
83 wiredirection.SetMag(1.);
86 if(fabs(TMath::Abs(wiredirection.Dot(vaxis)) - 1) > 1
e-3)
89 std::cout <<
"GFWirepointHitPolicy: plane not valid!!" << std::endl;
99 assert(x.GetNrows()==8);
100 TVector3 wire1(x[0][0],x[1][0],x[2][0]);
101 TVector3 wire2(x[3][0],x[4][0],x[5][0]);
109 TVector3 poca, poca_onwire, dirInPoca;
115 distance = TMath::Sqrt(fabs(((wire1-poca).Mag2()*(wire2-wire1).Mag2()-pow((wire1-poca).Dot(wire2-wire1),2))/(wire2-wire1).Mag2()));
119 GFException exc(
"distance poca-wire > maxdistance", __LINE__,__FILE__);
126 TVector3 fromwiretoextr = poca - poca_onwire;
127 fromwiretoextr.SetMag(1.);
129 TVector3 wiredirection = wire2 - wire1;
130 wiredirection.SetMag(1.);
133 if(fabs(fromwiretoextr * wiredirection) > 1
e-3) {
134 GFException exc(
"fromwiretoextr*wiredirection > 1e-3", __LINE__,__FILE__);
145 TVector3
O = (wire1 + wire2) * 0.5;