ATLAS Offline Software
EigenP5toP4JacobianPhiThetaEM2PxPyPzE.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 #include <cmath>
7 
9  const double theta,
10  const double E,
11  const double mass ):
12  AmgMatrix(4,5)()
13 {
14  this->setZero();
15  double sinp = std::sin(phi0);
16  double cosp = std::cos(phi0);
17  double sint = std::sin(theta);
18  double cost = std::cos(theta);
19  double mom = std::sqrt((E*E)-(mass*mass));
20 
21  // transformation of track parameters
22  double px = mom*cosp*sint;
23  double py = mom*sinp*sint;
24  double pz = mom*cost;
25  double EoverP = E/mom;
26 
27 
28  (*this)(0,2) = -py; // dpx/dphi0
29  (*this)(0,3) = pz*cosp; // dpx/dtheta
30  (*this)(0,4) = EoverP*sint*cosp; // dpx/E
31 
32  (*this)(1,2) = px; // dpy/dphi0
33  (*this)(1,3) = pz*sinp; // dpy/dtheta
34  (*this)(1,4) = EoverP*sint*sinp; // dpy/dE
35 
36  (*this)(2,3) = -sint*mom; // dpz/dtheta
37  (*this)(2,4) = EoverP*cost; // dpz/dE
38 
39  (*this)(3,4) = 1.; // dE/dE
40 
41 }
42 
cost
int cost(std::vector< std::string > &files, node &n, const std::string &directory="", bool deleteref=false, bool relocate=false)
Definition: hcg.cxx:921
test_pyathena.px
px
Definition: test_pyathena.py:18
Base_Fragment.mass
mass
Definition: Sherpa_i/share/common/Base_Fragment.py:59
EigenP5toP4JacobianPhiThetaEM2PxPyPzE::EigenP5toP4JacobianPhiThetaEM2PxPyPzE
EigenP5toP4JacobianPhiThetaEM2PxPyPzE(const double phi0, const double theta, const double E, const double mass=105.6583692)
Definition: EigenP5toP4JacobianPhiThetaEM2PxPyPzE.cxx:8
InDetAccessor::phi0
@ phi0
Definition: InDetAccessor.h:33
theta
Scalar theta() const
theta method
Definition: AmgMatrixBasePlugin.h:75
drawFromPickle.cos
cos
Definition: drawFromPickle.py:36
AmgMatrix
#define AmgMatrix(rows, cols)
Definition: EventPrimitives.h:49
ParticleGun_EoverP_Config.mom
mom
Definition: ParticleGun_EoverP_Config.py:63
EigenP5toP4JacobianPhiThetaEM2PxPyPzE.h
Amg::pz
@ pz
Definition: GeoPrimitives.h:40
Amg::py
@ py
Definition: GeoPrimitives.h:39
VP1PartSpect::E
@ E
Definition: VP1PartSpectFlags.h:21
AllowedVariables::EoverP
@ EoverP
Definition: AsgElectronSelectorTool.cxx:56
drawFromPickle.sin
sin
Definition: drawFromPickle.py:36