Changes in / [97ef971:f9aeea6] in git
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
classes/DelphesClasses.cc
r97ef971 rf9aeea6 139 139 PositionError(0.0, 0.0, 0.0, 0.0), 140 140 Area(0.0, 0.0, 0.0, 0.0), 141 TrackCovariance (5),141 TrackCovarianceACTS(6), 142 142 L(0), 143 143 D0(0), ErrorD0(0), 144 144 DZ(0), ErrorDZ(0), 145 145 P(0), ErrorP(0), 146 C(0), ErrorC(0),147 146 PT(0), ErrorPT(0), 148 147 CtgTheta(0), ErrorCtgTheta(0), … … 314 313 object.P = P; 315 314 object.ErrorP = ErrorP; 316 object.C = C;317 object.ErrorC = ErrorC;318 315 object.PT = PT; 319 316 object.ErrorPT = ErrorPT; … … 380 377 object.SoftDroppedSubJet1 = SoftDroppedSubJet1; 381 378 object.SoftDroppedSubJet2 = SoftDroppedSubJet2; 382 object.TrackCovariance = TrackCovariance;379 object.TrackCovarianceACTS = TrackCovarianceACTS; 383 380 object.fFactory = fFactory; 384 381 object.fArray = 0; … … 437 434 InitialPosition.SetXYZT(0.0, 0.0, 0.0, 0.0); 438 435 Area.SetXYZT(0.0, 0.0, 0.0, 0.0); 439 TrackCovariance .Zero();436 TrackCovarianceACTS.Zero(); 440 437 L = 0.0; 441 438 ErrorT = 0.0; … … 446 443 P = 0.0; 447 444 ErrorP = 0.0; 448 C = 0.0;449 ErrorC = 0.0;450 445 PT = 0.0; 451 446 ErrorPT = 0.0; -
classes/DelphesClasses.h
r97ef971 rf9aeea6 651 651 652 652 Float_t L; // path length 653 Float_t DZ;654 Float_t ErrorDZ;655 653 Float_t ErrorT; // path length 656 654 Float_t D0; 657 655 Float_t ErrorD0; 658 Float_t C;659 Float_t Error C;656 Float_t DZ; 657 Float_t ErrorDZ; 660 658 Float_t P; 661 659 Float_t ErrorP; … … 702 700 Float_t SumPt; 703 701 704 // ACTS compliant 6x6 track covariance (D 0, phi, Curvature, dz, ctg(theta))705 706 TMatrixDSym TrackCovariance ;702 // ACTS compliant 6x6 track covariance (D, z0, phi0, theta, q/p, time) 703 704 TMatrixDSym TrackCovarianceACTS; 707 705 708 706 // vertex variables -
external/TrackCovariance/ObsTrk.cc
r97ef971 rf9aeea6 20 20 fGenPar.ResizeTo(5); 21 21 fGenParACTS.ResizeTo(6); 22 fGenParILC.ResizeTo(5);23 22 fObsPar.ResizeTo(5); 24 23 fObsParACTS.ResizeTo(6); 25 fObsParILC.ResizeTo(5);26 24 fCov.ResizeTo(5, 5); 27 25 fCovACTS.ResizeTo(6, 6); 28 fCovILC.ResizeTo(5, 5);29 26 fGenPar = XPtoPar(x,p,Q); 30 27 fGenParACTS = ParToACTS(fGenPar); 31 fGenParILC = ParToILC(fGenPar);32 28 /* 33 29 std::cout << "ObsTrk::ObsTrk: fGenPar"; … … 37 33 fObsPar = GenToObsPar(fGenPar, fGC); 38 34 fObsParACTS = ParToACTS(fObsPar); 39 fObsParILC = ParToILC(fObsPar);40 35 fObsX = ParToX(fObsPar); 41 36 fObsP = ParToP(fObsPar); 42 37 fObsQ = ParToQ(fObsPar); 43 38 fCovACTS = CovToACTS(fCov); 44 fCovILC = CovToILC(fCov);45 39 } 46 40 // … … 212 206 } 213 207 214 // Parameter conversion to ILC format215 TVectorD ObsTrk::ParToILC(TVectorD Par)216 {217 TVectorD pILC(5); // Return vector218 //219 pILC(0) = Par(0)*1.0e3; // d0 in mm220 pILC(1) = Par(1); // phi0 is unchanged221 pILC(2) = -2 * Par(2)*1.0e-3; // w in mm^-1222 pILC(3) = Par(3)*1.0e3; // z0 in mm223 pILC(4) = Par(4); // tan(lambda) = cot(theta)224 //225 return pILC;226 }227 // Covariance conversion to ILC format228 TMatrixDSym ObsTrk::CovToILC(TMatrixDSym Cov)229 {230 TMatrixDSym cILC(5); cILC.Zero();231 //232 // Fill derivative matrix233 TMatrixD A(5, 5); A.Zero();234 //235 A(0, 0) = 1.0e3; // D-d0 in mm236 A(1, 1) = 1.0; // phi0-phi0237 A(2, 2) = -2.0e-3; // w-C238 A(3, 3) = 1.0e3; // z0-z0 conversion to mm239 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 250 208 251 209 -
external/TrackCovariance/ObsTrk.h
r97ef971 rf9aeea6 29 29 TVector3 fObsP; // Observed track momentum @ track minimum approach 30 30 TVectorD fGenPar; // Generated helix track parameters (D, phi0, C, z0, cot(th)) 31 TVectorD fGenParACTS; // Generated helix track parameters (D, z0, phi0, th, q/p, time 32 TVectorD fGenParILC; // Generated helix track parameters (w, phi0, d0, z0, tan(lambda)) 31 TVectorD fGenParACTS; // Generated helix track parameters (D, z0, phi0, th, q/p, time) 33 32 TVectorD fObsPar; // Observed helix track parameters (D, phi0, C, z0, cot(th)) 34 TVectorD fObsParACTS; // Observed helix track parameters (D, z0, phi0, th, q/p, time 35 TVectorD fObsParILC; // Observed helix track parameters (d0, phi0, w, z0, tan(lambda)) 33 TVectorD fObsParACTS; // Observed helix track parameters (D, z0, phi0, th, q/p, time) 36 34 TMatrixDSym fCov; // INterpolated covariance of track parameters 37 35 TMatrixDSym fCovACTS; // Covariance of track parameters in ACTS format 38 36 // (D, z0, phi0, theta, q/p, time) 39 TMatrixDSym fCovILC; // Covariance of track parameters in ILC format40 // (d0, phi0, w, z0, tan(lambda))41 37 // 42 38 // Conversion to ACTS parametrization 43 39 // 44 40 TVectorD ParToACTS(TVectorD Par); // Parameter conversion 45 TMatrixDSym CovToACTS(TMatrixDSym Cov); // Covariance 46 // 47 // Conversion to ILC parametrization 48 // 49 TVectorD ParToILC(TVectorD Par); // Parameter conversion 50 TMatrixDSym CovToILC(TMatrixDSym Cov); // Covariance conversion 41 TMatrixDSym CovToACTS(TMatrixDSym Cov); // Covariance conversion 51 42 // 52 43 public: … … 77 68 // D, z0, phi0, theta, q/p, time 78 69 TVectorD GetGenParACTS() { return fGenParACTS; } 79 // d0, phi0, w, z0, tan(lambda)80 TVectorD GetGenParILC() { return fGenParILC; }81 70 // Observed level X, P, Q 82 71 Double_t GetObsQ() { return fObsQ; } … … 87 76 // D, z0, phi0, theta, q/p, time 88 77 TVectorD GetObsParACTS() { return fObsParACTS; } 89 // d0, phi0, w, z0, tan(lambda)90 TVectorD GetObsParILC() { return fObsParILC; }91 78 // Covariances 92 79 TMatrixDSym GetCov(){ return fCov; } 93 TMatrixDSym GetCovACTS(){ return fCovACTS; } 94 TMatrixDSym GetCovILC(){ return fCovILC; } 80 TMatrixDSym GetCovACTS(){ return fCovACTS; }; 95 81 }; 96 82 -
modules/TrackCovariance.cc
r97ef971 rf9aeea6 96 96 Candidate *candidate, *mother; 97 97 Double_t mass, p, pt, q, ct; 98 Double_t dd0, ddz, dphi, dct, dp, dpt , dC;98 Double_t dd0, ddz, dphi, dct, dp, dpt; 99 99 100 100 … … 115 115 candidate->InitialPosition.SetXYZT(track.GetObsX().X(),track.GetObsX().Y(),track.GetObsX().Z(),candidatePosition.T()); 116 116 117 // save full covariance 5x5 matrix internally (D0, phi, Curvature, dz, ctg(theta))118 candidate->TrackCovariance = track.GetCov();117 // save full ACTS friendly covariance matrix internally (6x6: D, z0, phi0, theta, q/p, time) 118 candidate->TrackCovarianceACTS = track.GetCovACTS(); 119 119 120 120 pt = candidate->Momentum.Pt(); … … 128 128 129 129 candidate->D0 = track.GetObsPar()[0]; 130 candidate->DZ = track.GetObsPar()[3]; 131 candidate->P = track.GetObsP().Mag(); 132 candidate->CtgTheta = track.GetObsPar()[4]; 130 133 candidate->Phi = track.GetObsPar()[1]; 131 candidate->C = track.GetObsPar()[2]; 132 candidate->DZ = track.GetObsPar()[3]; 133 candidate->CtgTheta = track.GetObsPar()[4]; 134 candidate->P = track.GetObsP().Mag(); 134 135 135 candidate->PT = pt; 136 136 candidate->Charge = q; … … 142 142 dpt = 2 * TMath::Sqrt( track.GetCov()(2, 2))*pt*pt / (0.2998*fBz); 143 143 dp = TMath::Sqrt((1.+ct*ct)*dpt*dpt + 4*pt*pt*ct*ct*dct*dct/(1.+ct*ct)/(1.+ct*ct)); 144 dC = TMath::Sqrt(track.GetCov()(2, 2));145 144 146 145 candidate->ErrorD0 = dd0; 147 146 candidate->ErrorDZ = ddz; 148 147 candidate->ErrorP = dp; 149 candidate->ErrorC = dC;150 148 candidate->ErrorCtgTheta = dct; 151 149 candidate->ErrorPhi = dphi;
Note:
See TracChangeset
for help on using the changeset viewer.