ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::JacobianCartesianToPerigee Class Reference

Jacobian from cartesian parameters \( (p_x, p_y, p_z, E, x, y, z) \) to perigee parameters \( (d_0, z_0, \phi_0, \theta, q/p) \). More...

#include <JacobianCartesianToPerigee.h>

Inheritance diagram for Trk::JacobianCartesianToPerigee:
Collaboration diagram for Trk::JacobianCartesianToPerigee:

Public Member Functions

 JacobianCartesianToPerigee (const double px, const double py, const double pz, const double E, const double x, const double y, const double z, const double charge)

Detailed Description

Jacobian from cartesian parameters \( (p_x, p_y, p_z, E, x, y, z) \) to perigee parameters \( (d_0, z_0, \phi_0, \theta, q/p) \).

It needs the particle charge to provide the correct perigee \( q/p \) sign.

Author
Maaik.nosp@m.e.Li.nosp@m.mper@.nosp@m.cern.nosp@m..ch

Definition at line 28 of file JacobianCartesianToPerigee.h.

Constructor & Destructor Documentation

◆ JacobianCartesianToPerigee()

Trk::JacobianCartesianToPerigee::JacobianCartesianToPerigee ( const double px,
const double py,
const double pz,
const double E,
const double x,
const double y,
const double z,
const double charge )

Definition at line 12 of file JacobianCartesianToPerigee.cxx.

12 :
13 AmgMatrix(5,7)()
14{
15 // initialize to zero
16 this->setZero();
17
18 double ptot = std::sqrt(px*px+py*py+pz*pz);
19 double pt = std::sqrt(px*px+py*py);
20
21 double tan_theta = pt/pz;
22
23 double cos_phi = px/pt;
24 double sin_phi = py/pt;
25
26 (*this)(0,4) = -sin_phi ; // dd0/dx
27 (*this)(0,5) = cos_phi ; // dd0/dy
28 (*this)(1,6) = 1.; // dz0/dz
29 (*this)(2,0) = -py/(px*px+py*py) ; // dphi/dpx
30 (*this)(2,1) = px/(px*px+py*py) ; // dphi/dpy
31 (*this)(3,0) = (cos_phi/pz)*(1./(1+tan_theta*tan_theta)); // dtheta/dpx
32 (*this)(3,1) = (sin_phi/pz)*(1./(1+tan_theta*tan_theta)); // dtheta/dpy
33 (*this)(3,2) = (-tan_theta/pz)*(1./(1+tan_theta*tan_theta)); // dtheta/dpz
34 (*this)(4,3) = -charge*E/(ptot*ptot*ptot); // dqOverP/dE
35
36}
double charge(const T &p)
Definition AtlasPID.h:997
#define AmgMatrix(rows, cols)
@ pz
global momentum (cartesian)
Definition ParamDefs.h:61
@ px
Definition ParamDefs.h:59
@ py
Definition ParamDefs.h:60

The documentation for this class was generated from the following files: