ATLAS Offline Software
Loading...
Searching...
No Matches
EigenP5Jacobiand0z0PhiThetaqOverP2d0z0PhiEtaP.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
7
8#include <cmath>
9#include <algorithm>
10
12 AmgMatrix(5,5)()
13{
14
15 this->setIdentity();
16 (*this)(0,0) = 1.;
17 (*this)(1,1) = 1.;
18 (*this)(2,2) = 1.;
19 (*this)(3,3) = 1.;
20 (*this)(4,4) = 1.;
21
22 double sinp = std::sin(phi);
23
24 (*this)(3,0) = 0.; // deta/dd0
25 (*this)(3,1) = 0.; // deta/dz0
26 (*this)(3,2) = 0.; // deta/dphi
27 (*this)(3,3) =-1*(1./sinp); // deta/dtheta
28 (*this)(3,4) = 0.; // deta/d(q/p)
29
30 (*this)(4,0) = 0.; // dp/dd0
31 (*this)(4,1) = 0.; // dp/dz0
32 (*this)(4,2) = 0.; // dp/dphi
33 (*this)(4,3) = 0.; // dp/theeta
34 (*this)(4,4) = -1*charge*(momentum*momentum); // dp/d(q/p)
35
36}
Scalar phi() const
phi method
double charge(const T &p)
Definition AtlasPID.h:997
#define AmgMatrix(rows, cols)
EigenP5Jacobiand0z0PhiThetaqOverP2d0z0PhiEtaP(const double phi, const int charge, const double momentum)