diff --git a/dune/gfe/quaternion.hh b/dune/gfe/quaternion.hh index df69b26bde40273cc145594114241cd41e883846..a6580dfd366984eb7d9c78e90012613a6e98bc85 100644 --- a/dune/gfe/quaternion.hh +++ b/dune/gfe/quaternion.hh @@ -32,16 +32,6 @@ public: /** \brief Copy constructor */ Quaternion(const Dune::FieldVector<T,4>& other) : Dune::FieldVector<T,4>(other) {} - /** \brief Constructor with rotation axis and angle */ - Quaternion(Dune::FieldVector<T,3> axis, T angle) { - axis /= axis.two_norm(); - axis *= std::sin(angle/2); - (*this)[0] = axis[0]; - (*this)[1] = axis[1]; - (*this)[2] = axis[2]; - (*this)[3] = std::cos(angle/2); - } - /** \brief Assignment from a scalar */ Quaternion<T>& operator=(const T& v) { for (int i=0; i<4; i++) diff --git a/dune/gfe/rotation.hh b/dune/gfe/rotation.hh index 398f9d78370c97328ff0383f3571995e90b1089c..2ce7cfbd48260f2ed5200799b55b210d485e0a19 100644 --- a/dune/gfe/rotation.hh +++ b/dune/gfe/rotation.hh @@ -192,8 +192,14 @@ public: } Rotation<T,3>(Dune::FieldVector<T,3> axis, T angle) - : Quaternion<T>(axis, angle) - {} + { + axis /= axis.two_norm(); + axis *= std::sin(angle/2); + (*this)[0] = axis[0]; + (*this)[1] = axis[1]; + (*this)[2] = axis[2]; + (*this)[3] = std::cos(angle/2); + } /** \brief Return the identity element */ static Rotation<T,3> identity() {