3D Velocity profile for flow between two cylinders

Clear[w, s]

w[rr_, rr1_, rr2_, vv1_, vv2_] = 
Module[{rd, gOver4mu},
rd = rr2^2 - rr1^2 ;
(* with: G = -dp/dz, writing vv2 = (rr2^2 - rr1^2) G/(4 mu) *)
gOver4mu = vv2/rd ;
gOver4mu(rr2^2 - rr^2)  + (vv1 -vv2)Log[rr/rr2]/Log[rr1/rr2] 
] ;

s[r1_, r2_, v1_, v2_, width_] =
HoldForm[Module[{p1, g1, v, r},

v[r_] = w[r, r1, r2, v1, v2] ;
r[u_] = r1 + (r2-r1)u ;

p1 = ParametricPlot3D[ {
    {width uu, r1 Cos[2 Pi vv], r1 Sin[2 Pi vv]} (* inner cylinder *)
, {uu , r2 Cos[2 Pi vv], r2 Sin[2 Pi vv]} (* outer cylinder *)
, {width, r1 uu Cos[2 Pi vv], r1 uu Sin[2 Pi vv]} (* cap for inner cylinder *)
, {1.+ v[r[uu]], r[uu] Cos[2 Pi vv], r[uu] Sin[2 Pi vv]}

}, {uu, 0, 1}, {vv, 0, 1}, PlotStyle->{Blue,Blue, Blue, Green}, Axes -> None]  ;

 g1 = Graphics3D[{
(* velocity direction indicator.  Fix, if allowing for negative velocity. *)
Text[Style[Style["v",Italic], Bold, 18], {width + .5, 0, 0}],

Black,
Arrowheads[Medium],
Arrow[{
{width + .6, 0., 0.}, {width + 1.4, 0., 0.}
}]
}]  ;

{p1,g1}
] ] ;

Manipulate[
Module[{r1 = 0.68, s2 = 1.06},
Show[ReleaseHold[s[r1,r1 + s2, v1, v2, 3.] ]] ]
, {{v1, 1., "Velocity of inner cylinder"}, 0., 2.5 }
, {{v2, -1., "Pressure gradient viscosity ratio (scaled as velocity)"}, -3.5, 3.5 } (* ((G )/(4 μ)) ((Subscript[R, 2]^2)-((Subscript[R, 1])^2)) *)
,SaveDefinitions -> True
]

This demonstration illustrates the solution of the Navier-Stokes equations, for radially symmetric steady state incompressible fluid flow between two long cylinders, with external constant pressure gradient.  For the boundary conditions, the outer cylinder has zero velocity, and the inner cylinder is moving with a constant velocity.

The Navier-Stokes equations for radially symmetric steady state incompressible fluid flow between two long cylinders, with external constant pressure gradient G = -(dp/dz) has the form

u=w(r) (OverHat[z])

p = p(r)

0=-(OverHat[r])p'+G (OverHat[z])+(μ/r) ((r w'))' (OverHat[z]).
This can be solved analytically.  The solution will depend on the boundary conditions, which require the velocity of the fluid at the fluid and cylinder interface to match (the no-slip condition).  Here the profile of the resulting velocity field is illustrated for boundary conditions in which the outer cylinder is fixed, and the inner cylinder is moving with velocity v.  If (Subscript[R, 1]) and (Subscript[R, 2]) are the inner and outer cylinder radii respectively, those boundary conditions can be written

w((Subscript[R, 2])) = 0

w((Subscript[R, 1])) = v

from which the solution

w(r) = ((G )/(4 μ)) ((Subscript[R, 2]^2)-(r^2)) + (v - ((G )/(4 μ)) ((Subscript[R, 2]^2)-((Subscript[R, 1])^2)) )(((log((r/(Subscript[R, 2]))))/(log(((Subscript[R, 1])/(Subscript[R, 2])))))) 

can be found.  This demonstration shows how the variation of the shape of this resulting velocity profile is dependent on both the inner cylinder velocity, and the pressure gradient to viscosity (μ) ratio.

Contributed by: Peeter Joot