ATLAS Offline Software
Loading...
Searching...
No Matches
Event
FourMom
src
EigenP4JacobianPxPyPzE2PxPyPzM.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
FourMom/EigenP4JacobianPxPyPzE2PxPyPzM.h
"
6
7
#include <cmath>
8
#include <algorithm>
9
10
EigenP4JacobianPxPyPzE2PxPyPzM::EigenP4JacobianPxPyPzE2PxPyPzM
(
double
px,
11
double
py,
12
double
pz,
13
double
E) :
14
AmgMatrix
(4,4)()
15
{
16
double
pt2 = px*px + py*py;
17
double
p2 = pt2 + pz*pz;
18
double
M = std::sqrt( std::max( 0., E*E - p2));
19
this->setZero();
20
21
(*this)(0,0) = 1;
// dpx/dpx
22
(*this)(1,1) = 1;
// dpy/dpy
23
(*this)(2,2) = 1;
// dpz/dpz
24
25
(*this)(3,0) = -px/M;
// dM/dpx
26
(*this)(3,1) = -py/M;
// dM/dpy
27
(*this)(3,2) = -pz/M;
// dM/dpz
28
(*this)(3,3) = E/M;
// dM/dE
29
}
EigenP4JacobianPxPyPzE2PxPyPzM.h
AmgMatrix
#define AmgMatrix(rows, cols)
Definition
EventPrimitives.h:49
EigenP4JacobianPxPyPzE2PxPyPzM::EigenP4JacobianPxPyPzE2PxPyPzM
EigenP4JacobianPxPyPzE2PxPyPzM(double px, double py, double pz, double E)
Definition
EigenP4JacobianPxPyPzE2PxPyPzM.cxx:10
Generated on
for ATLAS Offline Software by
1.14.0