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 {