From 1be1e925762b5813046a8cb1dc24d9240a3d6ae2 Mon Sep 17 00:00:00 2001
From: Oliver Sander <sander@igpm.rwth-aachen.de>
Date: Mon, 22 Oct 2007 14:42:49 +0000
Subject: [PATCH] remove old, overly complicated implementation of the director
 derivatives

[[Imported from SVN: r1708]]
---
 src/quaternion.hh | 60 -----------------------------------------------
 1 file changed, 60 deletions(-)

diff --git a/src/quaternion.hh b/src/quaternion.hh
index 048b6e06..e68760e1 100644
--- a/src/quaternion.hh
+++ b/src/quaternion.hh
@@ -260,66 +260,6 @@ public:
 
     }
 
-    void getFirstDerivativesOfDirectors(Dune::array<Dune::array<Dune::FieldVector<double,3>, 3>, 3>& dd_dvj) const
-    {
-        const Quaternion<T>& q = (*this);
-
-        // Contains \partial q / \partial v^i_j  at v = 0
-        Dune::array<Quaternion<double>,3> dq_dvj;
-        for (int j=0; j<3; j++) {
-            for (int m=0; m<4; m++)
-                dq_dvj[j][m]    = (j==m) * 0.5;
-        }
-        
-        // Contains \parder d \parder v_j
-        
-        for (int j=0; j<3; j++) {
-            
-            // d1
-            dd_dvj[0][j][0] = q[0]*(q.mult(dq_dvj[j]))[0] - q[1]*(q.mult(dq_dvj[j]))[1] 
-                - q[2]*(q.mult(dq_dvj[j]))[2] + q[3]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[0][j][1] = (q.mult(dq_dvj[j]))[0]*q[1] + q[0]*(q.mult(dq_dvj[j]))[1]
-                + (q.mult(dq_dvj[j]))[2]*q[3] + q[2]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[0][j][2] = (q.mult(dq_dvj[j]))[0]*q[2] + q[0]*(q.mult(dq_dvj[j]))[2]
-                - (q.mult(dq_dvj[j]))[1]*q[3] - q[1]*(q.mult(dq_dvj[j]))[3];
-            
-            // d2
-            dd_dvj[1][j][0] = (q.mult(dq_dvj[j]))[0]*q[1] + q[0]*(q.mult(dq_dvj[j]))[1]
-                - (q.mult(dq_dvj[j]))[2]*q[3] - q[2]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[1][j][1] = - q[0]*(q.mult(dq_dvj[j]))[0] + q[1]*(q.mult(dq_dvj[j]))[1] 
-                - q[2]*(q.mult(dq_dvj[j]))[2] + q[3]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[1][j][2] = (q.mult(dq_dvj[j]))[1]*q[2] + q[1]*(q.mult(dq_dvj[j]))[2]
-                + (q.mult(dq_dvj[j]))[0]*q[3] + q[0]*(q.mult(dq_dvj[j]))[3];
-            
-            // d3
-            dd_dvj[2][j][0] = (q.mult(dq_dvj[j]))[0]*q[2] + q[0]*(q.mult(dq_dvj[j]))[2]
-                + (q.mult(dq_dvj[j]))[1]*q[3] + q[1]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[2][j][1] = (q.mult(dq_dvj[j]))[1]*q[2] + q[1]*(q.mult(dq_dvj[j]))[2]
-                - (q.mult(dq_dvj[j]))[0]*q[3] - q[0]*(q.mult(dq_dvj[j]))[3];
-            
-            dd_dvj[2][j][2] = - q[0]*(q.mult(dq_dvj[j]))[0] - q[1]*(q.mult(dq_dvj[j]))[1] 
-                + q[2]*(q.mult(dq_dvj[j]))[2] + q[3]*(q.mult(dq_dvj[j]))[3];
-            
-            
-            dd_dvj[0][j] *= 2;
-            dd_dvj[1][j] *= 2;
-            dd_dvj[2][j] *= 2;
-            
-        }
-    
-    // Check: The derivatives of the directors must be orthogonal to the directors
-    for (int i=0; i<3; i++)
-        for (int j=0; j<3; j++)
-            assert (std::abs(q.director(i) * dd_dvj[i][j]) < 1e-7);
-
-}
-
-
     /** \brief Turn quaternion into a unit quaternion by dividing by its Euclidean norm */
     void normalize() {
         (*this) /= this->two_norm();
-- 
GitLab