ATLAS Offline Software
Loading...
Searching...
No Matches
P5toP4JacobianPhiThetaEM2PxPyPzE.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 <math.h>
7
9 const double theta,
10 const double E,
11 const double mass ):
12 CLHEP::HepMatrix(4,5,0)
13{
14 double sinp = sin(phi0);
15 double cosp = cos(phi0);
16 double sint = sin(theta);
17 double cost = cos(theta);
18 double mom = sqrt((E*E)-(mass*mass));
19
20 // transformation of track parameters
21 double px = mom*cosp*sint;
22 double py = mom*sinp*sint;
23 double pz = mom*cost;
24 double EoverP = E/mom;
25
26
27 (*this)[0][2] = -py; // dpx/dphi0
28 (*this)[0][3] = pz*cosp; // dpx/dtheta
29 (*this)[0][4] = EoverP*sint*cosp; // dpx/E
30
31 (*this)[1][2] = px; // dpy/dphi0
32 (*this)[1][3] = pz*sinp; // dpy/dtheta
33 (*this)[1][4] = EoverP*sint*sinp; // dpy/dE
34
35 (*this)[2][3] = -sint*mom; // dpz/dtheta
36 (*this)[2][4] = EoverP*cost; // dpz/dE
37
38 (*this)[3][4] = 1.; // dE/dE
39
40}
41
Scalar theta() const
theta method
P5toP4JacobianPhiThetaEM2PxPyPzE(const double phi0, const double theta, const double E, const double mass=ParticleConstants::muonMassInMeV)
int cost(std::vector< std::string > &files, node &n, const std::string &directory="", bool deleteref=false, bool relocate=false)
Definition hcg.cxx:922