Skip to content
cfd-lab:~/ja/posts/2026-06-18-de-laval-nozz…online
NOTE #078DAY THU 유체역학DATE 2026.06.18READ 5 min readWORDS 2,436#유동현상#Compressible-Flow#De-Laval-Nozzle#Choked-Flow#Gas-Dynamics

超音速にするには管を広げよ — 先細末広ノズルとチョーキング

面積マッハ関係から背圧による7つのノズル流れまで

庭のホースの先を指でつまむと、水はより速く飛び出します。狭めれば速くなる — 私たちの直感はここで止まります。ところがロケットノズルは正反対の形をしています。スロートの後ろがトランペットのように広がっているのです。音速を超えた気体は、管を広げないとさらに速くなりません。この記事では、その逆転がなぜ起こるのかを面積マッハ関係でたどり、背圧を下げながらノズル内部で起こる7つの段階を実際に操作してみます。

狭めると速くなる、音速を超えると逆になる#

圧縮性流れ(密度が変化する流れ)では、面積と速度の関係がマッハ数によって反転します。一次元等エントロピー流れの面積速度関係が、それを一行で語ります。

dAA=(M21)dVV\frac{dA}{A} = (M^2 - 1)\,\frac{dV}{V}

ここで AA は断面積、VV は速度、MM はマッハ数(速度÷音速)です。符号がすべてを決めます。

亜音速(M<1M<1)では M21<0M^2-1<0 です。速度を上げる(dV>0dV>0)には面積を減らす(dA<0dA<0)必要があります。ホースをつまむ直感そのままです。

超音速(M>1M>1)では M21>0M^2-1>0 です。さらに速くするには面積を広げなければなりません。符号が反転します。

ですから気体を音速の向こうへ加速するには、まず狭めて音速まで上げ、その地点から広げます。この先細・末広の形が先細末広(de Laval)ノズルです。最も狭い場所をスロートと呼びます。

一つの面積に二つのマッハ数#

面積マッハ関係は、等エントロピー流れで断面積とマッハ数を結びつけます。

AA=1M[2γ+1(1+γ12M2)]γ+12(γ1)\frac{A}{A^*} = \frac{1}{M}\left[\frac{2}{\gamma+1}\left(1 + \frac{\gamma-1}{2}M^2\right)\right]^{\frac{\gamma+1}{2(\gamma-1)}}

ここで AA^*M=1M=1 となる臨界断面積(スロート面積)、γ\gamma は比熱比(定圧比熱÷定容比熱、空気で約1.4)です。

右辺は M=1M=1 で最小値1をとるU字曲線です。したがって1より大きい面積比一つに、マッハ数の解が二つ対応します。一つは亜音速、もう一つは超音速です。

下のグラフで面積比を動かしてみましょう。

M=1M=0.20M=2.64Mach numberA / A*
subsonic: M=0.197, p/p0=0.973  |  supersonic: M=2.637, p/p0=0.047

面積比を大きくすると、二つの解は両側へ離れていきます。亜音速の解は0に近づき、超音速の解はどんどん大きくなります。同じノズル形状でも、どちらの枝をたどるかは出口にかかる圧力、すなわち背圧が決めます。

チョーキング — スロートがもう受け入れられない瞬間#

背圧を徐々に下げると、ノズルを通る質量流量が増えます。しかし無限には増えません。スロートの速度が音速(M=1M=1)に達した瞬間に限界に当たります。

理由は情報の伝わる速さにあります。圧力の擾乱は音速で上流へ伝わります。スロートが音速になると、下流の圧力変化の信号は上流へさかのぼれません。スロート上流は背圧がさらに下がったことを「知る」ことができないのです。質量流量は最大値に固定されます。この状態をチョーキングと呼びます。

チョークしたノズルの最大質量流量は、スロート面積 AA^* とよどみ条件だけで決まります。

m˙=Ap0γRT0(2γ+1)γ+12(γ1)\dot{m} = A^* \, p_0 \sqrt{\frac{\gamma}{R T_0}} \left(\frac{2}{\gamma+1}\right)^{\frac{\gamma+1}{2(\gamma-1)}}

ここで p0p_0 はよどみ圧力、T0T_0 はよどみ温度、RR は気体定数です。背圧がどれだけ下がっても、この値は変わりません。ロケットエンジンの推力をスロートの大きさで設計する根拠がここにあります。

背圧を下げながら起こる7つの段階#

本当のドラマはチョーキングのあとに始まります。背圧 pbp_b をよどみ圧力 p0p_0 からゆっくり下げると、ノズル内部の流れが段階的に変わります。

下のシミュレーションで操作してみましょう。背圧比のスライダーを1.0から0.05まで下げながら、ノズル内部の色(マッハ数)と下の圧力曲線を観察します。

順に整理するとこうなります。

(a) 亜音速ベンチュリ。 背圧が十分高ければ全区間が亜音速です。スロートで最も速くなり、末広部で再び遅くなります。圧力はスロートで最低、出口でほぼ回復します。

(b) 第一臨界点。 背圧をさらに下げると、スロートがちょうど M=1M=1 に達します。ここでチョーキングが始まります。

(c)〜(d) ノズル内部の衝撃波。 さらに下げると末広部で流れが超音速に加速し、垂直衝撃波(流れを急に亜音速へ戻す不連続面)に出会います。衝撃波の後ろは亜音速なので再び減速し、背圧に合わせます。背圧を下げるほど衝撃波は出口側へ押しやられます。

(e) 過膨張。 衝撃波が出口を出ると、ノズル内部は完全に超音速になります。ただし出口圧力が背圧より低いため、ノズルの外で斜め衝撃波が差を埋めます。これを過膨張(overexpanded)と呼びます。

(f) 設計点。 出口圧力が背圧とちょうど等しくなる一点です。ノズルの内外に衝撃波がありません。最も効率の良い作動条件です。

(g) 不足膨張。 背圧が設計点より低くなると、出口の気体はノズルの外で膨張波によってさらに膨らみます。これを不足膨張(underexpanded)と呼びます。

ロケットが高度を上げて大気圧(背圧)が下がると、(e) → (f) → (g) を順に通過します。地上で過膨張だったノズルが、高空で設計点を経て不足膨張になるのはこのためです。

コードでノズルを解く#

面積マッハ関係の二つの解を二分法で求め、出口面積比から設計圧力を計算するコードです。

import numpy as np
 
def area_ratio(mach, gamma=1.4):
    """等エントロピー面積比 A/A*(Mach の関数)"""
    t = 1.0 + 0.5 * (gamma - 1.0) * mach**2
    expo = (gamma + 1.0) / (2.0 * (gamma - 1.0))
    return (1.0 / mach) * (2.0 / (gamma + 1.0) * t) ** expo
 
def invert_area_ratio(target, gamma=1.4, branch="sub"):
    """与えられた A/A* に対する Mach 解(亜音速/超音速の枝)"""
    lo, hi = (1e-4, 1.0) if branch == "sub" else (1.0, 8.0)
    for _ in range(80):
        mid = 0.5 * (lo + hi)
        f = area_ratio(mid, gamma)
        # 亜音速の枝は減少、超音速の枝は増加
        ascending = (branch == "sup")
        if (f < target) == ascending:
            lo = mid
        else:
            hi = mid
    return 0.5 * (lo + hi)
 
def pressure_ratio(mach, gamma=1.4):
    """静圧/よどみ圧力比 p/p0"""
    return (1.0 + 0.5 * (gamma - 1.0) * mach**2) ** (-gamma / (gamma - 1.0))
 
# 出口面積比4.0のノズルの設計条件
ae_over_astar = 4.0
m_exit = invert_area_ratio(ae_over_astar, branch="sup")
p_design = pressure_ratio(m_exit)
 
print(f"設計出口 Mach     = {m_exit:.3f}")
print(f"設計圧力比 pe/p0  = {p_design:.4f}")
print(f"逆算面積比の確認  = {area_ratio(m_exit):.3f}")

実行結果:

設計出口 Mach     = 2.940
設計圧力比 pe/p0  = 0.0298
逆算面積比の確認  = 4.000

面積比4.0のノズルはマッハ2.94まで加速し、そのとき出口圧力はよどみ圧力の約3%です。つまり背圧が p0p_0 の3%程度のときが、このノズルの設計点です。逆算した面積比が入力の4.0と一致するので、二つの関数が互いに正確な逆関数であることも確認できます。

覚えておくこと#

  • 音速より下では狭めるほど速くなりますが、音速を超えると広げないと速くなりません。だからノズルは先細末広の形です。
  • スロートが M=1M=1 に達するとチョークします。背圧をさらに下げても質量流量は増えません。
  • 同じノズルでも、背圧に応じてベンチュリ・内部衝撃波・過膨張・設計点・不足膨張を行き来します。出口圧力と背圧が等しくなる一点が設計点です。

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