ATLAS Offline Software
Loading...
Searching...
No Matches
Tracking
TrkEvent
TrkEventPrimitives
src
JacobianPxyzToPhiThetaQoverPcartesian.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// JacobianPxyzToPhiThetaQoverPcartesian.cxx, (c) ATLAS Detector software
8
9
#include "
TrkEventPrimitives/JacobianPxyzToPhiThetaQoverPcartesian.h
"
10
#include <cmath>
11
12
Trk::JacobianPxyzToPhiThetaQoverPcartesian::JacobianPxyzToPhiThetaQoverPcartesian
(
const
double
px
,
const
double
py
,
const
double
pz
,
double
charge
):
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
}
31
charge
double charge(const T &p)
Definition
AtlasPID.h:997
JacobianPxyzToPhiThetaQoverPcartesian.h
Trk::JacobianPxyzToPhiThetaQoverPcartesian::JacobianPxyzToPhiThetaQoverPcartesian
JacobianPxyzToPhiThetaQoverPcartesian(const double px, const double py, const double pz, double charge)
Definition
JacobianPxyzToPhiThetaQoverPcartesian.cxx:12
r
int r
Definition
globals.cxx:22
Trk::AmgMatrix
AmgMatrix(3, 3) NeutralParticleParameterCalculator
Definition
NeutralParticleParameterCalculator.cxx:231
Trk::pz
@ pz
global momentum (cartesian)
Definition
ParamDefs.h:61
Trk::px
@ px
Definition
ParamDefs.h:59
Trk::py
@ py
Definition
ParamDefs.h:60
Generated on
for ATLAS Offline Software by
1.14.0