Changes in external/TrackCovariance/ObsTrk.cc [942a705:a0f5d71] in git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
external/TrackCovariance/ObsTrk.cc
r942a705 ra0f5d71 20 20 fGenPar.ResizeTo(5); 21 21 fGenParACTS.ResizeTo(6); 22 fGenParILC.ResizeTo(5); 22 23 fObsPar.ResizeTo(5); 23 24 fObsParACTS.ResizeTo(6); 25 fObsParILC.ResizeTo(5); 24 26 fCov.ResizeTo(5, 5); 25 27 fCovACTS.ResizeTo(6, 6); 28 fCovILC.ResizeTo(5, 5); 26 29 fGenPar = XPtoPar(x,p,Q); 27 30 fGenParACTS = ParToACTS(fGenPar); 31 fGenParILC = ParToILC(fGenPar); 28 32 /* 29 33 std::cout << "ObsTrk::ObsTrk: fGenPar"; … … 33 37 fObsPar = GenToObsPar(fGenPar, fGC); 34 38 fObsParACTS = ParToACTS(fObsPar); 39 fObsParILC = ParToILC(fObsPar); 35 40 fObsX = ParToX(fObsPar); 36 41 fObsP = ParToP(fObsPar); 37 42 fObsQ = ParToQ(fObsPar); 38 43 fCovACTS = CovToACTS(fCov); 44 fCovILC = CovToILC(fCov); 39 45 } 40 46 // … … 206 212 } 207 213 214 // Parameter conversion to ILC format 215 TVectorD ObsTrk::ParToILC(TVectorD Par) 216 { 217 TVectorD pILC(5); // Return vector 218 // 219 pILC(0) = Par(0)*1.0e3; // d0 in mm 220 pILC(1) = Par(1); // phi0 is unchanged 221 pILC(2) = -2 * Par(2)*1.0e-3; // w in mm^-1 222 pILC(3) = Par(3)*1.0e3; // z0 in mm 223 pILC(4) = Par(4); // tan(lambda) = cot(theta) 224 // 225 return pILC; 226 } 227 // Covariance conversion to ILC format 228 TMatrixDSym ObsTrk::CovToILC(TMatrixDSym Cov) 229 { 230 TMatrixDSym cILC(5); cILC.Zero(); 231 // 232 // Fill derivative matrix 233 TMatrixD A(5, 5); A.Zero(); 234 // 235 A(0, 0) = 1.0e3; // D-d0 in mm 236 A(1, 1) = 1.0; // phi0-phi0 237 A(2, 2) = -2.0e-3; // w-C 238 A(3, 3) = 1.0e3; // z0-z0 conversion to mm 239 A(4, 4) = 1.0; // tan(lambda) - cot(theta) 240 // 241 TMatrixDSym Cv = Cov; 242 TMatrixD At(5, 5); 243 At.Transpose(A); 244 Cv.Similarity(At); 245 cILC = Cv; 246 // 247 return cILC; 248 } 249 208 250 209 251
Note:
See TracChangeset
for help on using the changeset viewer.