The problem I'm trying to solve is this:

$X'(t) \in \mathbb{R}^3 \,, \, \omega = (\omega_1,\omega_2,\omega_3) $ Find the general solution for

$$X'(t) = \omega \times X(t)$$

After doing the cross product and rearranging a bit I got to

$$\begin{pmatrix} x_1' (t) \\ x_2' (t) \\ x_3' (t) \end{pmatrix} = \begin{pmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 &-\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{pmatrix} \begin{pmatrix} x_1 (t) \\ x_2 (t) \\ x_3 (t) \end{pmatrix}$$

Then I looked for the eigenvalues of the matrix, which are 0, $\sqrt{-\omega_1 ^2 -\omega_2 ^2 -\omega_3 ^2}$ and $-\sqrt{-\omega_1 ^2 -\omega_2 ^2 -\omega_3 ^2}$.

Once I have the eigenvectors, I know how to proceed to find the general solution, but finding the eigenvectors of the second and third eigenvalues lead me to really weird looking stuff, which makes me think that there's another way of solving this.

I've been thinking about this all day, and I can't think of anything else, any help would be greatly appreciated.

  • 1
    $\begingroup$ One thing which often helps is to write your initial $\vec{\omega}$ in spherical coordinates; that should allow some trig identities when solving for the eigenvectors. Another thing would be to rotate your system so that the $z$-axis is parallel to $\vec{\omega}.$ $\endgroup$ Jul 29, 2014 at 20:05
  • $\begingroup$ Another thing you can notice is that the triple product identity implies $$\omega\cdot \dot{X}(t)=\omega\cdot (\omega\times X)=X\cdot(\omega\times\omega)=0.$$ So the velocity vector is always perpendicular to $\vec{\omega}$. $\endgroup$ Jul 29, 2014 at 20:19
  • 1
    $\begingroup$ Cylindrical coordinates with the $z$ axis in the $\omega$ direction are better in this case. $\endgroup$ Jul 29, 2014 at 21:17
  • $\begingroup$ I've been trying to work it out, but if I understood correctly what you said, replacing $\omega$ with $(r\sin(\theta), r\cos(\theta),z)$ (since the equality holds for some $\theta$, r) didn't really do much to simplify the system and let me find the eigenvectors. Maybe I didn't understand correctly what you mean with using spherical / cylindrical coordinates. $\endgroup$ Jul 31, 2014 at 16:24

2 Answers 2


Let $A$ and $X(t)$ be the two matrices $$ A = \begin{bmatrix} 0 & -\omega_3 & \omega_2 \\ \omega_3 & 0 &-\omega_1 \\ -\omega_2 & \omega_1 & 0 \end{bmatrix} \quad\text{ and }\quad X(t) = \begin{bmatrix} x_1 (t) \\ x_2 (t) \\ x_3 (t) \end{bmatrix}$$

and $\omega = \sqrt{\omega_1^2 + \omega_2^2 + \omega_3^2} \ge 0$. When $A$ is constant, the ODE for $X(t)$

$$\frac{d}{dt}X(t) = A X(t)$$

has solution of the form

$$X(t) = e^{tA} X(0)\quad\text{ where }\quad e^{tA} = \sum_{k=0}^\infty \frac{t^k}{k!} A^k\tag{*1} $$ When $A$ is a skew symmetric matrix, it satisfy an interesting identity:

$$A^3 = -\omega^2 A$$

A consequence of this is for any even function $f(z)$ whose power series expansion converges rapidly enough, you will find

$$f(A)A = f(i\omega)A\quad\text{ and }\quad f(A)A^2 = f(i\omega)A^2$$

Apply this to $e^{tA}$, one can convert the series into a quadratic polynomial in $A$!

$$\begin{align} e^{tA} &= I_n + \left(\sum_{k=0}^\infty\frac{t^{2k+1}}{(2k+1)!}(A^2)^k\right)A + \left(\sum_{k=0}^\infty\frac{t^{2k+2}}{(2k+2)!}(A^2)^k\right)A^2\\ &= I_n + \left(\sum_{k=0}^\infty\frac{t^{2k+1}}{(2k+1)!}(i\omega)^{2k}\right)A + \left(\sum_{k=0}^\infty\frac{t^{2k+2}}{(2k+2)!}(i\omega)^{2k}\right)A^2\\ &= I_n + \frac{\sin(t\omega)}{\omega} A + \frac{1-\cos(t\omega)}{\omega^2} A^2 \end{align}\tag{*2} $$ Please note that during practical calculation, there is no need to manipulate power series explicitly like this. Instead, one can formally manipulate $(*2)$ as follows

$$ e^{tA} = I_n + \frac{\sinh(tA)}{A} A + \frac{\cosh(tA) - I_n}{A^2} A^2 = I_n + \frac{\sin(t\omega)}{\omega} A + \frac{1-\cos(t\omega)}{\omega^2} A^2 $$

Please keep in mind in above manipulation, expression like $\displaystyle\;\frac{\sinh(tA)}{A}\;$ doesn't mean compute $\sinh(tA)$ by a power series expansion and then divide it by $A$. Instead, it means evaluate the power series associated with $\displaystyle\;\frac{\sin(tz)}{z}$ "at" $z = A$.

Finally, let us rephrase the solution $(*1)$ in terms of vectors. Let $\hat{e}_i, i = 1,2,3$ be the canonical basis of $\mathbb{R}^3$ as a vector space. Let $\vec{\omega}$ and $\vec{X}(t)$ be the two vectors

$$ \vec{\omega} = \omega_1 \hat{e}_1 + \omega_2 \hat{e}_2 + \omega_3 \hat{e}_3 \quad\text{ and }\quad \vec{X}(t) = x_1(t) \hat{e}_1 + x_2(t) \hat{e}_2 + x_3(t) \hat{e}_3 $$ Let $\hat{\omega}$ be the unit vector $\displaystyle\;\frac{\vec{\omega}}{\omega}\;$. As mentioned in the question, application of $A$ to the column vector $X(t)$ is equivalent to a cross product between $\vec{\omega}$ and $\vec{X}(t)$.

$$A X(t)\quad\leftrightarrow\quad \vec{\omega} \times \vec{X}(t)$$

If we substitute $(*2)$ into $(*1)$ and employ this type of correspondence between matrices and vectors. We will obtain

$$ \vec{X}(t) = \vec{X}(0) + \sin(t\omega)\big( \hat{\omega} \times \vec{X}(0) \big) + (1 - \cos(t\omega)) \big( \hat{\omega} \times ( \hat{\omega} \times \vec{X}(0)) \big) $$ If we split $\vec{X}(0)$ into two orthogonal vectors, one parallel and another perpendicular to $\hat{\omega}$:

$$\vec{X}(0) = \vec{X}_{\parallel}(0) + \vec{X}_{\perp}(0) \quad\text{ where }\quad \begin{cases} \vec{X}_{\parallel}(0) &= ( \vec{X}_(0) \cdot \hat{\omega} ) \hat{\omega}\\ \vec{X}_{\perp}(0) &= -\hat{\omega} \times ( \hat{\omega} \times \vec{X}(0) ) \end{cases} $$ We can re-express $\vec{X}(t)$ in a much more informative form:

$$\vec{X}(t) = \underbrace{\vec{X}_{\parallel}(0)}_{\vec{X}_{\parallel}(t)} + \underbrace{\cos(t\omega)\vec{X}_{\perp}(0) + \sin(t\omega)\big(\hat{\omega} \times \vec{X}_{\perp}(0) \big)}_{\vec{X}_{\perp}(t)}$$

As one can see, the parallel part of $\vec{X}(t)$ remains a constant while the perpendicular part of $\vec{X}(t)$ rotate around the axis in direction of $\hat{\omega}$ in circle.

  • $\begingroup$ More generally, the characteristic polynomial $P(t)$ of an $n \times n$ skew symmetric matrix has only terms in odd powers of $t$ if $n$ is odd, and only even powers of $t$ if $n$ is even. $\endgroup$ Jul 29, 2014 at 21:07
  • $\begingroup$ Dividing by $A$, or using $A^{-1}$, as in the equation $e^{tA} = I_n + \frac{sinh(tA)}{A}A + \ldots$ is problematic when $A$ is a $3 \times 3$ (or $n \times n$ for $n$ odd) matrix, since such matrices always have $0$ as an eigenvalue and hence are singular! $\endgroup$ Jul 30, 2014 at 4:30
  • $\begingroup$ @RobertLewis $\frac{\sinh(tA)}{A}$ here doesn't mean compute $\sinh(tA)$ by a power series expansion and then divide the result by $A$. Instead, it refers to a function whose power series expansion has the from $\frac{\sinh(tz)}{z}$ and you evaluate the corresponding power series expansion in $A$. $\endgroup$ Jul 30, 2014 at 5:24
  • $\begingroup$ OK. OK. OK. Fifteen characters. $\endgroup$ Jul 30, 2014 at 6:18

Recall that $\omega \times X(t)$ is orthogonal to both $\omega$ and $X(t)$. Therefore, $X'(t)$ is orthogonal to $X(t)$ and to $\omega$. In particular, $$ \frac{d}{dt}(X(t)\cdot X(t)) = 2X'(t)\cdot X(t) = 0. $$ That means that $|X(t)|$ is constant in $t$. Similiary $\frac{d}{dt}(X(t)\cdot\omega)=0$, which keeps $X(t)\cdot\omega$ constant in time. So the motion of $X(t)$ remains in the plane $$ X(t)\cdot\omega = X(0)\cdot\omega, $$ and the motion is in a circle because $|X(t)|=|X(0)|$ for all $t$. To be concrete about the representation, project $X(0)$ onto the line through the origin with direction vector $\omega$. That projection is $$ P=X(0)-\frac{X(0)\cdot \omega}{\omega\cdot\omega}\omega. $$ The derivative $X'(t)=\omega\times X(t)$ means that $X(t)$ rotates in a circular direction in the plane perpendicular to $\omega$; the direction is in the direction of your fingers (according to the right-hand rule) when your thumb points along $\omega$. That's why it's best to choose the second orthogonal vector in the plane with normal $\omega$ to be $$ Q = \frac{1}{|\omega|}\omega \times P. $$ Then $|Q|=|P|$ and $$ X(t)= \frac{X(0)\cdot\omega}{\omega\cdot\omega}\omega+\cos(\alpha t)P+\sin(\alpha t)Q $$ for some constant $\alpha$. The constant $\alpha$ is positive and its determined by the length of the derivative vector: $$ |X'(0)|=\alpha|Q| \mbox{ and } |X'(0)| = |\omega\times X(0)|=|\omega\times P|= |\omega||Q|. $$ Now check the above solution where $\alpha=|\omega|$: $$ \begin{align} X'(t) & = |\omega|(-\sin(|\omega|t)P+\cos(|\omega|t)Q),\\ \omega \times X(t) & = \omega\times\left[ \frac{X(0)\cdot\omega}{\omega\cdot\omega}\omega+\cos(|\omega| t)P+\sin(|\omega| t)Q \right] \\ & = |\omega|\left(\frac{1}{|\omega|}\omega\right)\times\left\{\cos(|\omega|t)P+\sin(|\omega|t)Q\right\} \\ & = |\omega|\left\{\cos(|\omega|t)Q-\sin(|\omega|t)P\right\} \end{align} $$ So the equation is satisfied. Plus, by design, $X(0)$ is correct.

  • $\begingroup$ This is probably a stupid question, what do you mean by $X(t) \dot X(t)$? I assume the dot means inner product but I haven't yet defined it, nor proved that it works well with differentiation. It seems like this problem is way more complex than I expected it to be. Thanks a lot for your help. $\endgroup$ Jul 31, 2014 at 16:41
  • $\begingroup$ Hi, I used $X'(t)$ because it's easier to type than putting the dot above the symbol. The prime notation indicates derivative in general, whereas the dot is usually restricted to a time derivative. When I write $A\cdot B$, I do mean the dot product. You can easily write this out in component form, differentiate and see that you get $\frac{d}{dt}(X\cdot X)=\frac{dX}{dt}\cdot X + X\cdot\frac{dX}{dt}$ where $\frac{dX}{dt}$ is the vector obtained from $X$ by differentiating each of the components. So, most of these operators you can work out fairly easily, though it make take a little thought. $\endgroup$ Jul 31, 2014 at 17:16

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .