Skip to content
cfd-lab:~/ja/posts/2026-04-30-cavitation-nu…online
NOTE #029DAY THU 유체역학DATE 2026.04.30READ 5 min readWORDS 2,542#유체역학#Cavitation#Multiphase#Bernoulli#유동현상

20℃の水も沸く — キャビテーションの物理

減圧で起こる沸騰、キャビテーション数、気泡崩壊の衝撃波。

水は20℃でも沸きます。圧力を十分に下げさえすれば、です。「水の沸点は100℃」という暗記には「1気圧で」という前提がこっそり省かれています。沸騰を決めるのは温度ではなく、飽和蒸気圧と周囲圧力のバランスです。ポンプ羽根車の入口や船舶プロペラの先端で水が加速され静圧が下がると、常温の水でもいきなり沸き始めます。これがキャビテーション(cavitation, 空洞現象) です。本記事ではキャビテーションが始まる理由、危険度を一つの数で測る方法、気泡が消える瞬間に1万気圧級の衝撃波が立ち上がる仕組みを整理します。最後にベンチュリ管でキャビテーション領域を予測する短いPythonコードと、自分で操作できるシミュレータを置いておきます。

沸点を決めるのは温度ではない#

水の飽和蒸気圧は温度の関数です。

温度飽和蒸気圧 pvp_v
20℃2.34 kPa(≈ 17.5 mmHg)
60℃19.9 kPa
100℃101.3 kPa(≈ 760 mmHg)
200℃1554 kPa(≈ 15 atm)

100℃が特別な数字に見えるのは、ちょうどその温度で pvp_v が1気圧と一致するからです。圧力鍋(約2気圧)では沸点が120℃に上がり、エベレスト山頂(0.3気圧)では70℃で沸きます。

論理を逆にたどってみましょう。20℃の水を沸かしたければ、外気圧を約2.5 kPa(1気圧の1/40)まで下げればよいのです。台所に真空ポンプが一台あれば、ぬるい水を沸騰させられます。

問題は、流れる水には真空ポンプがいらない点です。

流れが作る低圧 — Bernoulliの影#

非粘性・定常流の流線に沿ってベルヌーイの式が成り立ちます。

p+12ρu2+ρgz=constp + \tfrac{1}{2}\rho u^2 + \rho g z = \text{const}

pp は静圧、ρ\rho は密度、uu は速度、zz は高さです。同じ高さなら、速度が上がる場所では静圧が下がります。ベンチュリ管の喉部、翼の負圧面、ポンプ羽根車の入口 — 流れが加速される場所はどこでも圧力が同時に落ち込みます。

極端な場合、静圧が作動温度における pvp_v を下回ると、液体は液体としての姿を保てません。ガス核を種として蒸気の気泡が爆発的に成長します。これがキャビテーションが生まれる瞬間です。

要点は一行。キャビテーションは加熱ではなく、流体力学的減圧で起こる沸騰なのです。

キャビテーション数 σ — 危険度を一つの数で測る#

設計者は「このポンプはキャビテーションするか?」という問いを一つの無次元数に集約します。キャビテーション数です。

σ=ppv12ρU2\sigma = \frac{p_\infty - p_v}{\tfrac{1}{2}\rho U_\infty^2}

pp_\infty は基準位置の静圧、UU_\infty は基準速度、pvp_v は作動温度の飽和蒸気圧です。分子は「蒸気圧の上に残る圧力余裕」、分母は「流れが作り得る動圧の上限」を表します。

σ\sigma が大きいほど安全です。流れがどんなに加速しても、動圧を全部使っても蒸気圧に届かないからです。σ\sigma が臨界値 σi\sigma_i を下回るとキャビテーションが発生し始めます(initiation)。翼や羽根車の形状ごとに σi\sigma_i は異なり、通常は風洞・水槽試験で求めます。

回転機械の現場では NPSH(net positive suction head) が同じ役割を果たします。NPSHが不足すれば σ\sigma が小さく、ポンプは沸騰します。

気泡の死 — 1万気圧の衝撃#

キャビテーションが気泡を作るだけで終わるなら、大した問題ではありません。本当の破壊は気泡が消える瞬間に起きます。

気泡は低圧域を抜け、圧力が回復する領域へ流れていきます。そこで気泡内部の蒸気が周囲の液体に一気に押し潰されます。球形気泡の半径 R(t)R(t) の発展は Rayleigh–Plesset 方程式で記述されます。

RR¨+32R˙2=pBpρ4νR˙R2γρRR\,\ddot R + \tfrac{3}{2}\,\dot R^2 = \frac{p_B - p_\infty}{\rho} - \frac{4\nu \dot R}{R} - \frac{2\gamma}{\rho R}

pBp_B は気泡内圧、γ\gamma は表面張力、ν\nu は動粘度です。外圧が内圧を大きく上回ると R¨0\ddot R \ll 0 となり、気泡はマイクロ秒単位で潰れます。崩壊直前には液体速度が音速近くまで達し、潰れた直後の場には1万気圧級の衝撃波が立ち上がります。

これが繰り返されると金属表面はあばたのようにえぐれます。ポンプ羽根車、船舶プロペラの先端、水車ランナー — どれもキャビテーション侵食(erosion)のお馴染みの跡です。

コード:ベンチュリ管でキャビテーションを予測する#

断面積 A(x)A(x) さえ与えられれば、連続の式とベルヌーイで圧力分布は即座に得られます。

import numpy as np
 
def venturi_pressure_field(x, area_ratio, U_in, rho=1000.0, p_in=101300.0):
    """断面積がコサイン形に絞られて回復するベンチュリ管。"""
    a0, a1, a2, a3 = 0.30, 0.42, 0.58, 0.70
    A = np.ones_like(x)
    m1 = (x >= a0) & (x < a1)
    s1 = 0.5 - 0.5 * np.cos(np.pi * (x[m1] - a0) / (a1 - a0))
    A[m1] = 1.0 + (area_ratio - 1.0) * s1
    A[(x >= a1) & (x <= a2)] = area_ratio
    m2 = (x > a2) & (x < a3)
    s2 = 0.5 - 0.5 * np.cos(np.pi * (x[m2] - a2) / (a3 - a2))
    A[m2] = area_ratio + (1.0 - area_ratio) * s2
 
    u = U_in / A                              # 連続の式
    p = p_in + 0.5 * rho * (U_in**2 - u**2)   # ベルヌーイ
    return A, u, p
 
def cavitation_zone(p, p_vapor):
    """キャビテーション発生領域のインデックス。"""
    return np.where(p < p_vapor)[0]
 
x = np.linspace(0, 1, 400)
A, u, p = venturi_pressure_field(x, area_ratio=0.4, U_in=5.0)
p_vapor = 2339.0  # 20℃の水の飽和蒸気圧
 
zone = cavitation_zone(p, p_vapor)
sigma_min = (p.min() - p_vapor) / (0.5 * 1000.0 * 5.0**2)
 
print(f"最低静圧: {p.min()/1000:.1f} kPa")
print(f"sigma_min = {sigma_min:.3f}  (負ならキャビテーション)")
print(f"キャビテーション長さ: 管長の {zone.size/x.size*100:.0f}%")

area_ratio を 0.5 から 0.3 へ下げてみてください。喉部速度が約1.7倍、動圧がおよそ3倍に跳ね上がり、静圧は難なく蒸気圧を突き抜けます。σmin\sigma_{\min} が負に転じる瞬間がキャビテーションの始まりです。

自分でキャビテーションを作ってみる#

下のシミュレータで、入口速度・喉部断面比・水温を直接動かしてみてください。

Top: venturi tube cross-section. Bubbles spawn where p(x) < p_vapor and collapse downstream (red ring). Bottom: pressure profile and vapor-pressure threshold. Reference: water at 20°C with p_vapor ≈ 2.3 kPa (Antoine fit used for slider).

水温を60℃まで上げると、同じ速度でもキャビテーションがずっと起こりやすくなります — 蒸気圧が約2 kPaから20 kPaに跳ねるためです。逆にthroat ratioを0.6以上に開くと、ある程度速くしても気泡は出ません。下流で気泡が赤いリングとして消える瞬間が、まさに崩壊の視覚的な合図です。

どこで出会うか — ポンプ・プロペラ・医療#

  • ポンプ・水車: 羽根車入口のNPSH不足が最大の原因。吸込配管の損失、液温、回転数すべてが σ\sigma を削ります。
  • 船舶プロペラ: 翼端渦の中心が最初にキャビテーションを起こし、推進効率と可聴騒音を同時に悪化させます。潜水艦が回転数を意図的に下げる理由です。
  • 弁・オリフィス: 狭い通路で圧力回復が悪いと、下流配管が侵食されます。
  • 医療超音波(HIFU): 体内であえてキャビテーションを起こして結石を砕いたり腫瘍を加熱したりします。プロペラを蝕むのと同じ崩壊衝撃を、武器ではなく薬として使うわけです。
  • 水撃: 水車停止直後に逆流した水柱が閉じた弁を打つ瞬間、一瞬の負圧領域が生まれてキャビテーションパルスを引き起こします。

次に泡を見たら#

引張り限界を3つだけ覚えておけば十分です。

  1. 液体は加熱なしでも沸きます。絶対圧がその温度の pvp_v を下回ればよいだけ。
  2. σ=(ppv)/(12ρU2)\sigma = (p_\infty - p_v)/(\tfrac{1}{2}\rho U_\infty^2) が小さいほど危険です。設計者がこの一つの数に執着する理由はそこにあります。
  3. 損傷は気泡の誕生ではなく崩壊から来ます。守るべきは圧力が回復する場所です。

ポンプ吸込配管の図面を再び広げたら、太い蛍光ペンでNPSHの余裕を線で引いておきましょう。その一本が羽根車の寿命を左右します。

役に立ったらシェアしてください。