diff --git a/src/rotation.hh b/src/rotation.hh
index 7c09a4e52f721803e1d40302561b4dba218a00e6..dd01e91963054460fd373dee2fe5dbfd1a7ff774 100644
--- a/src/rotation.hh
+++ b/src/rotation.hh
@@ -288,8 +288,6 @@ public:
 
     /** \brief Interpolate between two rotations 
         \param omega must be between 0 and 1
-        \todo I'd say this method is incorrect and is other one is correct.
-        The solver works much better with this one, though.   I don't get it.
     */
     static Quaternion<T> interpolateDerivative(const Rotation<3,T>& a, const Rotation<3,T>& b, 
                                                double omega) {
@@ -313,33 +311,6 @@ public:
         return a.Quaternion<T>::mult(result);
     }
 
-    /** \brief Interpolate between two rotations 
-        \param omega must be between 0 and 1
-    */
-    static Quaternion<T> interpolateDerivative(const Quaternion<T>& a, const Quaternion<T>& b, 
-                                               double omega, double intervalLength) {
-        Quaternion<T> result(0);
-
-        // Compute difference on T_a SO(3)
-        Dune::FieldVector<double,3> xi = difference(a,b);
-
-        xi /= intervalLength;
-
-        Dune::FieldVector<double,3> v = xi;
-        v *= omega;
-        
-        // //////////////////////////////////////////////////////////////
-        //   v now contains the derivative at 'a'.  The derivative at
-        //   the requested site is v pushed forward by Dexp.
-        // /////////////////////////////////////////////////////////////
-
-        Dune::FieldMatrix<double,4,3> diffExp = Dexp(v);
-
-        diffExp.umv(xi,result);
-
-        return a.mult(result);
-    }
-
     /** \brief Return the corresponding orthogonal matrix */
     void matrix(Dune::FieldMatrix<T,3,3>& m) const {