Go to the documentation of this file.00001 #ifndef PerigeeConversions_H
00002 #define PerigeeConversions_H
00003
00004 #include "DataFormats/Math/interface/AlgebraicROOTObjects.h"
00005 #include "TrackingTools/TrajectoryState/interface/FreeTrajectoryState.h"
00006 #include "TrackingTools/TrajectoryParametrization/interface/PerigeeTrajectoryParameters.h"
00007 #include "TrackingTools/TrajectoryParametrization/interface/PerigeeTrajectoryError.h"
00008
00009 class TrajectoryStateClosestToPoint;
00010
00015 namespace PerigeeConversions {
00016 typedef FreeTrajectoryState FTS;
00021 PerigeeTrajectoryParameters ftsToPerigeeParameters(const FTS& originalFTS,
00022 const GlobalPoint& referencePoint, double& pt);
00023
00024 PerigeeTrajectoryError ftsToPerigeeError(const FTS& originalFTS);
00025
00026
00031 GlobalPoint positionFromPerigee(const PerigeeTrajectoryParameters& parameters,
00032 const GlobalPoint& referencePoint);
00033
00039 GlobalVector momentumFromPerigee(const AlgebraicVector3& momentum,
00040 const TrackCharge& charge, const GlobalPoint& referencePoint,
00041 const MagneticField* field);
00042
00046 GlobalVector momentumFromPerigee (const PerigeeTrajectoryParameters& parameters,
00047 double pt,
00048 const GlobalPoint& referencePoint);
00049
00050
00051 CurvilinearTrajectoryError curvilinearError(const PerigeeTrajectoryError& perigeeError,
00052 const GlobalTrajectoryParameters& gtp);
00053
00054
00063 TrajectoryStateClosestToPoint trajectoryStateClosestToPoint
00064 (const AlgebraicVector3& momentum, const GlobalPoint& referencePoint,
00065 const TrackCharge& charge, const AlgebraicSymMatrix66& theCovarianceMatrix,
00066 const MagneticField* field);
00067
00068
00073 AlgebraicMatrix66 jacobianParameters2Cartesian
00074 (const AlgebraicVector3& momentum, const GlobalPoint& position,
00075 const TrackCharge& charge, const MagneticField* field);
00076
00077
00083 AlgebraicMatrix55 jacobianCurvilinear2Perigee(const FreeTrajectoryState& fts);
00084
00085 AlgebraicMatrix55 jacobianPerigee2Curvilinear(const GlobalTrajectoryParameters& gtp);
00086
00087
00088 }
00089
00090 #endif