Why Does Viscosity Matter?

Honey pours slowly; water quickly. Hot engine oil flows faster than cold. The snail ball (IYPT P3) rolls surprisingly slowly down a slope — because the viscous fluid inside steals energy from the shell. All these phenomena share one root: viscosity.

Shear Stress and Shear Rate

Imagine parallel layers of fluid sliding over each other. The top layer moves at speed $v_0$; the bottom is stationary.

Shear Stress $tau$

$$tau = frac{F}{A} quad [text{Pa} = text{N/m}^2]$$

Shear Rate (Velocity Gradient) $dot{gamma}$

$$dot{gamma} = frac{dv}{dy} quad [text{s}^{-1}]$$

For a linear velocity profile: $dot{gamma} = v_0/h$

Newton’s Law of Viscosity

For Newtonian fluids (water, air, most simple liquids):

$$boxed{tau = eta cdot dot{gamma} = eta ,frac{dv}{dy}}$$

The coefficient $eta$ is the dynamic viscosity, measured in Pa·s.

Electrical analogy: Ohm’s law says $V = RI$. Newton’s viscosity law has the same form: $tau = etadotgamma$ — stress like voltage, shear rate like current, viscosity like resistance.

Dynamic vs Kinematic Viscosity

Type Symbol Definition SI unit
Dynamic $eta$ (or $mu$) $tau / dotgamma$ Pa·s
Kinematic $nu$ $eta/rho$ m²/s

Kinematic viscosity appears directly in the Reynolds number: $Re = vL/nu$ — see: Reynolds Number — From Laminar Flow to Turbulence

Couette Flow — The Baseline Model

Couette flow is the simplest shear configuration: two parallel plates, one stationary, one moving at speed $V$, separated by gap $h$.

This is the geometry inside the snail ball (P3): viscous fluid between the rotating shell and the heavy inner ball generates shear stress that transfers and dissipates rotational energy.

Simulation: Couette Flow with Python

[pyodide]
import numpy as np
import matplotlib
matplotlib.use(‘Agg’)
import matplotlib.pyplot as plt

h = 0.01
V = 0.05

fluids = [
(‘Water’, 0.001, ‘#42a5f5’),
(‘Olive oil’, 0.084, ‘#ffa726’),
(‘Honey’, 5.0, ‘#ab47bc’),
]

y = np.linspace(0, h, 100)
fig, axes = plt.subplots(1, 3, figsize=(10, 5), sharey=True)
fig.suptitle(‘Couette Flow — Velocity Profile for Different Fluids’, fontsize=12, fontweight=’bold’)

for ax, (name, eta, color) in zip(axes, fluids):
v_profile = V * y / h
tau = eta * V / h
for i in range(10):
yi = i * h / 10
vi = V * yi / h
ax.annotate(”, xy=(vi, yi), xytext=(0, yi),
arrowprops=dict(arrowstyle=’->’, color=color, lw=1.5))
ax.plot(v_profile, y, ‘-‘, color=color, lw=2.5)
ax.axhline(0, color=’gray’, lw=2)
ax.axhline(h, color=’red’, lw=2)
ax.set_xlim(-0.002, V * 1.15)
ax.set_xlabel(‘v (m/s)’, fontsize=9)
ax.set_title(f'{name}nη = {eta} Pa·snτ = {tau:.3f} Pa’, fontsize=9, color=color)
ax.grid(True, alpha=0.3)
ax.text(V*0.5, h*1.05, ‘Moving plate (V)’, ha=’center’, fontsize=7, color=’red’)
ax.text(V*0.5, -h*0.08, ‘Fixed plate’, ha=’center’, fontsize=7, color=’gray’)

axes[0].set_ylabel(‘Height y (m)’)
plt.tight_layout()
plt.savefig(‘/tmp/couette_en.png’, dpi=120, bbox_inches=’tight’)
print(“Plot saved.”)
for name, eta, _ in fluids:
print(f”τ_{name} = {eta*V/h:.4f} Pa”)
[/pyodide]

Viscosity of Common Fluids (25°C)

Fluid $eta$ (Pa·s) $eta$ (mPa·s)
Air $1.8times10^{-5}$ 0.018
Water (20°C) $1.0times10^{-3}$ 1.0
Egg white $approx 10^{-3}$ ~1
Olive oil 0.084 84
Glycerol 1.49 1490
Honey 2–10 2000–10000
Pitch (25°C) $approx 10^8$

Connection to the Snail Ball (IYPT P3)

Inside the snail ball, the viscous fluid between the rotating shell and the inner ball:

See: Snail Ball — IYPT 2027 P3

References and Further Reading

Have a question? 🤔

If something isn't clear or you have a question, ask it here. The answer will be published on this page.

💬 جواب بهتری داری؟ یا یه سؤال جدید؟

اگه به سؤالای بالا پاسخی داری که فکر می‌کنی روشن‌تر یا کامل‌تر از مال منه، یا یه سؤال جدید برای دانش‌آموزای دیگه داری — تو بخش نظرات پایین صفحه ارسال کن. هر پیامی رو می‌خونم، تأیید می‌کنم و منتشر می‌شه. این‌جوری همه از تجربه‌ی همدیگه استفاده می‌کنیم. 🌱

در حال آپلود فایل...
لطفاً صبر کنید — صفحه را نبندید
۰٪