ATLAS Offline Software
Loading...
Searching...
No Matches
P4JacobianPxPyPzE2EEtaPhiM Class Reference

#include <P4JacobianPxPyPzE2EEtaPhiM.h>

Inheritance diagram for P4JacobianPxPyPzE2EEtaPhiM:
Collaboration diagram for P4JacobianPxPyPzE2EEtaPhiM:

Public Member Functions

 P4JacobianPxPyPzE2EEtaPhiM (double px, double py, double pz, double E)

Detailed Description

Definition at line 10 of file P4JacobianPxPyPzE2EEtaPhiM.h.

Constructor & Destructor Documentation

◆ P4JacobianPxPyPzE2EEtaPhiM()

P4JacobianPxPyPzE2EEtaPhiM::P4JacobianPxPyPzE2EEtaPhiM ( double px,
double py,
double pz,
double E )

Definition at line 10 of file P4JacobianPxPyPzE2EEtaPhiM.cxx.

13 :
14 HepMatrix(4,4,0)
15{
16 double pt2 = px*px + py*py;
17 double p2 = pt2 + pz*pz;
18 double p = std::sqrt(p2);
19 double M = std::sqrt( std::max( 0., E*E - p2));
20
21 (*this)[0][3] = 1; // dE/dE
22
23 (*this)[1][0] = -px*pz/(p*pt2); // deta/dpx
24 (*this)[1][1] = -py*pz/(p*pt2); // deta/dpy
25 (*this)[1][2] = 1/p; // deta/dpz
26
27 (*this)[2][0] = -py/pt2; // dphi/dpx
28 (*this)[2][1] = px/pt2; // dphi/dpy
29
30 (*this)[3][0] = -px/M; // dM/dpx
31 (*this)[3][1] = -py/M; // dM/dpy
32 (*this)[3][2] = -pz/M; // dM/dpz
33 (*this)[3][3] = E/M; // dM/dE
34}

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