Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:31:26

0001 #ifndef JacobianCartesianToCurvilinear_H
0002 #define JacobianCartesianToCurvilinear_H
0003 
0004 #include "DataFormats/Math/interface/AlgebraicROOTObjects.h"
0005 
0006 class GlobalTrajectoryParameters;
0007 
0008 /** Class which calculates the Jacobian matrix of the transformation
0009  *  from the Cartesian to the curvilinear frame. The Jacobian is calculated
0010  *  during construction and thereafter cached, enabling reuse of the same
0011  *  Jacobian without calculating it again.
0012  */
0013 
0014 class JacobianCartesianToCurvilinear {
0015 public:
0016   /** Constructor from global trajectory parameters. NB!! No default constructor exists!
0017    */
0018 
0019   JacobianCartesianToCurvilinear(const GlobalTrajectoryParameters& globalParameters);
0020 
0021   /** Access to Jacobian.
0022    */
0023 
0024   const AlgebraicMatrix56& jacobian() const { return theJacobian; }
0025 
0026 private:
0027   AlgebraicMatrix56 theJacobian;
0028 };
0029 
0030 #endif  //JacobianCartesianToCurvilinear_H