CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
KarimakiAlignmentDerivatives.cc
Go to the documentation of this file.
1 
8 
10 
12  // Get track parameters on surface
14 
15  // [0] q/p : charged: charge (+ or - one) divided by magnitude of momentum
16  // neutral : inverse magnitude of momentum
17  // [1] dxdz : direction tangent in local xz-plane
18  // [2] dydz : direction tangent in local yz-plane
19  // [3] x : local x-coordinate
20  // [4] y : local y-coordinate
21 
22  double tanpsi = alivec[1];
23  double tantheta = alivec[2];
24  double ux = alivec[3];
25  double vx = alivec[4];
26 
27  AlgebraicMatrix aliderivs(6, 2);
28 
29  aliderivs[0][0] = -1.0;
30  aliderivs[0][1] = 0.0;
31  aliderivs[1][0] = 0.0;
32  aliderivs[1][1] = -1.0;
33  aliderivs[2][0] = tanpsi;
34  aliderivs[2][1] = tantheta;
35  aliderivs[3][0] = vx * tanpsi;
36  aliderivs[3][1] = vx * tantheta;
37  aliderivs[4][0] = -ux * tanpsi; // New beta sign convention
38  aliderivs[4][1] = -ux * tantheta; // New beta sign convention
39  aliderivs[5][0] = vx;
40  aliderivs[5][1] = -ux;
41 
42  return (aliderivs);
43 }
AlgebraicMatrix operator()(const TrajectoryStateOnSurface &tsos) const
const LocalTrajectoryParameters & localParameters() const
CLHEP::HepMatrix AlgebraicMatrix
ROOT::Math::SVector< double, 5 > AlgebraicVector5
AlgebraicVector5 mixedFormatVector() const