ATLAS Offline Software
Public Member Functions | List of all members
Trk::JacobianPxyzToPhiThetaQoverPcartesian Class Reference

Jacobian in cartesian coordinates for the transformation of momentum in Cartesian coordinates \( (px,py,pz,charge)\) to momentum in polar cordinates \((\phi,\theta,QoverP)\). More...

#include <JacobianPxyzToPhiThetaQoverPcartesian.h>

Inheritance diagram for Trk::JacobianPxyzToPhiThetaQoverPcartesian:
Collaboration diagram for Trk::JacobianPxyzToPhiThetaQoverPcartesian:

Public Member Functions

 JacobianPxyzToPhiThetaQoverPcartesian (const double px, const double py, const double pz, double charge)
 
 ~JacobianPxyzToPhiThetaQoverPcartesian ()
 

Detailed Description

Jacobian in cartesian coordinates for the transformation of momentum in Cartesian coordinates \( (px,py,pz,charge)\) to momentum in polar cordinates \((\phi,\theta,QoverP)\).

The derivatives are:

Author
Tatja.nosp@m.na.L.nosp@m.enz@c.nosp@m.ern..nosp@m.ch

Definition at line 39 of file JacobianPxyzToPhiThetaQoverPcartesian.h.

Constructor & Destructor Documentation

◆ JacobianPxyzToPhiThetaQoverPcartesian()

Trk::JacobianPxyzToPhiThetaQoverPcartesian::JacobianPxyzToPhiThetaQoverPcartesian ( const double  px,
const double  py,
const double  pz,
double  charge 
)

Definition at line 12 of file JacobianPxyzToPhiThetaQoverPcartesian.cxx.

12  :
13  AmgMatrix(3,3)()
14 {
15  // initialize to zero
16  this->setZero();
17 
18  double r = std::pow(px,2) + std::pow(py,2) + std::pow(pz,2);
19  double l = std::pow(px,2) + std::pow(py,2);
20  (*this)(0,0) = -py/l;
21  (*this)(0,1) = px/l;
22  (*this)(0,2) = 0.;
23  (*this)(1,0) = px*pz/(r*std::sqrt(l));
24  (*this)(1,1) = py*pz/(r*std::sqrt(l));
25  (*this)(1,2) = -std::sqrt(l)/r;
26  (*this)(2,0) = -charge*px/std::pow(std::sqrt(r),3);
27  (*this)(2,1) = -charge*py/std::pow(std::sqrt(r),3);
28  (*this)(2,2) = -charge*pz/std::pow(std::sqrt(r),3);
29 
30 }

◆ ~JacobianPxyzToPhiThetaQoverPcartesian()

Trk::JacobianPxyzToPhiThetaQoverPcartesian::~JacobianPxyzToPhiThetaQoverPcartesian ( )
inline

Definition at line 42 of file JacobianPxyzToPhiThetaQoverPcartesian.h.

42 {}

The documentation for this class was generated from the following files:
beamspotman.r
def r
Definition: beamspotman.py:676
Trk::py
@ py
Definition: ParamDefs.h:60
Trk::AmgMatrix
AmgMatrix(3, 3) NeutralParticleParameterCalculator
Definition: NeutralParticleParameterCalculator.cxx:233
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
Trk::pz
@ pz
global momentum (cartesian)
Definition: ParamDefs.h:61
Trk::px
@ px
Definition: ParamDefs.h:59
charge
double charge(const T &p)
Definition: AtlasPID.h:756
pow
constexpr int pow(int base, int exp) noexcept
Definition: ap_fixedTest.cxx:15