Material Derivative of the Gradient of a Scalar Field Let $f$ be a scalar field that is continuous and does not vary along the flow, that is $D_t(f)=0$ where $D_t=\partial_t+\vec u\cdot\nabla$ where $\vec u$ is the incompressible velocity field (i.e $\text{div}(\vec u)=0$). I am to show that for this $f$, $D_t(\vec \omega\cdot\nabla f)=0$ where $\vec\omega=\text{curl}(\vec u)$. 
I am able to simplify this using Einstein Summation notation to be $D_t(\vec\omega\cdot\nabla f)=(\vec\omega\cdot\nabla \vec u)\cdot\nabla f$ by using the fact that $D_t\,\vec \omega=\vec\omega\cdot\nabla\vec u-\vec\omega\,\text{div}(\vec u)$.
What I get hung up on is the step where you must find $D_t(\nabla f)$. It seems to me that this should be identical to $\nabla D_tf$. Obviously this is incorrect, but I don't understand why...
Thank you for any replies
 A: Let's look at a concrete example:
$$f(x) = x; \quad u(x) = x$$
in 1D. A particle that begins at $x_0$ at $t=0$ will advect to $x(t) = \frac{1}{2}(x_0+t)^2$ after time $t$.
Now $D_t\nabla f$ asks: from the point of view of a moving particle, how quickly is $\nabla f$ changing? Intuitively, since $\nabla f$ is constant, it shouldn't matter how the particle moves at all: the particle will always see an unchanging gradient. And indeed
$$(\nabla f)(x(t)) = 1; \quad \frac{d}{dt}(\nabla f)(x(t))\Big\vert_{t\to 0} = 0.$$
On the other hand $\nabla D_t f$ first asks a neighborhood of particles, "how quickly is $f$ changing," and then takes the gradient of the answer over the neighborhood in space. Even though $\nabla f$ is constant, because the particles themselves are moving at different speeds they will not agree on the speed of $f$, and so $D_t f$ is not constant over space: particles to the left will think $f$ is changing more slowly than particles to the right; and the larger the value of $x_0$, the larger the disparity. This is borne out in the calculations:
$$f(x(t)) = \frac{1}{2}(x_0+t)^2; \quad \frac{d}{dt}f(x(t))\Big\vert_{t\to 0} = x_0,$$
hence
$$\nabla D_t f = 1 \neq 0 = D_t \nabla f.$$
Now looking at the abstract formulas, $\nabla$ commutes with differentiation in $t$, but not with the advection term;
\begin{align*}
\nabla D_t f &= D_t \nabla f - u \cdot \nabla\nabla f + \nabla(u\cdot \nabla f)\\
&= D_t\nabla f + \nabla u \cdot \nabla f + u \times \mathrm{curl}(\nabla f)-\mathrm{curl}(u) \times \nabla f\\
&= D_t\nabla f + \nabla u \cdot \nabla f -\mathrm{curl}(u) \times \nabla f.
\end{align*}
