Symbolic computation of the derivative of dot product of 2 vectors

If I have two vectors $a$ and $b$, whose components are time varying, for example $$a=[a_x(t), a_y(t), a_z(t)]$$ $$b=[b_x(t), b_y(t), b_z(t)]$$ The dot product of these 2 vectors can be expressed as $$a\cdot b=\Vert{a}\Vert\cdot\Vert{b}\Vert\cdot \cos\phi_{ab}$$ I want to compute in closed form the variation of $\phi_{ab}$ with respect to time, that is, $\dot\phi_{ab}$. Is it possible to symbolically compute this? Can I also obtain in closed form the derivative of $a\cdot b$ with respect to time? Which software would you recommend to do these kind of calculations: Matlab, Mathematica or Maple? Any examples? In fact, I have derived closed-form expressions tediously by hand for several expressions of the type I have given here. I wish to cross-verify whether my derivations are correct.

-
wolframalpha.com/input/… – Bill Cook Oct 13 '11 at 21:53
@Bill Cook: Thank you. I tried using what you ve sent me. The expressions seem to be complicated though. Well. fair enough. But i was wondering if i could retain a and b and its derivatives a' and b' (w.r.t time)as vectors itself in the final expression. – hAcKnRoCk Oct 14 '11 at 11:25

Mathematica works fine. It's possible to write down those expressions, but whether it would give a closed form for the variation depends upon the functions involved. Let the variation of $\phi_{ab}$ be computed on $[c,d]$. If, for example, $c=0$, $d=1$, $a(t)=(t,t,t)$, $a(t)=(1,t,t^2)\$. Then code

c = 0; d = 1;
a[t_] = {t, t, t};
b[t_] = {1, t, 1};
scpt[t_] = a[t].b[t] // FullSimplify
varphi = Integrate[
FullSimplify[Abs[
D[ArcCos[scpt[t]/(Norm[a[t]] Norm[b[t]])], t]],
c <= t <= d], {t, c, d}]


gives $t (t^2+t+1)$ for the scalar product scpr[t] and $\tan ^{-1}\left(\frac{1}{\sqrt{2}}\right)$ for varphi.

-