Internal flow — fluid moving inside a pipe or duct — is fundamentally different from external flow, and the difference goes deeper than just the geometry. In external flow, the boundary layer is free to grow indefinitely in the direction perpendicular to the wall. In internal flow, the boundary layers from opposing walls eventually merge, and after that point the flow profile stops changing shape. This is what "fully developed" means, and it's the foundation everything else in internal flow builds on.

Flow regimes in a pipe: ReD controls everything

Unlike external flow (where the local Reynolds number $Re_x$ varies with position), internal flow uses a single diameter-based Reynolds number:

$$Re_D = \frac{\rho u_m D}{\mu} = \frac{4\dot{m}}{\pi D \mu}$$

where $u_m$ is the bulk mean velocity (flow rate divided by cross-sectional area, not the centerline velocity) and $D$ is the pipe diameter. The transition regimes are:

RegimeReDVelocity profileHeat transfer
Laminar< 2300Parabolic (Hagen-Poiseuille)Lower Nu, more predictable
Transition2300 – 4000Unstable, correlations unreliableAvoid designing in this range
Turbulent> 4000Flatter core, steep wall gradientHigher Nu, stronger mixing

Note that the laminar-to-turbulent transition happens around $Re_D \approx 2300$ for internal flow — much lower than the $Re_x \approx 5 \times 10^5$ threshold for external flat-plate flow. Confined geometry destabilizes the flow at lower Reynolds numbers.

Entrance length: where "fully developed" begins

When fluid first enters a pipe, the velocity profile is flat (uniform). Boundary layers grow from the wall inward until they merge at the centerline — at that point, the hydrodynamic entry length $x_{fd,h}$ is complete and the velocity profile no longer changes shape.

(A) HYDRODYNAMIC velocity profile develops v₀ boundary layer grows δ(x) parabolic — shape stops changing x_fd,h — hydrodynamic entrance fully developed R (B) THERMAL temperature profile develops — heated wall T₀ thermal layer grows δ_t(x) shape fixed, T still rising x_fd,t — thermal entrance fully developed For Pr > 1 the thermal layer lags the velocity layer — so x_fd,t > x_fd,h, exactly as drawn.

The flat inlet profile develops into the parabola of fully developed laminar flow. Note what “fully developed” really means: the boundary layers have met at the centerline, so the profile shape stops changing — and the centerline has accelerated to exactly 1.5× the mean velocity. The thermal layer (B) grows more slowly for Pr > 1, so heat takes longer to develop than momentum.

The entry lengths scale with $Re_D$ and, for thermal development, also with $Pr$:

HydrodynamicThermalConcentration
Laminar$x_{fd,h}/D \approx 0.05\, Re_D$$x_{fd,t}/D \approx 0.05\, Re_D Pr$$x_{fd,c}/D \approx 0.05\, Re_D Sc$
Turbulent$10 \lesssim x_{fd}/D \lesssim 60$ (all three, roughly independent of Re and Pr)

The thermal entry length is $Pr$ times longer than the hydrodynamic entry length in laminar flow. For gases ($Pr \approx 1$), they're about the same. For oils ($Pr \gg 1$), the thermal entry length can be enormously longer than the hydrodynamic one — meaning the velocity profile is fully developed long before the temperature profile is. For liquid metals ($Pr \ll 1$), the opposite: the temperature profile develops much faster than the velocity profile.

What "fully developed" actually means — and the key misconception

Thermally fully developed does not mean $\partial T/\partial x = 0$. The bulk fluid temperature $T_m(x)$ keeps changing along the pipe as heat is added or removed. What stays constant is the shape of the normalized temperature profile.

Mathematically, thermally fully developed means:

$$\frac{\partial}{\partial x}\left[\frac{T_s(x) - T(r,x)}{T_s(x) - T_m(x)}\right] = 0$$

The ratio of local-to-bulk temperature difference doesn't change with $x$, even though the actual temperatures are still changing. A direct consequence: in the fully developed region, $h$ becomes constant along the pipe. That's the key simplification that makes fully developed flow tractable.

Bulk mean temperature: the right temperature to use

For internal flow, the bulk mean temperature $T_m$ (also called the "mixing cup" temperature) is the energy-weighted average:

$$T_m = \frac{\int_A u T\, dA}{\int_A u\, dA} = \frac{2}{u_m r_o^2}\int_0^{r_o} u(r)\, T(r)\, r\, dr$$

This is the temperature you'd measure if you could collect all the fluid flowing through a cross-section and mix it perfectly. It matters because the energy balance along the pipe is written in terms of $T_m$:

$$\dot{m} c_p \frac{dT_m}{dx} = P \cdot h (T_s - T_m)$$

where $P$ is the wetted perimeter ($\pi D$ for a circular pipe). Never use centerline temperature in this energy balance — that's one of the most common errors in internal flow problems.

The two boundary condition cases: uniform flux vs. uniform wall temperature

These give very different $T_m(x)$ profiles, and mixing them up is another common source of error:

Case 1 — Uniform heat flux ($q_s'' = $ const): $T_m$ increases linearly along the pipe, and $T_s - T_m$ remains approximately constant in the fully developed region. $T_s$ and $T_m$ are parallel lines.

$$T_m(x) = T_{m,i} + \frac{q_s'' P}{\dot{m} c_p}\, x$$

Case 2 — Uniform wall temperature ($T_s = $ const): $T_m$ approaches $T_s$ exponentially, and the temperature difference $T_s - T_m$ decays along the pipe. This is the situation in most heat exchanger tubes.

$$\frac{T_s - T_m(x)}{T_s - T_{m,i}} = \exp\!\left(-\frac{P\bar{h}}{\dot{m} c_p}\, x\right)$$

Nusselt number correlations — which one to use when

The decision tree is straightforward once you know $Re_D$ and whether you're in the entry region or fully developed:

Laminar, fully developed ($Re_D < 2300$, $x > x_{fd}$):

$$Nu_D = 3.66 \quad (T_s = \text{const}) \qquad\qquad Nu_D = 4.36 \quad (q_s'' = \text{const})$$

These are exact solutions — not empirical. Note they're constants: in fully developed laminar flow, $h$ doesn't depend on $Re$ or $Pr$ at all. It depends only on geometry (through the pipe diameter) and the thermal conductivity of the fluid.

Turbulent, fully developed ($Re_D > 10{,}000$, $x > x_{fd}$):

$$Nu_D = 0.023\, Re_D^{4/5}\, Pr^n \qquad \begin{cases} n = 0.4 & \text{heating} \\ n = 0.3 & \text{cooling} \end{cases}$$

This is the Dittus-Boelter equation. Valid for $0.6 \lesssim Pr \lesssim 160$ and $Re_D > 10{,}000$. Evaluate all fluid properties at $T_m$ (bulk mean temperature, not film temperature — unlike external flow).

Entry region: $Nu$ is higher in the entry region than in the fully developed region because the thinner developing boundary layer gives a steeper wall gradient. If your pipe length $L < x_{fd}$, use developing-flow correlations (Sieder-Tate, Hausen, or the Gnielinski correlation for turbulent entry).

The workflow for any internal flow problem

  1. Compute $Re_D$ using $T_m$ (usually inlet temperature for a first pass, or iterate).
  2. Determine whether the flow is laminar, transitional, or turbulent.
  3. Check whether $x > x_{fd,h}$ and $x > x_{fd,t}$ — are you in the entry region or fully developed?
  4. Select the correct Nu correlation (3.66 or 4.36 for laminar FD; Dittus-Boelter for turbulent FD; entry-length correlations otherwise).
  5. Compute $h = Nu \cdot k / D$.
  6. Apply the energy balance with the correct BC (uniform $T_s$ or uniform $q_s''$) to find outlet temperature or total heat transfer.

The single biggest source of error in internal flow problems is confusing centerline temperature with bulk mean temperature, or using film temperature instead of bulk mean temperature when evaluating properties for Dittus-Boelter. Both are easy to avoid once you're aware of them.