00001 #ifndef RKOneCashKarpStep_H 00002 #define RKOneCashKarpStep_H 00003 00004 #include "TrackPropagation/RungeKutta/interface/RKSmallVector.h" 00005 #include "TrackPropagation/RungeKutta/interface/RKDerivative.h" 00006 #include "TrackPropagation/RungeKutta/interface/RKDistance.h" 00007 00008 #include <utility> 00009 00010 template <typename T, int N> 00011 class RKOneCashKarpStep // : RKStepWithPrecision 00012 { 00013 public: 00014 00015 typedef T Scalar; 00016 typedef RKSmallVector<T,N> Vector; 00017 00018 std::pair< Vector, T> 00019 operator()( Scalar startPar, const Vector& startState, 00020 const RKDerivative<T,N>& deriv, 00021 const RKDistance<T,N>& dist, Scalar step); 00022 00023 00024 }; 00025 00026 #include "TrackPropagation/RungeKutta/src/RKOneCashKarpStep.icc" 00027 00028 #endif