ATLAS Offline Software
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
}
test_pyathena.px
px
Definition:
test_pyathena.py:18
max
#define max(a, b)
Definition:
cfImp.cxx:41
EigenP4JacobianPxPyPzE2PxPyPzM.h
AmgMatrix
#define AmgMatrix(rows, cols)
Definition:
EventPrimitives.h:49
TRTCalib_cfilter.p2
p2
Definition:
TRTCalib_cfilter.py:131
Amg::pz
@ pz
Definition:
GeoPrimitives.h:40
Amg::py
@ py
Definition:
GeoPrimitives.h:39
VP1PartSpect::E
@ E
Definition:
VP1PartSpectFlags.h:21
EigenP4JacobianPxPyPzE2PxPyPzM::EigenP4JacobianPxPyPzE2PxPyPzM
EigenP4JacobianPxPyPzE2PxPyPzM(double px, double py, double pz, double E)
Definition:
EigenP4JacobianPxPyPzE2PxPyPzM.cxx:10
Generated on Thu Nov 7 2024 21:14:21 for ATLAS Offline Software by
1.8.18