Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef JacobianCurvilinearToCartesian_H
0002 #define JacobianCurvilinearToCartesian_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 curvilinear to the Cartesian 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 JacobianCurvilinearToCartesian {
0015 public:
0016   /** Constructor from global trajectory parameters. NB!! No default constructor exists!
0017    */
0018 
0019   JacobianCurvilinearToCartesian(const GlobalTrajectoryParameters& globalParameters);
0020 
0021   /** Access to Jacobian.
0022    */
0023 
0024   const AlgebraicMatrix65& jacobian() const { return theJacobian; }
0025 
0026 private:
0027   AlgebraicMatrix65 theJacobian;
0028 };
0029 
0030 #endif  //JacobianCurvilinearToCartesian_H