calculation2The Mathematical Study of Mollusk Shells
Derivatives of rotation matrices
Suppose
R = [aij] is a
3x3rotation matrix. This means that
R preserves lengthsand angles, and preserves orientation. Since
R timesthe first basis vector
1 a11R [0] = [a21] = first column of R, etc., 0 a31
the statement"
R preserves lengths and angles" implies that the three columns of
R have unit length and are pairwise orthogonal. This is equivalent to the statement that
R RT = I: that
R times the transpose of
R (transpose means rows andcolumns are interchanged) is the identity matrix
I.
Suppose now Ra is a smooth curve of rotationmatrices, with R0=I. Differentiating the equationRaRaT = I with respectto a givesR'aRaT + RaR'aT = 0. Setting a=0 then givesR'0 + R'0T = 0, i.e thematrix R'0 is equal to minus its transpose. So
0 -f -g 0 -1 0 0 0 -1 0 0 0R'0 = [f 0 -h] = f[1 0 0] + g[0 0 0] + h[0 0 -1]. g h 0 0 0 0 1 0 0 0 1 0
where
f,g,h are any 3 real numbers. This is the form ofour matrix
r = lima->0(Ra-I)/a.
The next step is to rotate coordinates so that
0 -c 0 r = [c 0 0]. 0 0 0
If the new coordinates are derived from the old by a rotation matrix
S, then in the new coordinates the same infinitesimalrotation
r will appear as
SrS-1.Starting with
0 -f -g [f 0 -h] g h 0
a rotation of coordinates by an angle
A = arctan(-h/g) about the
z-axis changes
r to
cosA -sinA 0 0 -f -g cosA sinA 0 0 -f -q[sinA cosA 0] [f 0 -h] [-sinA cosA 0] = [f 0 0]. 0 0 1 g h 0 0 0 1 q 0 0
where
q = -gcosA+hsinA. A further rotation by an angle
B = arctan(-q/f) about the
x-axis changes thatmatrix to
1 0 0 0 -f -q 1 0 0 0 -c 0[0 cosB -sinB] [f 0 0] [0 cosB sinB] = [c 0 0] 0 sinB cosB q 0 0 0 -sinB cosB 0 0 0
where
c = fcosB - qsinB.