Laminar Pipe Flow (Hagen-Poiseuille)

Category: 流体解析(CFD) | Integrated 2026-04-06
CAE visualization for laminar pipe flow theory - technical simulation diagram
層流管内流れ(Hagen-Poiseuille)

Theory and Physics

Overview

🧑‍🎓

Professor, Hagen-Poiseuille flow is used as an initial benchmark in CFD, right?


🎓

Exactly. Fully developed laminar flow in a circular pipe is one of the few problems for which an exact solution to the Navier-Stokes equations exists. It is ideal for verifying CFD codes, as discretization errors can be directly compared with the theoretical solution.


Governing Equations and Exact Solution

🧑‍🎓

Please explain the derivation.


🎓

Under steady, axisymmetric, and fully developed conditions, the axial direction Navier-Stokes equation in cylindrical coordinates simplifies as follows.


$$ 0 = -\frac{dp}{dx} + \mu \frac{1}{r} \frac{d}{dr}\left(r \frac{du}{dr}\right) $$

🎓

Solving with the boundary conditions $u = 0$ (no-slip) at the wall $r = R$ and $du/dr = 0$ (symmetry) at the center $r = 0$, we get:


$$ u(r) = \frac{R^2 - r^2}{4\mu}\left(-\frac{dp}{dx}\right) = U_{max}\left(1 - \frac{r^2}{R^2}\right) $$

This is the Hagen-Poiseuille parabolic velocity profile. The maximum velocity is $U_{max} = R^2 (-dp/dx) / (4\mu)$, occurring at the pipe center.


Volumetric Flow Rate and Mean Velocity

🧑‍🎓

What about the volumetric flow rate?


🎓

Integrating the velocity profile gives:


$$ Q = \int_0^R u(r) \cdot 2\pi r \, dr = \frac{\pi R^4}{8\mu}\left(-\frac{dp}{dx}\right) $$

This is Hagen-Poiseuille's law. The flow rate is proportional to the fourth power of the radius. Doubling the diameter increases the flow rate by a factor of 16.


🎓

The mean velocity is $\bar{U} = Q / (\pi R^2) = U_{max} / 2$, which is half of the maximum velocity.


Friction Coefficient

🧑‍🎓

The pipe friction coefficient can also be derived theoretically, right?


🎓

The Darcy-Weisbach friction factor $f$ is:


$$ f = \frac{64}{Re_D}, \quad Re_D = \frac{\bar{U} D}{\nu} $$

🎓

Some conventions use the Fanning friction factor $C_f$. $C_f = f/4 = 16/Re_D$. Be careful not to confuse them.


🧑‍🎓

$f = 64/Re$ is famous, right? Transition to turbulence occurs when Re exceeds 2300, I think?


🎓

That's generally said, but more accurately, it depends on the disturbance level at the pipe inlet. In experiments with extremely low disturbance, laminar flow has been maintained up to Re ≈ $10^5$. Conversely, with significant inlet disturbance, transition can occur even below Re = 2000.


Entrance Length

🧑‍🎓

How long is the entrance length until fully developed flow is achieved?


🎓

The laminar entrance length can be estimated by the following formula.


$$ \frac{L_e}{D} \approx 0.06 Re_D $$

🎓

For Re = 100, $L_e \approx 6D$; for Re = 2000, $L_e \approx 120D$. To obtain fully developed flow in CFD, you need to compute a pipe longer than this length or use periodic boundary conditions to simulate an "infinitely long pipe."


🧑‍🎓

Using periodic boundary conditions seems to have lower computational cost.


🎓

Correct. Set periodic boundaries in the flow direction and apply the pressure gradient as a source term. In OpenFOAM, this can be implemented using the cyclicAMI boundary and the meanVelocityForce in fvOptions.

Coffee Break Trivia

Capillaries and the Hagen-Poiseuille Equation—Fluid Dynamics Used by Doctors Too

The Hagen-Poiseuille equation shows a powerful relationship: "flow rate is proportional to the fourth power of the tube diameter." If the diameter is halved, the flow rate becomes 1/16. This is actually the same logic cardiologists use to explain the severity of arteriosclerosis to patients. A mere 20% stenosis in a vessel results in a flow rate drop to about 59%. While the HP equation appears in CFD analyses of vascular stenosis, there is a deviation from the exact solution because "biological vessels are non-Newtonian fluids with pulsation." In practice, a two-step approach is standard: "rough estimation with the HP equation → precise evaluation with CFD."

Physical Meaning of Each Term
  • Temporal Term $\partial(\rho\phi)/\partial t$: Imagine the moment you turn on a faucet. At first, water comes out unstable and splashing, but after a while, the flow becomes steady, right? This "period of change" is described by the temporal term. The pulsation of blood flow from heartbeats, flow fluctuations each time an engine valve opens and closes—all are unsteady phenomena. So what is steady-state analysis? It looks only at "after sufficient time has passed and the flow has settled down"—meaning setting this term to zero. Since computational cost drops significantly, trying a steady-state solution first is a basic CFD strategy.
  • Convection Term $\nabla \cdot (\rho \mathbf{u} \phi)$: What happens if you drop a leaf into a river? It gets carried downstream by the flow, right? This is "convection"—the effect where fluid motion transports things. Warm air from a heater reaching the far corner of a room is also because the "carrier," air, transports heat via convection. Here's the interesting part—this term contains "velocity × velocity," making it nonlinear. That is, as flow speed increases, this term rapidly strengthens, making control difficult. This is the root cause of turbulence. A common misconception: "Convection and conduction are similar" → They are completely different! Convection is carried by flow, conduction is transmitted by molecules. There's an order of magnitude difference in efficiency.
  • Diffusion Term $\nabla \cdot (\Gamma \nabla \phi)$: Have you ever put milk in coffee and left it? Even without stirring, after a while, they naturally mix. That's molecular diffusion. Now a question—honey and water, which flows more easily? Obviously water, right? Honey has high viscosity ($\mu$), so it flows poorly. Higher viscosity strengthens the diffusion term, making the fluid move "sluggishly." In low Reynolds number flows (slow, viscous), diffusion dominates. Conversely, in high Re flows, convection overwhelms and diffusion plays a minor role.
  • Pressure Term $-\nabla p$: When you push a syringe plunger, liquid shoots out forcefully from the needle tip, right? Why? Because the plunger side is high pressure, the needle tip is low pressure—this pressure difference provides the force pushing the fluid. Dam discharge works on the same principle. On a weather map, where isobars are tightly packed? That's right, strong winds blow. "Flow arises where there is a pressure difference"—this is the physical meaning of the pressure term in the Navier-Stokes equations. A point of confusion here: "Pressure" in CFD is often gauge pressure, not absolute pressure. When you switch to compressible analysis and results become strange, it might be due to confusing absolute/gauge pressure.
  • Source Term $S_\phi$: Heated air rises—why? Because it becomes lighter (lower density) than its surroundings, buoyancy pushes it upward. This buoyancy is added to the equation as a source term. Other examples: chemical reaction heat from a gas stove flame, Lorentz force acting on molten metal in a factory's electromagnetic pump... These are all actions that "inject energy or force into the fluid from the outside," expressed by the source term. What happens if you forget the source term? In a natural convection analysis, forgetting buoyancy means the fluid doesn't move at all—a physically impossible result where warm air doesn't rise in a room with the heater on in winter.
Assumptions and Applicability Limits
  • Continuum Assumption: Valid for Knudsen number Kn < 0.01 (molecular mean free path ≪ characteristic length)
  • Newtonian Fluid Assumption: Shear stress and strain rate have a linear relationship (non-Newtonian fluids require viscosity models)
  • Incompressibility Assumption (for Ma < 0.3): Treat density as constant. For Mach numbers above 0.3, consider compressibility effects
  • Boussinesq Approximation (Natural Convection): Consider density changes only in the buoyancy term, using constant density in other terms
  • Non-applicable Cases: Rarefied gases (Kn > 0.1), supersonic/hypersonic flow (shock capturing required), free surface flow (VOF/Level Set, etc. required)
Dimensional Analysis and Unit Systems
VariableSI UnitNotes / Conversion Memo
Velocity $u$m/sWhen converting from volumetric flow rate for inlet conditions, pay attention to cross-sectional area units
Pressure $p$PaDistinguish between gauge and absolute pressure. Use absolute pressure for compressible analysis
Density $\rho$kg/m³Air: approx. 1.225 kg/m³@20°C, Water: approx. 998 kg/m³@20°C
Viscosity Coefficient $\mu$Pa·sBe careful not to confuse with kinematic viscosity $\nu = \mu/\rho$ [m²/s]
Reynolds Number $Re$Dimensionless$Re = \rho u L / \mu$. Indicator for laminar/turbulent transition
CFL NumberDimensionless$CFL = u \Delta t / \Delta x$. Directly related to time step stability

Numerical Methods and Implementation

Numerical Methods

🧑‍🎓

What's the point of solving it with CFD when there's an analytical solution?


🎓

There are two main purposes.


1. Code Verification: Confirm the order of discretization error by comparing with the theoretical solution

2. Study of Turbulent Transition: Use the laminar solution as a base state, add disturbances, and track the transition process


Discretization Error Evaluation

🧑‍🎓

When comparing with the theoretical solution, how do you evaluate it specifically?


🎓

Systematically refine the mesh at three or more levels and check the convergence order of the error.


$$ \epsilon_h = \| u_{CFD} - u_{exact} \|_2 $$

🎓

As an example, calculate with 20, 40, and 80 radial divisions and plot the error on a log-log plot. For a second-order scheme, the slope should be $-2$, meaning the error decreases as $\epsilon \propto h^2$.


Radial Cell Count$\Delta r / R$$L_2$ Error (Velocity)Convergence Order
100.1$2.5 \times 10^{-3}$
200.05$6.3 \times 10^{-4}$1.99
400.025$1.6 \times 10^{-4}$1.98
800.0125$4.0 \times 10^{-5}$2.00
🧑‍🎓

If the convergence order matches the theoretical value (2 for second-order accuracy), then we can say the code is implemented correctly, right?


🎓

Exactly. This is a fundamental Code Verification technique, alongside the Method of Manufactured Solutions (MMS).


Axisymmetric Model vs Full 3D

🧑‍🎓

Since it's a circular pipe, we can compute it axisymmetrically, right?


🎓

Fully developed laminar flow is axisymmetric, so it can be computed with a 2D cross-section. In OpenFOAM, use a wedge mesh (5-degree wedge shape, wedge conditions on front/back faces).


🎓

However, full 3D calculation is necessary when including the entrance length or studying turbulent transition. Flow in the entrance length is axisymmetric, but transition is driven by 3D disturbances.


Periodic Pipe Flow in OpenFOAM

🧑‍🎓

Please explain the setup for an infinitely long pipe using periodic boundary conditions.


🎓

Here is an example setup in OpenFOAM.


```

boundary:

inlet: { type cyclic; neighbourPatch outlet; }

outlet: { type cyclic; neighbourPatch inlet; }

wall: { type wall; }

system/fvOptions:

momentumSource:

{

type meanVelocityForce;

selectionMode all;

fieldName U;

Ubar (1 0 0); // Target mean velocity

}

```


🎓

With this setup, the inlet and outlet are periodically connected, and the pressure gradient is automatically adjusted to maintain the specified mean velocity $\bar{U} = 1$ m/s. For steady laminar flow, it converges in a few hundred iterations with simpleFoam.


Settings in Fluent

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

熱解析V&V・品質保証構造解析
この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ
About the Authors