Skip to content
cfd-lab:~/ja/posts/2026-06-11-boiling-curve…online
NOTE #071DAY THU 유체역학DATE 2026.06.11READ 6 min readWORDS 2,788#유동현상#Boiling-Curve#Critical-Heat-Flux#Leidenfrost#Heat-Transfer

もっと熱したのに冷めた — 沸騰曲線と限界熱流束

沸点を超えて加熱すると熱伝達が崩れる沸騰曲線の逆説

1934年、東京で抜山四郎(ぬきやま しろう)は、ニクロム線に電流を流しながら沸騰する水を観察していました。電流を少しずつ上げるたびに気泡は激しくなります。そしてある瞬間、電線が突然真っ赤に焼けて溶け、切れてしまいました。彼は、気泡が最も活発な区間と電線が溶ける区間のあいだで何が起きるのかを、ついに自分の目で見ることができませんでした。この記事は、彼が見逃したその区間 — もっと加熱するほど熱が抜けにくくなる沸騰曲線(boiling curve)の逆説をたどります。限界熱流束がなぜ崖のように存在するのか、ライデンフロスト液滴がなぜ熱いフライパンの上で踊るのかを、最後のPython計算までつなげて見ていきます。

沸騰曲線 — 一枚のグラフに収まる四つの領域#

沸騰とは固体–液体界面で起こる蒸発です。壁面熱流束は単純な形で書けます。

q=h(TsTsat)=hΔTeq'' = h\,(T_s - T_{sat}) = h\,\Delta T_e

TsT_sは壁面温度、TsatT_{sat}は飽和温度(水は1気圧で100°C)、ΔTe\Delta T_eはその差である過熱度(excess temperature)です。hhは対流熱伝達係数です。

直感的にはΔTe\Delta T_eを上げるほどqq''が単調に増えそうに思えます。実際の沸騰曲線はそうではありません。横軸ΔTe\Delta T_e、縦軸qq''を両対数で描くと、四つの領域が順に現れます。

  • 自然対流ΔTe5\Delta T_e \lesssim 5°C):気泡はほとんどありません。浮力が生む自然対流が熱を運びます。
  • 核沸騰5ΔTe305 \lesssim \Delta T_e \lesssim 30°C):気泡が核生成点から噴き上がります。qq''が最も急に上がります。
  • 遷移沸騰30ΔTe12030 \lesssim \Delta T_e \lesssim 120°C):蒸気膜が部分的に壁を覆い始めます。qq''下がります
  • 膜沸騰ΔTe120\Delta T_e \gtrsim 120°C):連続した蒸気膜が壁を完全に覆います。放射が加わりqq''が再び上がります。

下のシミュレーションで直接操作してみましょう。

Regime
Nucleate boiling
ΔTe
20 °C
q″
0.37 MW/m²
h = q″/ΔTe
18.7 kW/m²K

上のボタンを'Heat-flux control'に切り替え、熱流束を限界点の上へ押し上げてみてください。動作点が核沸騰の枝から膜沸騰の枝へ飛び移ります。これが抜山の電線を溶かしたバーンアウトです。

核沸騰 — 気泡が熱を汲み上げる#

核沸騰がこれほど効率的なのは、気泡そのものよりも気泡が起こす撹拌(agitation)のためです。気泡が壁から離れると、その場所へ冷たい液体が吸い込まれます。この微細なポンプ作用が壁近くの液体を絶えず入れ替えます。

Rohsenowはこの領域の熱流束を無次元相関式にまとめました。

qs=μlhfgg(ρlρv)σ(cp,lΔTeCs,fhfgPrln)3q''_s = \mu_l\, h_{fg}\sqrt{\frac{g(\rho_l - \rho_v)}{\sigma}} \left(\frac{c_{p,l}\,\Delta T_e}{C_{s,f}\,h_{fg}\,Pr_l^{\,n}}\right)^3

μl\mu_lは液体粘度、hfgh_{fg}は蒸発潜熱、ρl,ρv\rho_l,\rho_vは液体・蒸気密度、σ\sigmaは表面張力、cp,lc_{p,l}は液体比熱、PrlPr_lは液体プラントル数です。Cs,fC_{s,f}は表面–液体の組み合わせによる実験定数(水–白金は0.013)です。

要点はqsΔTe3q''_s \propto \Delta T_e^3という点です。過熱度を少し上げるだけで熱流束が三乗で跳ね上がります。だから核沸騰は狭い温度幅で膨大な熱を抜き取ります。原子炉炉心、CPUの水冷、ボイラーはすべてこの領域を狙います。

限界熱流束 — Zuberが予測した崖#

三乗の上昇は永遠ではありません。気泡が密集しすぎると互いに合体し、壁を覆い始めます。液体が壁に届く道が塞がれます。まさにその直前、qq''が最大値を打ちます。これが限界熱流束(critical heat flux, CHF)です。水は1気圧で1 MW/m²を超えます。

Zuberは蒸気柱が不安定になる条件(ケルビン–ヘルムホルツ不安定)からCHFを導きました。

qmax0.149hfgρv[σg(ρlρv)ρv2]1/4q''_{max} \approx 0.149\, h_{fg}\, \rho_v \left[\frac{\sigma\, g\,(\rho_l - \rho_v)}{\rho_v^2}\right]^{1/4}

記号は前と同じで、ρv\rho_vは蒸気密度です。驚くべき点は、この式に壁温度も表面材質も入っていないことです。CHFは流体の物性だけで決まります。

CHFは両刃の剣です。熱を抜く能力の上限であり、超えた瞬間は災害です。熱流束を制御する装置(電気加熱、核燃料)でCHFを超えると、動作点が核沸騰から膜沸騰へ跳ね上がります。同じ熱流束を膜沸騰で支えるには壁温度が数百度跳ね上がる必要があります。金属はその前に溶けます。抜山が見たのは、まさにこの跳躍でした。

膜沸騰とライデンフロスト#

遷移沸騰の終わり、qq''が再び最小値を打つ点をライデンフロスト点(Leidenfrost point)と呼びます。これを越えると連続した蒸気膜が壁を完全に覆います。液体は壁に届きません。熱は蒸気を横切る伝導と放射だけで伝わります。蒸気の熱伝導率は液体よりはるかに低いので、熱伝達はお粗末です。

熱いフライパンに水を一滴落としたことがあれば、すでに膜沸騰を見ています。ほどよく熱いフライパンでは液滴がジュッと沸いてすぐ消えます。ところが非常に熱いフライパンでは液滴が玉のように丸まり、フライパンの上を滑りながら長く生き延びます。自分が作った蒸気膜の上に浮いているからです。

下のシミュレーションで直接操作してみましょう。

Push Ts past ~200 °C and the droplet lifts onto its own vapor film — the Leidenfrost effect. Counterintuitively it now lives far longer than at 130 °C.

表面温度を130°C付近に置くと、液滴は気泡を噴いて速く蒸発します。200°Cを超えると液滴は蒸気膜の上に浮かんで滑ります。もっと熱いのに、かえって長く生きる — この非単調性がライデンフロストの逆説です。

膜沸騰熱流束は水平円柱について次の形に従います。

NuD=C[g(ρlρv)hfgD3νvkv(TsTsat)]1/4\overline{Nu}_D = C\left[\frac{g(\rho_l-\rho_v)\,h'_{fg}\,D^3}{\nu_v\, k_v\,(T_s - T_{sat})}\right]^{1/4}

DDは円柱直径、νv,kv\nu_v, k_vは蒸気の動粘度・熱伝導率、CCは形状定数(水平円柱0.62、球0.67)です。hfg=hfg+0.8cp,v(TsTsat)h'_{fg} = h_{fg} + 0.8\,c_{p,v}(T_s - T_{sat})は蒸気過熱を補正した潜熱です。

Python — 沸騰曲線を自分で描く#

水の1気圧物性でRohsenow核沸騰とZuber CHFを計算してみましょう。二つの式がどこで出会い、どこで分かれるかが一目で分かります。

import numpy as np
 
# 水、1気圧の飽和物性
g    = 9.81       # m/s^2
rho_l = 957.9     # kg/m^3
rho_v = 0.5956
h_fg  = 2257e3    # J/kg
sigma = 0.0589    # N/m
mu_l  = 279e-6    # N.s/m^2
cp_l  = 4217.0    # J/kg.K
Pr_l  = 1.76
Csf, n = 0.013, 1.0   # 水-白金
 
def rohsenow_nucleate_flux(dTe):
    """Rohsenow 核沸騰熱流束 q'' (W/m^2)."""
    bracket = np.sqrt(g * (rho_l - rho_v) / sigma)
    ja = cp_l * dTe / (Csf * h_fg * Pr_l**n)
    return mu_l * h_fg * bracket * ja**3
 
def zuber_critical_heat_flux():
    """Zuber 限界熱流束 (W/m^2)."""
    return 0.149 * h_fg * rho_v * (
        sigma * g * (rho_l - rho_v) / rho_v**2) ** 0.25
 
chf = zuber_critical_heat_flux()
print(f"CHF (Zuber)      = {chf/1e6:.3f} MW/m^2")
 
# 核沸騰の枝をスキャンしてCHFに達する過熱度を探す
for dTe in [5, 10, 20, 30, 40]:
    q = rohsenow_nucleate_flux(dTe)
    flag = "  <-- CHF 超過 (Rohsenow 無効)" if q > chf else ""
    print(f"dTe={dTe:3d} C : q''={q/1e6:6.3f} MW/m^2{flag}")

実行結果は次のとおりです。

CHF (Zuber)      = 1.259 MW/m^2
dTe=  5 C : q''= 0.017 MW/m^2
dTe= 10 C : q''= 0.137 MW/m^2
dTe= 20 C : q''= 1.094 MW/m^2
dTe= 30 C : q''= 3.692 MW/m^2  <-- CHF 超過 (Rohsenow 無効)

Rohsenow式はΔTe30\Delta T_e \approx 30°C付近ですでにCHFを超えています。これは式が間違っているからではなく、適用範囲を外れたからです。実際の曲線はCHFで折れて下がります。核沸騰相関式はその折れ曲がりまでしか有効ではありません。二つの式を一緒に使うときは、CHFが天井であることを常に強制しなければなりません。

無次元数の言葉 — JakobとBond#

沸騰を支配する無次元数を二つ押さえておきましょう。一つ目はヤコブ数(Jakob number)です。

Ja=cp,lΔTehfgJa = \frac{c_{p,l}\,\Delta T_e}{h_{fg}}

これは液体が吸収する顕熱と潜熱の比です。JaJaが小さいとは潜熱が顕熱を圧倒するということです。水は潜熱が非常に大きいので沸騰状況でJaJaが小さくなります。Rohsenow式の括弧内の項がまさにJaJaです。

二つ目はボンド数(Bond number)です。

Bo=g(ρlρv)L2σBo = \frac{g(\rho_l - \rho_v)\,L^2}{\sigma}

浮力と表面張力の比です。気泡の特性寸法LLはこの二つの釣り合いから出ます。気泡直径はDbσ/[g(ρlρv)]D_b \propto \sqrt{\sigma / [g(\rho_l-\rho_v)]}で決まります。CHF式の四乗根の中に表面張力と密度差が入っている理由がここにあります。気泡の大きさと離脱頻度が、結局は熱流束の上限を決めるのです。

覚えておく三行#

  • 沸騰曲線は単調増加ではありません。過熱度を上げても遷移沸騰区間で熱流束が下がり、限界熱流束(CHF)という崖が存在します。
  • CHFを超えると動作点が膜沸騰へ跳ね、壁温度が数百度跳ね上がります。抜山の電線が溶けた理由です。
  • ライデンフロスト効果は同じ非単調性の日常版です。より熱いフライパンの上で液滴が蒸気膜に浮かんで長く生き延びます。

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