Table of Contents

Background
As you most probably know, there are two reference frames that can be used in studying fluid motion; namely, the Lagrangian and Eulerian frames.
In the Lagrangian description, each particle in the fluid is followed as if it were a "rigid body". This means that each particle has a unique identifier or tag. This description is akin to rigid body dynamics and is a great way of describing a relatively small number of particles. However, when dealing with a fluid, there is a very large number of particles thus rendering a Lagrangian description of a fluid flow problem very tedious and intractable.
In the Eulerian description, flow properties (velocity, pressure, temperature, etc…) are defined as a function of space and time. This means that instead of tagging each particle of the flow, the viewer fixes a volume in space and identifies the flow properties in that region of space. Therefore, it does not matter which particle passes through the volume since that particle will assume the flow property of that point in space.
Recently, we've had some controversy about some terms in a momentum equation in one of the papers that one of my colleagues is studying. Indeed, for compressible and non constant viscosity fluids, it is not straightforward to come up with the equations of motion as this situation is rarely the case in our daily engineering investigations.
As the problems we are dealing become more complicated (in fact, we add the complication as we solve the problem one step at a time. For example, we start with an inviscid incompressible model, then we add viscosity, then we add compressibility to the inviscid model, then add viscosity to the compressible model etc…).
So anyway, I decided to once and for all settle down the issue and put together a convenient and easy to understand post.
Cartesian Coordinates
First, let us start by going over the material derivative one more time. As you most probably know, there are two reference frames that can be used in studying fluid motion; namely, the Lagrangian and Eulerian frames.
In the Lagrangian description, each particle in the fluid is followed as if it were a "rigid body". This means that each particle has a unique identifier or tag. This description is akin to rigid body dynamics and is a great way of describing a relatively small number of particles. However, when dealing with a fluid, there is a very large number of particles thus rendering a Lagrangian description of a fluid flow problem very tedious and intractable.
In the Eulerian description, flow properties (velocity, pressure, temperature, etc…) are defined as a function of space and time. This means that instead of tagging each particle of the flow, the viewer fixes a volume in space and identifies the flow properties in that region of space. Therefore, it does not matter which particle passes through the volume since that particle will assume the flow property of that point in space.
The natural way of defining the velocity or acceleration is based on a Lagrangian description because it is the easiest (and that's how we've done it in dynamics in high school)! When it comes to fluid flow, the acceleration of a fluid particle as seen in the Eulerian reference is different from the Lagrangian description. This is due to the fact that as the particle moves about, its velocity and position change as well. In Mathematical terms, the particle velocity is
(1)of course, the velocity is a vector
(2)Now the acceleration is obtained by differentiating the velocity with respect to time. But since the velocity is a function of the position, and the position is a function of time, then we have to use implicit or chain rule differentiation as follows
(3)which yields the following expression for the acceleration of ANY fluid particle as seen by an observer in an Eulerian reference.
(4)If we were in a Lagrangian frame, then the velocity is only a function of time because in that reference, the observer is riding on the particle as it flows through space.
Cylindrical Coordinates
This one a little bit more involved than the Cartesian derivation. The reason for this is that the unit vectors in cylindrical coordinates change direction when the particle is moving.
In the Lagrangian reference, the velocity is only a function of time. When we switch to the Eulerian reference, the velocity becomes a function of position, which, implicitly, is a function of time as well as viewed from the Eulerian reference. Then
(5)and the material derivative is written as (with the capital D symbol to distinguish it from the total and partial derivatives)
(6)or, by making use of the definition of velocities ($u \equiv \frac{{\rm d}r}{{\rm}t}$, $\frac{v}{r} \equiv \frac{{\rm d}\theta}{{\rm d}t}$, and $w \equiv \frac{{\rm d} z}{{\rm d} t}$), we have
(7)Special attention must be made in evaluating the time derivative in Eq. 2. In dynamics, when differentiating the velocity vector in cylindrical coordinates, the unit vectors must also be differentiated with respect to time. In this case, the partial derivative is computed at a fixed position and therefore, the unit vectors are "fixed" in time and their time derivatives are identically zero. Then, we have
(8)or
(10)similarly
(11)or
(12)finally
(13)or
(14)This was a rather tedious way of deriving the material derivative as one could have used vector technology to obtain an invariant form that works for all coordinates. Nonetheless, it is interesting to see the intricacies of the derivation using chain rule differentiation. Note that if were computing the material derivative for a scalar, the extra terms in Eq. 7 (in the radial and tangential components) would disappear. These are purely reminicsent of the vectorial nature of the velocity field (or any other vector field for that matter).
It is very interesting to note the intimate link between the physical nature of the velocity and its mathematical description through vectors. One would pose the following argument: why don't we treat the material derivative of the velocity as that of three scalars, namely, u_r, u_theta, and u_z? Doing this will obviously remove the hassles of dealing with derivatives of unit vectors, but will eventually lead to inconsistent results. So what's the issue here?
The problem with that treatment is that in essense, the velocity is one quantity that we describe using vectors: a magnitude and a direction. If we are to use three scalars to describe the velocity we lose an essential ingredient which is the direction. In the end, the material derivative of the velocity can be decomposed into the material derivatives of three scalars (u_r, u_theta, and u_z) plus some correction. This correction stems from the directional nature of the velocity field. In other words, this correction can be thoguht of as being the material derivative of the direction of the velocity field.
Spherical Coordinates
Spherical coordinates are of course the most intimidating for the untrained eye. For engineers and fluid dynamicists, the farthest we go is usually cylindrical coordinates with rare popups of the spherical problem. Here, I want to derive the material derivative of the velocity field in spherical coordinates. First, let us do that for a scalar.
Assume that at point r and time t a fluid particle has a property Q. As this particle moves about, this property will change with time (and space). Again, in the Lagrangian description, Q is only a function of time, i.e.
(15)However, from the Eulerian point of view, any property of the fluid is a function of time and space, which is also a function of time implicitly. Then
(16)Then, the time rate of change of any scalar fluid property is given by the following
(17)where we have used the chain rule to account for the spatial dependence on time. Remembering some of the formulas from dynamics, we have
(18)upon substitution of Eq. 4 into Eq. 3, we finally obtain the material derivative for a scalar
(19)To obtain the material derivative for a vector field, we follow a similar procedure keeping in mind the directional nature of a vector. We illustrate this using the velocity field  keep in mind that this works for any kind of vector field. Again, in a Lagrangian reference, the velocity is only a function of time. In the Eulerian view, the velocity has the following form