飛行機はなぜ空を飛べるのでしょうか。駅のホームで電車が高速で通過するとき、なぜ体が線路側に引き寄せられるような感覚を覚えるのでしょうか。あるいは、霧吹きのレバーを握ると、なぜ液体が細かい霧となって噴き出すのでしょうか。
これらの現象にはすべて共通する物理法則が潜んでいます。それがベルヌーイの定理(Bernoulli’s theorem)です。ベルヌーイの定理は、流れている流体の中で「速度が大きい場所では圧力が低くなる」という直感的にも納得しやすい関係を、エネルギー保存則の観点から定量的に示す定理です。
ベルヌーイの定理は流体力学で最も有名かつ実用的な定理であり、これを理解することで以下のような幅広い応用に対処できるようになります。
- 航空工学: 翼周りの圧力分布から揚力を見積もる
- 計測工学: ピトー管による流速の測定、ベンチュリ管による流量の測定
- 土木・水理学: 容器やダムからの水の流出速度の予測(トリチェリの定理)
- 化学工学: 配管系における圧力損失と流量の設計
- 日常生活: 霧吹きや噴霧器、カーブを曲がるときのボールの軌道(マグヌス効果)
本記事では、ベルヌーイの定理の直感的な理解から出発し、オイラーの運動方程式からの厳密な導出、そしてピトー管・ベンチュリ管・トリチェリの定理という代表的な応用例を丁寧に解説します。さらに、翼の揚力に関する「等時間通過説」という広く信じられている誤解についても触れます。最後に、Pythonによる可視化を通じて理論的な理解を深めます。
本記事の内容
- ベルヌーイの定理の直感的な理解とエネルギー保存則との関係
- オイラーの運動方程式からの厳密な導出(全ステップ解説付き)
- 定理が成り立つための4つの条件
- ピトー管・ベンチュリ管・トリチェリの定理への応用
- 翼の揚力に関するよくある誤解
- Pythonでの可視化と数値計算
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。
ベルヌーイの定理の直感的な理解
流体のエネルギー保存則
高校物理で学んだ力学的エネルギー保存則を思い出しましょう。ボールを手から離すと、位置エネルギーが運動エネルギーに変わりながら落下します。摩擦がなければ、位置エネルギーと運動エネルギーの合計は常に一定です。
ベルヌーイの定理は、この力学的エネルギー保存則を流体に拡張したものと考えることができます。ただし、流体には「圧力」という固体にはないエネルギーの形態が加わります。流体では、圧力エネルギー・運動エネルギー・位置エネルギーの3つの合計が、流線に沿って一定に保たれます。
イメージとしては、水道のホースを思い浮かべてください。ホースの先をつまんで断面積を小さくすると、水は勢いよく飛び出します。つまり流速が増えます。このとき、エネルギーの総量は変わっていないので、流速(運動エネルギー)が増えた分、圧力(圧力エネルギー)が下がっているのです。これがベルヌーイの定理の本質です。
「速いと圧力が低い」の直感
もう少し直感を深めましょう。空気の流れの中に自分が立っていることを想像してください。周囲の空気が速く流れているとき、空気の分子は主に流れの方向に運動しています。分子が「横方向に壁を押す力」、すなわち圧力に使えるエネルギーは、流れ方向の運動に使われてしまっている分だけ小さくなります。このように、流体の運動エネルギーが大きいほど、圧力として発揮されるエネルギーは小さくなる、という関係がベルヌーイの定理です。
駅のホームで電車が通過すると吸い寄せられる感覚も、この原理で説明できます。電車のすぐ近くの空気は電車に引きずられて高速で流れているため、圧力が低くなっています。一方、ホームから離れた位置の空気はほぼ静止しているため、圧力は通常の大気圧のままです。この圧力差によって、体が電車の方向に押されるのです。
ここまでの直感的な理解をもとに、次に定理の数学的な形を見ていきましょう。
ベルヌーイの定理の数学的表現
ベルヌーイの定理を数式で表すと、次のようになります。流線に沿った2点において、以下の量が一定に保たれます。
$$ \begin{equation} p + \frac{1}{2}\rho v^2 + \rho g z = \text{const} \quad (\text{流線上で一定}) \end{equation} $$
ここで、各記号の意味は次のとおりです。
- $p$: 流体の圧力 [Pa]
- $\rho$: 流体の密度 [kg/m$^3$]
- $v$: 流体の速度の大きさ [m/s]
- $g$: 重力加速度 [m/s$^2$]
- $z$: 基準面からの高さ [m]
この式は「流線上の任意の2点を取ったとき、圧力 + 動圧 + 位置圧力が等しい」ということを述べています。別の書き方をすれば、流線上の点1と点2について次が成り立ちます。
$$ \begin{equation} p_1 + \frac{1}{2}\rho v_1^2 + \rho g z_1 = p_2 + \frac{1}{2}\rho v_2^2 + \rho g z_2 \end{equation} $$
各項の物理的意味
ベルヌーイの定理の各項は、それぞれ単位体積あたりのエネルギーに対応しています。以下の表で整理しましょう。
| 項 | 名称 | 物理的意味 | 単位 |
|---|---|---|---|
| $p$ | 静圧(static pressure) | 流体が持つ圧力エネルギー(単位体積あたり) | Pa = J/m$^3$ |
| $\frac{1}{2}\rho v^2$ | 動圧(dynamic pressure) | 流体の運動エネルギー(単位体積あたり) | Pa = J/m$^3$ |
| $\rho g z$ | 位置圧(hydrostatic pressure) | 流体の位置エネルギー(単位体積あたり) | Pa = J/m$^3$ |
| $p + \frac{1}{2}\rho v^2 + \rho g z$ | 全圧(total pressure) | 3つの和で、流線上一定 | Pa = J/m$^3$ |
Pa(パスカル)は N/m$^2$ ですが、これは J/m$^3$ と同じ次元を持ちます。つまり、圧力は「単位体積あたりのエネルギー」という解釈ができるのです。このことから、ベルヌーイの定理は「流体のエネルギー保存則」そのものであることが明確に見てとれます。
流速が増えると動圧 $\frac{1}{2}\rho v^2$ が増加し、全圧が一定であるためその分だけ静圧 $p$ が下がります。これが「流体が速く流れるところでは圧力が低い」という原理の数学的表現です。
ヘッドによる表現
工学の実務では、ベルヌーイの定理の各項を $\rho g$ で割って「ヘッド」(高さの次元)で表すことがあります。
$$ \begin{equation} \frac{p}{\rho g} + \frac{v^2}{2g} + z = \text{const} \end{equation} $$
ここで $\frac{p}{\rho g}$ を圧力ヘッド、$\frac{v^2}{2g}$ を速度ヘッド、$z$ を位置ヘッドと呼びます。各項の単位が [m] になるため、水柱やダムの設計で扱いやすくなります。静水力学で学ぶ水圧の概念とも直接的に接続します。
ここまでベルヌーイの定理の数学的な形と各項の物理的意味を確認しました。しかし、この定理はどんな流体にでも無条件に成り立つわけではありません。次に、定理が成り立つための前提条件を明確にしておきましょう。
ベルヌーイの定理の適用条件
ベルヌーイの定理は非常に便利ですが、いくつかの重要な前提条件のもとで成り立つ定理です。これらの条件を忘れると、現実の問題に適用したときに大きな誤差が生じます。以下の4つの条件をしっかり押さえておきましょう。
条件1: 定常流(steady flow)
流れ場が時間変化しないことを意味します。数学的には、速度場の時間偏微分がゼロです。
$$ \frac{\partial \bm{v}}{\partial t} = 0 $$
例えば、蛇口から一定の水量が流れ続けている状態は定常流と見なせます。一方、蛇口を開け始めた瞬間や、水槽の水位が刻々と変化している状況は非定常流であり、ベルヌーイの定理をそのまま適用することはできません(非定常ベルヌーイの式を使う必要があります)。
条件2: 非粘性流体(inviscid fluid)
流体の粘性(ねばり)が無視できるという仮定です。実際の流体には必ず粘性がありますが、レイノルズ数が十分に大きい高速の流れでは、流体内部の粘性力は慣性力に比べて十分小さくなります。このような場合、粘性を無視した理想流体(ideal fluid)として扱うことが正当化されます。
ただし、物体表面のごく近く(境界層)では粘性の影響が無視できないため、ベルヌーイの定理は厳密には適用できません。境界層の外側の主流領域で使う定理だと理解しておくと良いでしょう。層流と乱流の記事で扱うように、壁面近傍では粘性が支配的になります。
条件3: 非圧縮性流体(incompressible fluid)
流体の密度 $\rho$ が一定であるという仮定です。水などの液体はほぼ非圧縮ですから、この条件は自然に満たされます。気体であっても、流速がマッハ数 0.3 以下(空気中で約 100 m/s 以下)の場合、密度変化は 5 % 程度に収まるため、非圧縮と近似できます。
逆に、超音速の流れや衝撃波を含む流れでは密度変化が大きくなるため、非圧縮の仮定は成り立ちません。そのような場合には、圧縮性を考慮した拡張版のベルヌーイの式が必要になります。流体の性質の記事では、圧縮性・非圧縮性の判定基準についてより詳しく解説しています。
条件4: 同一流線上
ベルヌーイの定理は、同一の流線上にある2点の間で成り立つ法則です。異なる流線上の2点にはそのまま適用できません。
ただし、流れが渦なし(非回転流、すなわち渦度と循環で学ぶ渦度がゼロ)の場合には、流れ場全体(異なる流線間でも)でベルヌーイの定理が成り立ちます。これはポテンシャル流れで詳しく扱う重要な結果です。
以上の4つの条件をまとめると、ベルヌーイの定理は「定常・非粘性・非圧縮の流体の流線に沿って」成り立つエネルギー保存則です。これらの条件を覚えておくことは、実際の問題に定理を適用する際に非常に重要です。
では次に、このベルヌーイの定理がどのように導出されるのかを見ていきましょう。出発点はオイラーの運動方程式です。
オイラーの運動方程式
ベルヌーイの定理を導出するための出発点は、非粘性流体の運動方程式であるオイラーの運動方程式です。これはナビエ・ストークス方程式から粘性項を除いたものに相当します。
オイラーの運動方程式の形
粘性を無視した流体に対するニュートンの運動方程式(単位体積あたり)は、次のように書けます。
$$ \begin{equation} \rho \frac{D\bm{v}}{Dt} = -\nabla p + \rho \bm{g} \end{equation} $$
左辺は「単位体積あたりの質量 $\times$ 加速度」であり、ニュートンの第二法則 $\bm{F} = m\bm{a}$ の流体版です。右辺の第1項 $-\nabla p$ は圧力勾配力で、圧力が高い方から低い方へ流体を押す力を表します。第2項 $\rho \bm{g}$ は重力です。
ここで $\frac{D}{Dt}$ は物質微分(material derivative)と呼ばれ、流体粒子の立場で見た時間変化率を表します。具体的には次のように展開されます。
$$ \begin{equation} \frac{D\bm{v}}{Dt} = \frac{\partial \bm{v}}{\partial t} + (\bm{v} \cdot \nabla)\bm{v} \end{equation} $$
第1項 $\frac{\partial \bm{v}}{\partial t}$ は速度場の時間変化(非定常項)、第2項 $(\bm{v} \cdot \nabla)\bm{v}$ は流体が自分自身を移流することによる加速度(対流加速度)です。
重力のポテンシャル表現
重力 $\bm{g}$ は鉛直下向きなので、$z$ 軸を鉛直上向きに取ると $\bm{g} = -g\bm{e}_z$ と書けます。さらに、重力はポテンシャル力なので次のように表現できます。
$$ \rho \bm{g} = -\rho g \nabla z = -\nabla(\rho g z) $$
ここで非圧縮($\rho = \text{const}$)を使いました。この表現を使うと、オイラーの運動方程式は次のようになります。
$$ \begin{equation} \rho \frac{D\bm{v}}{Dt} = -\nabla p – \nabla(\rho g z) = -\nabla(p + \rho g z) \end{equation} $$
右辺に $p + \rho g z$ という組み合わせが自然に現れています。これはベルヌーイの定理に登場する項の一部であり、導出への道筋が見えてきます。
次に、このオイラーの運動方程式を流線に沿って積分することで、ベルヌーイの定理を導きましょう。
ベルヌーイの定理の導出
流線に沿った運動方程式
ベルヌーイの定理を導出するために、流線に沿った座標 $s$ を導入します。流線上のある点における流速の大きさを $v$、流線方向の単位ベクトルを $\bm{e}_s$ とすると、速度ベクトルは $\bm{v} = v\bm{e}_s$ です。
定常流($\frac{\partial \bm{v}}{\partial t} = 0$)の場合、オイラーの運動方程式の流線方向成分は次のように書けます。
$$ \begin{equation} \rho v \frac{dv}{ds} = -\frac{dp}{ds} – \rho g \frac{dz}{ds} \end{equation} $$
左辺の $\rho v \frac{dv}{ds}$ は、流線に沿って移動する流体粒子の加速度(単位体積あたりの慣性力)です。右辺の第1項は圧力勾配による力、第2項は重力の流線方向成分です。
導出の各ステップ
ステップ1: 方程式の整理
すべての項を左辺に集めます。
$$ \begin{equation} \rho v \frac{dv}{ds} + \frac{dp}{ds} + \rho g \frac{dz}{ds} = 0 \end{equation} $$
この式は「流線方向に沿って、慣性力 + 圧力勾配力 + 重力 = 0」というニュートンの運動方程式の釣り合いを表しています。
ステップ2: 運動エネルギー項の変形
第1項を変形します。$v \, dv = \frac{1}{2}d(v^2)$ という微分の公式を使います(これは $\frac{d}{dv}\left(\frac{v^2}{2}\right) = v$ から確認できます)。
$$ \rho v \frac{dv}{ds} = \frac{1}{2}\rho \frac{d(v^2)}{ds} $$
これを代入すると、方程式は次のようになります。
$$ \begin{equation} \frac{1}{2}\rho \frac{d(v^2)}{ds} + \frac{dp}{ds} + \rho g \frac{dz}{ds} = 0 \end{equation} $$
ステップ3: 共通因子のくくり出し
すべての項に $\frac{d}{ds}$ がかかっていることに注目します。非圧縮の仮定($\rho = \text{const}$)から、$\rho$ を微分の中に入れることができます。したがって、全体を1つの微分としてまとめられます。
$$ \begin{equation} \frac{d}{ds}\left(\frac{1}{2}\rho v^2 + p + \rho g z\right) = 0 \end{equation} $$
ステップ4: 流線に沿った積分
微分がゼロということは、括弧の中身は $s$ によらない定数です。すなわち、流線に沿って積分すると次が得られます。
$$ \begin{equation} \frac{1}{2}\rho v^2 + p + \rho g z = \text{const} \quad (\text{流線上で一定}) \end{equation} $$
これがベルヌーイの定理です。
導出のまとめ
導出の全体像を振り返りましょう。
- オイラーの運動方程式(非粘性流体の運動方程式)から出発した
- 定常流の仮定により時間微分項を落とした
- 流線方向の成分を取り出した
- $v\,dv = \frac{1}{2}d(v^2)$ の公式で運動エネルギーの形にまとめた
- 非圧縮の仮定($\rho = \text{const}$)を使って全微分の形にした
- 流線に沿って積分して定数を得た
このように、ベルヌーイの定理は「定常」「非粘性」「非圧縮」という3つの仮定と「流線に沿って」という条件のもとで導出されます。導出過程を理解しておくと、どのような場面で定理が使えて、どのような場面で使えないかが判断できるようになります。
ベルヌーイの定理の導出ができたところで、次にこの定理の具体的な応用例を見ていきましょう。まずは流速の測定に使われるピトー管です。
水平な流れの場合の簡略化
応用例に入る前に、実用上よく使われる簡略化を確認しておきます。多くの工学的な問題では、流れが水平(高さの変化が無視できる)であるため、位置エネルギーの項を省略できます。$z_1 = z_2$ のとき、ベルヌーイの定理は次のように簡略化されます。
$$ \begin{equation} p_1 + \frac{1}{2}\rho v_1^2 = p_2 + \frac{1}{2}\rho v_2^2 \end{equation} $$
この簡略化された形は、ピトー管やベンチュリ管の解析で頻繁に使用します。高さの差を無視できるかどうかは、問題の規模によって判断します。例えば、配管内の流れで上下方向の差が数センチメートル程度であれば、流速による動圧の変化(数千 Pa)に比べて位置圧の変化(数十~数百 Pa)は十分小さいため無視できます。
それでは、この簡略化した形を使って、ベルヌーイの定理の代表的な応用例を見ていきましょう。
応用1: ピトー管による流速の測定
ピトー管の原理
ピトー管(Pitot tube)は、流体の速度を測定する計測装置です。飛行機の機首やF1マシンの先端に取り付けられている細い管がピトー管です。18世紀にフランスの技術者アンリ・ピトーがセーヌ川の流速を測るために考案したもので、現在でも航空機の速度計として広く使われています。
ピトー管の原理は非常にシンプルです。流れの中に管の開口部を正面から向けると、管の中に入った流体は行き場を失い、速度がゼロになります。この速度がゼロになる点をよどみ点(stagnation point)と呼びます。
ベルヌーイの定理の適用
流れの中の上流側の点(点1: 流速 $v$、圧力 $p$)と、管の先端のよどみ点(点2: 流速 $0$、圧力 $p_0$)にベルヌーイの定理を適用します。水平な流れを仮定すると、次のようになります。
$$ p + \frac{1}{2}\rho v^2 = p_0 + \frac{1}{2}\rho \cdot 0^2 $$
よどみ点での圧力 $p_0$ は全圧(total pressure)と呼ばれ、静圧 $p$ と動圧 $\frac{1}{2}\rho v^2$ の和に等しいことがわかります。
$$ \begin{equation} p_0 = p + \frac{1}{2}\rho v^2 \end{equation} $$
この式を $v$ について解くと、流速の測定式が得られます。
$$ \begin{equation} v = \sqrt{\frac{2(p_0 – p)}{\rho}} \end{equation} $$
つまり、全圧 $p_0$ と静圧 $p$ の差(これを差圧と呼びます)を測定すれば、流速 $v$ を求めることができるのです。実際のピトー管は、管の先端で全圧を、管の側面に開けた小さな孔(静圧孔)で静圧を同時に測定し、その差圧から流速を算出します。
具体的な計算例
航空機が飛行中に、ピトー管が全圧 $p_0 = 101{,}825$ Pa、静圧 $p = 101{,}325$ Pa を測定したとします。空気の密度を $\rho = 1.225$ kg/m$^3$ とすると、流速は次のように求められます。
$$ \begin{align} v &= \sqrt{\frac{2(p_0 – p)}{\rho}} \\ &= \sqrt{\frac{2 \times (101825 – 101325)}{1.225}} \\ &= \sqrt{\frac{2 \times 500}{1.225}} \\ &= \sqrt{816.3} \\ &\approx 28.6 \text{ m/s} \end{align} $$
これは約 103 km/h に相当し、軽飛行機の巡航速度として妥当な値です。差圧がわずか 500 Pa(大気圧の約 0.5 %)であっても、流速を精度よく求めることができる点がピトー管の優れたところです。
ピトー管は「ある1点の流速」を測定する装置でした。次に見るベンチュリ管は、管路を流れる「流量」を測定する装置であり、ベルヌーイの定理と連続の方程式を組み合わせて使います。
応用2: ベンチュリ管による流量の測定
ベンチュリ管の原理
ベンチュリ管(Venturi tube)は、管路の途中に断面積を絞った部分(スロート)を設けた装置です。管の断面積が変化すると、連続の方程式により流速が変化し、それに伴ってベルヌーイの定理により圧力も変化します。この圧力変化を測定することで、管路を流れる流量を求めることができます。
ベンチュリ管は19世紀にイタリアの物理学者ジョヴァンニ・バッティスタ・ベンチュリにちなんで名付けられました。現在でも、水道管やガスパイプラインなどの流量計測に広く使われています。
連続の方程式とベルヌーイの定理の組み合わせ
断面1(上流側: 断面積 $A_1$、流速 $v_1$、圧力 $p_1$)と断面2(スロート: 断面積 $A_2 < A_1$、流速 $v_2$、圧力 $p_2$)を考えます。
まず、非圧縮流体の連続の方程式より、体積流量 $Q$ は一定です。
$$ \begin{equation} Q = A_1 v_1 = A_2 v_2 \end{equation} $$
この式から、スロートの流速は上流側より速いことがわかります($A_2 < A_1$ なので $v_2 > v_1$)。
次に、水平な管路を仮定してベルヌーイの定理を適用します。
$$ \begin{equation} p_1 + \frac{1}{2}\rho v_1^2 = p_2 + \frac{1}{2}\rho v_2^2 \end{equation} $$
スロートでは流速が増加するため、ベルヌーイの定理により圧力は減少します($v_2 > v_1$ なので $p_2 < p_1$)。
流量の導出
連続の方程式から $v_1 = \frac{A_2}{A_1}v_2$ が得られます。これをベルヌーイの定理に代入すると次のようになります。
$$ p_1 + \frac{1}{2}\rho \left(\frac{A_2}{A_1}\right)^2 v_2^2 = p_2 + \frac{1}{2}\rho v_2^2 $$
圧力差 $p_1 – p_2$ について整理します。
$$ p_1 – p_2 = \frac{1}{2}\rho v_2^2 – \frac{1}{2}\rho \left(\frac{A_2}{A_1}\right)^2 v_2^2 $$
右辺の $\frac{1}{2}\rho v_2^2$ をくくり出します。
$$ p_1 – p_2 = \frac{1}{2}\rho v_2^2 \left(1 – \left(\frac{A_2}{A_1}\right)^2\right) $$
これを $v_2$ について解きます。
$$ v_2 = \sqrt{\frac{2(p_1 – p_2)}{\rho\left(1 – (A_2/A_1)^2\right)}} $$
流量 $Q = A_2 v_2$ なので、最終的に次の式が得られます。
$$ \begin{equation} Q = A_2 \sqrt{\frac{2(p_1 – p_2)}{\rho\left(1 – (A_2/A_1)^2\right)}} \end{equation} $$
この式から、上流側とスロートの圧力差 $p_1 – p_2$ を測定すれば、流量 $Q$ が求められることがわかります。断面積比 $A_2/A_1$ は管の形状から既知であり、密度 $\rho$ も流体の種類から決まるため、圧力差さえ測ればよいのです。
具体的な計算例
ベンチュリ管で以下の条件が与えられたとします。
- 上流側の管の直径: $D_1 = 10$ cm = 0.1 m
- スロートの直径: $D_2 = 5$ cm = 0.05 m
- 圧力差: $p_1 – p_2 = 5{,}000$ Pa
- 流体の密度(水): $\rho = 1{,}000$ kg/m$^3$
まず、各断面積を計算します。
$$ A_1 = \frac{\pi D_1^2}{4} = \frac{\pi (0.1)^2}{4} = 7.854 \times 10^{-3} \text{ m}^2 $$
$$ A_2 = \frac{\pi D_2^2}{4} = \frac{\pi (0.05)^2}{4} = 1.963 \times 10^{-3} \text{ m}^2 $$
断面積比の2乗は次のようになります。
$$ \left(\frac{A_2}{A_1}\right)^2 = \left(\frac{1.963 \times 10^{-3}}{7.854 \times 10^{-3}}\right)^2 = (0.25)^2 = 0.0625 $$
流量を計算します。
$$ \begin{align} Q &= A_2 \sqrt{\frac{2(p_1 – p_2)}{\rho\left(1 – (A_2/A_1)^2\right)}} \\ &= 1.963 \times 10^{-3} \times \sqrt{\frac{2 \times 5000}{1000 \times (1 – 0.0625)}} \\ &= 1.963 \times 10^{-3} \times \sqrt{\frac{10000}{937.5}} \\ &= 1.963 \times 10^{-3} \times \sqrt{10.667} \\ &= 1.963 \times 10^{-3} \times 3.266 \\ &\approx 6.41 \times 10^{-3} \text{ m}^3/\text{s} \end{align} $$
これは毎秒 6.41 リットルに相当します。日常的な感覚で言えば、1分間で約 385 リットルの水が流れていることになり、家庭用の蛇口(毎分10~15リットル程度)よりもかなり大きな流量です。
なお、実際のベンチュリ管では流体の粘性や管の入口での流れの乱れなどの影響を補正するために、流出係数 $C_d$(通常 0.95~0.99)を乗じて補正します。
ベンチュリ管では「管路内の流量」を測定しましたが、ベルヌーイの定理のもう1つの古典的な応用として、容器から液体が流出する速度を求めるトリチェリの定理があります。
応用3: トリチェリの定理
容器からの流出問題
大きな水槽の側面に小さな穴が開いているとき、水はどのくらいの速さで流出するでしょうか。この問題は17世紀にイタリアの物理学者エヴァンジェリスタ・トリチェリによって初めて解かれました。
直感的には、水面が高い(穴の位置から水面までの距離が大きい)ほど水は勢いよく流出するはずです。これは、水面の位置エネルギーが流出する水の運動エネルギーに変換されるためです。
ベルヌーイの定理による導出
水面の位置(点1)と穴の位置(点2)にベルヌーイの定理を適用します。
- 点1(水面): 圧力 $p_1 = p_{\text{atm}}$(大気圧)、流速 $v_1 \approx 0$(水槽が十分大きいため水面の降下速度は無視できる)、高さ $z_1 = h$
- 点2(穴): 圧力 $p_2 = p_{\text{atm}}$(大気中に流出するため大気圧)、流速 $v_2 = v$(求めたい値)、高さ $z_2 = 0$(基準面)
ベルヌーイの定理に代入します。
$$ p_{\text{atm}} + \frac{1}{2}\rho \cdot 0^2 + \rho g h = p_{\text{atm}} + \frac{1}{2}\rho v^2 + \rho g \cdot 0 $$
両辺の大気圧 $p_{\text{atm}}$ が相殺されます。これは、水面と穴の両方が大気に開放されているためです。
$$ \rho g h = \frac{1}{2}\rho v^2 $$
両辺を $\rho$ で割り(非圧縮なので $\rho \neq 0$)、$v$ について解きます。
$$ \begin{equation} v = \sqrt{2gh} \end{equation} $$
これがトリチェリの定理(Torricelli’s theorem)です。
物理的意味と自由落下との関係
トリチェリの定理の $v = \sqrt{2gh}$ という式は、高さ $h$ から自由落下した物体が地面に到達したときの速度と全く同じ形をしています。これは偶然ではありません。水面の位置エネルギー $\rho g h$ がそのまま運動エネルギー $\frac{1}{2}\rho v^2$ に変換されるという点で、両者は本質的に同じエネルギー変換の過程です。
例えば、水面が穴から $h = 2$ m の高さにある場合、流出速度は次のようになります。
$$ v = \sqrt{2 \times 9.81 \times 2} = \sqrt{39.24} \approx 6.26 \text{ m/s} $$
これは時速約 22.5 km で、走っている人の速度程度です。水槽の水面から穴までの高さが2倍になると、流出速度は $\sqrt{2}$ 倍になります。このような非線形な関係は、実際のダム設計において放水量を見積もる際に重要です。
ここまで、ベルヌーイの定理の3つの代表的な応用例(ピトー管・ベンチュリ管・トリチェリの定理)を見てきました。次に、ベルヌーイの定理に関して非常によくある誤解について議論しましょう。
よくある誤解: 翼の揚力と「等時間通過説」
飛行機の翼はなぜ揚力を生むのか
ベルヌーイの定理を学ぶと、しばしば「飛行機の翼はベルヌーイの定理で飛んでいる」という説明に出会います。翼の上面は曲面で経路が長く、下面は平らで経路が短い。上面と下面を通過する空気は同じ時間で翼の後縁に到達しなければならないので、上面の空気はより速く流れる。ベルヌーイの定理により速い流れでは圧力が低いから、上面の圧力は下面より低くなり、揚力が生まれる — という説明です。
「等時間通過説」は間違い
この説明は「等時間通過説」(equal transit time theory)と呼ばれ、多くの教科書やウェブサイトで見られますが、これは物理的に誤りです。
なぜ間違いなのか、3つの理由を挙げます。
理由1: 等時間の根拠がない
上面と下面を通る空気が「同じ時間で後縁に到達しなければならない」という物理法則は存在しません。実際の風洞実験で煙を使って可視化すると、上面を通る空気は下面を通る空気よりも先に後縁に到達します。つまり、等時間通過という前提そのものが事実と異なります。
理由2: 対称翼でも揚力が生まれる
等時間通過説に従えば、上面と下面が対称な翼(対称翼)では上下の経路長が同じなので、揚力が生まれないことになります。しかし実際には、対称翼であっても迎角(流れに対する翼の傾き)をつけると揚力が発生します。曲技飛行で飛行機が背面飛行できるのも、この事実の証拠です。
理由3: 定量的な予測が合わない
等時間通過説から予測される揚力の大きさは、実際の揚力よりも大幅に小さくなります。翼の上面と下面の経路差だけでは、実際に観測される流速の差を説明できないのです。
揚力の正しい理解
揚力は、翼が流れの中で空気の流れ方向を変えること(流れの偏向)によって生まれます。翼は空気を下向きに偏向させ、ニュートンの第三法則(作用・反作用の法則)により翼は上向きの力(揚力)を受けます。
ベルヌーイの定理は揚力のメカニズムそのものではなく、「揚力が生まれる結果として翼周りに生じる圧力分布」を定量的に計算するためのツールです。翼の周りの流速分布がわかれば、ベルヌーイの定理から圧力分布を求め、それを翼面で積分することで揚力を計算できます。より厳密な揚力の理論は、渦度と循環で学ぶクッタ・ジューコフスキーの定理で与えられます。
このように、ベルヌーイの定理は「なぜ揚力が生まれるのか」ではなく「揚力がいくらか」を計算する道具として正しく位置づけることが重要です。
ここまでの理論的な解説をふまえて、次にPythonを使った数値計算と可視化でベルヌーイの定理の理解を深めましょう。
Pythonでの可視化
ベンチュリ管の圧力・流速分布
まず、ベンチュリ管における流速と圧力の変化を可視化します。管の断面積がガウス関数的に変化するモデルを用い、連続の方程式とベルヌーイの定理から流速と圧力を計算します。
import numpy as np
import matplotlib.pyplot as plt
# --- ベンチュリ管のパラメータ ---
z = np.linspace(0, 2, 500) # 管の軸方向座標 [m]
# 管の半径: 中央付近でガウス関数的に絞る
R_max = 0.05 # 上流側の半径 [m]
R_min = 0.025 # スロート部の半径 [m]
R = R_max - (R_max - R_min) * np.exp(-((z - 1.0) / 0.2)**2)
A = np.pi * R**2 # 断面積
# 連続の方程式で流速を計算
A_in = np.pi * R_max**2 # 入口の断面積
v_in = 2.0 # 入口の流速 [m/s]
v = A_in * v_in / A # 各位置の流速
# ベルヌーイの定理で圧力を計算(水平な流れ)
rho = 1000 # 水の密度 [kg/m^3]
p_in = 101325 # 入口の圧力 [Pa](1 atm)
p = p_in + 0.5 * rho * (v_in**2 - v**2)
# --- 可視化(3パネル)---
fig, axes = plt.subplots(1, 3, figsize=(18, 5))
# パネル1: ベンチュリ管の形状
ax1 = axes[0]
scale = 10 # 表示用スケール
ax1.fill_between(z, R * scale, 0.7, alpha=0.15, color='gray')
ax1.fill_between(z, -R * scale, -0.7, alpha=0.15, color='gray')
ax1.plot(z, R * scale, 'k-', linewidth=2, label='Wall')
ax1.plot(z, -R * scale, 'k-', linewidth=2)
# 流れ方向を矢印で示す
for zi in [0.3, 0.7, 1.0, 1.3, 1.7]:
idx = np.argmin(np.abs(z - zi))
ax1.annotate('', xy=(zi + 0.08, 0), xytext=(zi - 0.08, 0),
arrowprops=dict(arrowstyle='->', color='blue', lw=1.5))
ax1.set_title('Venturi Tube Cross Section', fontsize=14)
ax1.set_xlabel('Axial position z [m]', fontsize=12)
ax1.set_ylabel('Radial position [x0.1 m]', fontsize=12)
ax1.set_ylim(-0.7, 0.7)
ax1.grid(True, alpha=0.3)
# パネル2: 流速分布
axes[1].plot(z, v, 'b-', linewidth=2)
axes[1].axhline(y=v_in, color='b', linestyle='--', alpha=0.5, label=f'Inlet velocity = {v_in} m/s')
axes[1].set_xlabel('Axial position z [m]', fontsize=12)
axes[1].set_ylabel('Velocity [m/s]', fontsize=12)
axes[1].set_title('Velocity Distribution', fontsize=14)
axes[1].legend(fontsize=10)
axes[1].grid(True, alpha=0.3)
# パネル3: 圧力分布
axes[2].plot(z, p / 1000, 'r-', linewidth=2)
axes[2].axhline(y=p_in / 1000, color='r', linestyle='--', alpha=0.5, label=f'Inlet pressure = {p_in/1000:.1f} kPa')
axes[2].set_xlabel('Axial position z [m]', fontsize=12)
axes[2].set_ylabel('Pressure [kPa]', fontsize=12)
axes[2].set_title('Pressure Distribution', fontsize=14)
axes[2].legend(fontsize=10)
axes[2].grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('venturi_tube.png', dpi=150, bbox_inches='tight')
plt.show()
このグラフから、以下の重要な特徴が読み取れます。
- スロート部($z = 1.0$ m 付近)で流速が最大、圧力が最小になる — 管が絞られた部分で断面積が最小となるため、連続の方程式により流速が最大になります。ベルヌーイの定理に従い、流速が最大の場所で圧力は最小になります。
- 流速と圧力が鏡像関係になっている — 流速が増加する区間では圧力が減少し、流速が減少する区間では圧力が増加しています。これは $p + \frac{1}{2}\rho v^2 = \text{const}$ の関係が流線上のあらゆる点で成り立っていることの視覚的な証拠です。
- 管の上流側と下流側で流速・圧力が元に戻る — ベンチュリ管は形状が対称なので、スロートを通過した後、断面積が元に戻ると流速・圧力も元の値に復帰します。これは非粘性流体ではエネルギー損失がないことを反映しています。
トリチェリの定理: 水面の高さと流出速度の関係
次に、トリチェリの定理の $v = \sqrt{2gh}$ を可視化し、異なる水面高さでの流出速度と流出軌跡を計算します。
import numpy as np
import matplotlib.pyplot as plt
# --- トリチェリの定理の可視化 ---
g = 9.81 # 重力加速度 [m/s^2]
h = np.linspace(0.1, 10, 200) # 水面の高さ [m]
v_out = np.sqrt(2 * g * h) # 流出速度 [m/s]
# 自由落下速度との比較
v_freefall = np.sqrt(2 * g * h) # 高さhからの自由落下速度(同じ式)
fig, axes = plt.subplots(1, 2, figsize=(14, 6))
# パネル1: 水面高さと流出速度の関係
ax1 = axes[0]
ax1.plot(h, v_out, 'b-', linewidth=2, label="Torricelli: $v = \\sqrt{2gh}$")
ax1.set_xlabel('Water height h [m]', fontsize=12)
ax1.set_ylabel('Outflow velocity v [m/s]', fontsize=12)
ax1.set_title("Torricelli's Theorem", fontsize=14)
ax1.legend(fontsize=11)
ax1.grid(True, alpha=0.3)
# 代表的な高さでの値を注釈
for h_val in [1, 3, 5, 10]:
v_val = np.sqrt(2 * g * h_val)
ax1.plot(h_val, v_val, 'ro', markersize=6)
ax1.annotate(f'h={h_val}m\nv={v_val:.1f}m/s',
xy=(h_val, v_val), xytext=(h_val + 0.3, v_val + 0.8),
fontsize=9, color='red')
# パネル2: 異なる高さからの流出軌跡(放物運動)
ax2 = axes[1]
heights = [1, 2, 4, 8] # 穴の高さ(地面からの高さ)
colors = ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728']
for h_hole, color in zip(heights, colors):
v0 = np.sqrt(2 * g * h_hole) # 水平方向の初速
# 穴から出た水は水平に飛び出し、放物運動する
# 穴の位置は地面から h_hole の高さ
t_ground = np.sqrt(2 * h_hole / g) # 地面に到達する時間
t = np.linspace(0, t_ground, 100)
x = v0 * t # 水平方向
y = h_hole - 0.5 * g * t**2 # 鉛直方向
ax2.plot(x, y, color=color, linewidth=2,
label=f'h={h_hole}m (v={v0:.1f}m/s)')
ax2.set_xlabel('Horizontal distance [m]', fontsize=12)
ax2.set_ylabel('Height [m]', fontsize=12)
ax2.set_title('Water Jet Trajectories', fontsize=14)
ax2.legend(fontsize=10)
ax2.set_ylim(0, None)
ax2.set_xlim(0, None)
ax2.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('torricelli.png', dpi=150, bbox_inches='tight')
plt.show()
このグラフから次のことが確認できます。
- 流出速度は水面高さの平方根に比例する — 左のグラフは $v = \sqrt{2gh}$ の関係を示しています。高さが4倍になると流出速度は2倍になる、という非線形の関係が見て取れます。高さ10 mで約14 m/s(時速約50 km)と、かなりの速度になります。
- 流出した水は放物運動を行う — 右のグラフは、穴から水平に飛び出した水が重力に引かれて放物線を描く様子を示しています。穴の高さが大きいほど初速が大きく、かつ落下距離も大きいため、水平方向の到達距離は高さに比例して伸びます($h$ が2倍で到達距離も2倍)。これは初速が $\sqrt{h}$ に比例し、落下時間も $\sqrt{h}$ に比例するため、水平距離は $h$ に比例するという結果です。
ピトー管の流速計算
ピトー管による流速の計算を、さまざまな差圧に対して行います。
import numpy as np
import matplotlib.pyplot as plt
# --- ピトー管の流速計算 ---
rho_air = 1.225 # 空気の密度 [kg/m^3](海面高度)
# 差圧の範囲
delta_p = np.linspace(0, 5000, 500) # [Pa]
v_pitot = np.sqrt(2 * delta_p / rho_air)
fig, ax = plt.subplots(figsize=(10, 6))
ax.plot(delta_p, v_pitot, 'b-', linewidth=2, label='Air ($\\rho$ = 1.225 kg/m$^3$)')
# 水の場合も比較
rho_water = 1000
v_pitot_water = np.sqrt(2 * delta_p / rho_water)
ax.plot(delta_p, v_pitot_water, 'r-', linewidth=2, label='Water ($\\rho$ = 1000 kg/m$^3$)')
ax.set_xlabel('Pressure difference $p_0 - p$ [Pa]', fontsize=12)
ax.set_ylabel('Flow velocity v [m/s]', fontsize=12)
ax.set_title('Pitot Tube: Pressure Difference vs Flow Velocity', fontsize=14)
ax.legend(fontsize=12)
ax.grid(True, alpha=0.3)
# 代表的な値を注釈
for dp_val in [500, 2000, 5000]:
v_val = np.sqrt(2 * dp_val / rho_air)
ax.plot(dp_val, v_val, 'bo', markersize=6)
ax.annotate(f'$\\Delta p$={dp_val}Pa\nv={v_val:.1f}m/s',
xy=(dp_val, v_val), xytext=(dp_val + 100, v_val + 5),
fontsize=9, color='blue')
plt.tight_layout()
plt.savefig('pitot_tube.png', dpi=150, bbox_inches='tight')
plt.show()
# 数値計算の結果を表示
print("=== ピトー管の流速計算 ===")
print(f"空気密度: {rho_air} kg/m^3")
print()
for dp in [100, 500, 1000, 2000, 5000]:
v = np.sqrt(2 * dp / rho_air)
v_kmh = v * 3.6
print(f"差圧 {dp:5d} Pa → 流速 {v:6.1f} m/s ({v_kmh:6.1f} km/h)")
このグラフから以下のことがわかります。
- 空気と水で同じ差圧に対する流速が大きく異なる — 空気は密度が小さいため、同じ差圧でも水に比べてはるかに大きな流速に対応します。例えば差圧 500 Pa のとき、空気では約 28.6 m/s ですが、水ではわずか約 1.0 m/s です。これは $v \propto 1/\sqrt{\rho}$ の関係によるものです。
- 流速は差圧の平方根に比例する — 曲線の形状が放物線の逆(平方根関数)になっています。このため、低い差圧での感度は高く、高い差圧では感度が低くなります。実用的には、ピトー管は低速から中速の測定に適しています。
翼周りの流れとベルヌーイの定理
最後に、簡易的な翼周りのポテンシャル流れ(一様流 + 循環)をシミュレートし、翼の上面と下面で流速が異なる様子を可視化します。ここではジューコフスキー翼型の代わりに、円柱周りのポテンシャル流れに循環を加えたモデルを使います。
import numpy as np
import matplotlib.pyplot as plt
# --- 円柱周りのポテンシャル流れ(循環付き)---
# 一様流 + 二重吹き出し + 渦 = 揚力を生む流れ
U_inf = 10.0 # 一様流速 [m/s]
a = 1.0 # 円柱の半径 [m]
Gamma = 30.0 # 循環の強さ [m^2/s](正の循環で上向き揚力)
# 計算格子
x = np.linspace(-4, 4, 400)
y = np.linspace(-3, 3, 300)
X, Y = np.meshgrid(x, y)
# 極座標変換
r = np.sqrt(X**2 + Y**2)
theta = np.arctan2(Y, X)
# 速度場(極座標)
# v_r = U_inf (1 - a^2/r^2) cos(theta)
# v_theta = -U_inf (1 + a^2/r^2) sin(theta) + Gamma/(2*pi*r)
v_r = U_inf * (1 - a**2 / r**2) * np.cos(theta)
v_theta = -U_inf * (1 + a**2 / r**2) * np.sin(theta) + Gamma / (2 * np.pi * r)
# 直交座標に変換
u = v_r * np.cos(theta) - v_theta * np.sin(theta)
v = v_r * np.sin(theta) + v_theta * np.cos(theta)
# 速度の大きさ
speed = np.sqrt(u**2 + v**2)
# 円柱の内部をマスク
mask = r < a * 1.01
u[mask] = np.nan
v[mask] = np.nan
speed[mask] = np.nan
# 流れ関数
psi = U_inf * Y * (1 - a**2 / r**2) + Gamma / (2 * np.pi) * np.log(r / a)
psi[mask] = np.nan
# ベルヌーイの定理による圧力係数
Cp = 1 - (speed / U_inf)**2
fig, axes = plt.subplots(1, 2, figsize=(16, 6))
# パネル1: 流線と速度場
ax1 = axes[0]
levels_psi = np.linspace(-5, 5, 30)
cs = ax1.contour(X, Y, psi, levels=levels_psi, colors='gray', linewidths=0.5, alpha=0.6)
speed_plot = ax1.contourf(X, Y, speed, levels=30, cmap='coolwarm', alpha=0.8)
plt.colorbar(speed_plot, ax=ax1, label='Speed [m/s]')
# 円柱を描画
circle = plt.Circle((0, 0), a, color='white', ec='black', linewidth=2, zorder=5)
ax1.add_patch(circle)
ax1.set_xlabel('x [m]', fontsize=12)
ax1.set_ylabel('y [m]', fontsize=12)
ax1.set_title('Flow around Cylinder with Circulation', fontsize=14)
ax1.set_aspect('equal')
ax1.set_xlim(-3, 3)
ax1.set_ylim(-2.5, 2.5)
# パネル2: 円柱表面の圧力係数分布
theta_surf = np.linspace(0, 2 * np.pi, 360)
# 表面上の速度
v_theta_surf = -2 * U_inf * np.sin(theta_surf) + Gamma / (2 * np.pi * a)
speed_surf = np.abs(v_theta_surf)
Cp_surf = 1 - (speed_surf / U_inf)**2
ax2 = axes[1]
ax2.plot(np.degrees(theta_surf), Cp_surf, 'b-', linewidth=2)
ax2.axhline(y=0, color='k', linestyle='-', linewidth=0.5)
ax2.fill_between(np.degrees(theta_surf), Cp_surf, 0,
where=(Cp_surf < 0), alpha=0.2, color='red', label='$C_p < 0$ (suction)')
ax2.fill_between(np.degrees(theta_surf), Cp_surf, 0,
where=(Cp_surf >= 0), alpha=0.2, color='blue', label='$C_p > 0$ (pressure)')
ax2.set_xlabel('Angle $\\theta$ [deg]', fontsize=12)
ax2.set_ylabel('Pressure coefficient $C_p$', fontsize=12)
ax2.set_title('Surface Pressure Distribution', fontsize=14)
ax2.legend(fontsize=10)
ax2.set_xlim(0, 360)
ax2.grid(True, alpha=0.3)
# y軸を反転(慣例に合わせて負のCpを上に)
ax2.invert_yaxis()
plt.tight_layout()
plt.savefig('cylinder_flow.png', dpi=150, bbox_inches='tight')
plt.show()
# 揚力の計算(クッタ・ジューコフスキーの定理)
rho = 1.225 # 空気密度
L = rho * U_inf * Gamma # 単位スパンあたりの揚力 [N/m]
print(f"=== 円柱周りの流れ(循環付き)===")
print(f"一様流速: {U_inf} m/s")
print(f"循環: Gamma = {Gamma} m^2/s")
print(f"揚力(クッタ・ジューコフスキー): L = rho * U * Gamma = {L:.1f} N/m")
このグラフから以下の特徴が読み取れます。
- 循環の効果で上下の対称性が崩れている — 左のパネルで、円柱の上側では流速が大きく(赤色)、下側では流速が小さく(青色)なっています。これは、循環(反時計回りの渦)が一様流に重畳されることで、上側では流れが加速し、下側では減速するためです。
- 圧力係数の分布が非対称 — 右のパネルで、$C_p$ の分布が上下で対称ではなく、上面($\theta = 90°$ 付近)で $C_p$ が大きく負に(吸引力が強く)、下面($\theta = 270°$ 付近)では $C_p$ がそれほど負にならないことがわかります。この上下の圧力差を積分したものが揚力です。
- ベルヌーイの定理と揚力の関係 — $C_p = 1 – (v/U_\infty)^2$ はベルヌーイの定理そのものから導かれる関係式です。流速が大きい場所で $C_p$ が負(圧力が一様流圧力より低い)となり、これが吸引力として揚力に寄与しています。クッタ・ジューコフスキーの定理 $L = \rho U_\infty \Gamma$ により、揚力は循環の強さに比例することも確認できます。
ベンチュリ管の流量計算ツール
最後に、ベンチュリ管の流量をさまざまなパラメータで計算できるツールを実装します。
import numpy as np
def venturi_flow_rate(D1, D2, delta_p, rho, Cd=1.0):
"""
ベンチュリ管の流量を計算する
Parameters
----------
D1 : float
上流側の管の直径 [m]
D2 : float
スロートの直径 [m]
delta_p : float
圧力差 p1 - p2 [Pa]
rho : float
流体の密度 [kg/m^3]
Cd : float
流出係数(デフォルト 1.0、理想流体)
Returns
-------
Q : float
体積流量 [m^3/s]
v1 : float
上流側の流速 [m/s]
v2 : float
スロートの流速 [m/s]
"""
A1 = np.pi * D1**2 / 4
A2 = np.pi * D2**2 / 4
beta = A2 / A1 # 面積比
v2 = Cd * np.sqrt(2 * delta_p / (rho * (1 - beta**2)))
v1 = beta * v2
Q = A2 * v2
return Q, v1, v2
# --- 計算例 ---
print("=" * 60)
print("ベンチュリ管の流量計算")
print("=" * 60)
# 基本ケース
D1 = 0.10 # 100 mm
D2 = 0.05 # 50 mm
delta_p = 5000 # Pa
rho = 1000 # kg/m^3(水)
Q, v1, v2 = venturi_flow_rate(D1, D2, delta_p, rho)
print(f"\n【基本ケース】")
print(f" 上流側直径: {D1*1000:.0f} mm")
print(f" スロート直径: {D2*1000:.0f} mm")
print(f" 圧力差: {delta_p} Pa")
print(f" 密度: {rho} kg/m^3")
print(f" ---")
print(f" スロート流速: {v2:.2f} m/s")
print(f" 上流側流速: {v1:.2f} m/s")
print(f" 流量: {Q:.4f} m^3/s = {Q*1000:.2f} L/s")
# パラメータスタディ: 圧力差を変えて流量を計算
print(f"\n【パラメータスタディ: 圧力差の影響】")
print(f" D1={D1*1000:.0f}mm, D2={D2*1000:.0f}mm, rho={rho}kg/m^3")
print(f" {'圧力差 [Pa]':>12s} {'流量 [L/s]':>12s} {'スロート流速 [m/s]':>18s}")
print(f" {'-'*45}")
for dp in [1000, 2000, 5000, 10000, 20000]:
Q, v1, v2 = venturi_flow_rate(D1, D2, dp, rho)
print(f" {dp:>12d} {Q*1000:>12.2f} {v2:>18.2f}")
この数値計算からは、圧力差を大きくすると流量が増加するものの、流量は圧力差の平方根に比例するため、圧力差を4倍にしても流量は2倍にしかならないという非線形な関係が確認できます。これはベルヌーイの定理の $v \propto \sqrt{\Delta p}$ という関係から直接的に理解できます。工学設計では、必要な流量を得るための圧力差を正しく見積もることが重要であり、この非線形性を考慮する必要があります。
ベルヌーイの定理の拡張と限界
非定常ベルヌーイの式
定常流の仮定を外した場合、ベルヌーイの定理は次のように拡張されます。
$$ \begin{equation} \frac{\partial \phi}{\partial t} + \frac{1}{2}v^2 + \frac{p}{\rho} + gz = f(t) \end{equation} $$
ここで $\phi$ は速度ポテンシャル($\bm{v} = \nabla\phi$)で、$f(t)$ は時間のみの関数です。この形は、例えば水撃現象(ウォーターハンマー)のような非定常な管内流れの解析に使われます。
圧縮性流体への拡張
マッハ数が大きい圧縮性流体に対しては、ベルヌーイの定理は次のように拡張されます。等エントロピー(断熱可逆)の仮定のもとで、以下の関係が成り立ちます。
$$ \begin{equation} \frac{v^2}{2} + \frac{\gamma}{\gamma – 1}\frac{p}{\rho} + gz = \text{const} \end{equation} $$
ここで $\gamma$ は比熱比です。非圧縮の場合($\rho = \text{const}$)には、$\frac{p}{\rho}$ の積分が $\frac{p}{\rho}$ のままとなり、通常のベルヌーイの定理に帰着します。
粘性の影響: 修正ベルヌーイの式
実際の流体には粘性があるため、流線に沿ってエネルギーが散逸します。この損失を $h_L$(損失ヘッド)として追加すると、修正ベルヌーイの式が得られます。
$$ \begin{equation} \frac{p_1}{\rho g} + \frac{v_1^2}{2g} + z_1 = \frac{p_2}{\rho g} + \frac{v_2^2}{2g} + z_2 + h_L \end{equation} $$
この形は管内流れの設計で非常によく使われます。ダルシー・ワイスバッハの式を用いて損失ヘッド $h_L$ を求め、配管系全体の圧力降下を計算するのが実務の標準的な手法です。
これらの拡張は、ベルヌーイの定理の基本形を理解した上で、各条件の仮定を緩和していくことで自然に得られるものです。まずは定常・非粘性・非圧縮の基本形を確実に身につけることが重要です。
まとめ
本記事では、ベルヌーイの定理について、直感的な理解から厳密な導出、そして代表的な応用例まで包括的に解説しました。
- ベルヌーイの定理: $p + \frac{1}{2}\rho v^2 + \rho g z = \text{const}$(流線上で一定)
- 物理的意味: 流線に沿ったエネルギー保存則であり、圧力エネルギー + 運動エネルギー + 位置エネルギーの和が保存される
- 適用条件: 定常・非粘性・非圧縮・同一流線上の4条件が必要
- 導出: オイラーの運動方程式を流線方向に沿って積分することで得られる
- ピトー管: 全圧と静圧の差圧から流速を測定する($v = \sqrt{2\Delta p / \rho}$)
- ベンチュリ管: 連続の方程式と組み合わせて圧力差から流量を測定する
- トリチェリの定理: 容器の穴からの流出速度は $v = \sqrt{2gh}$(自由落下速度と同じ形)
- 翼の揚力: 「等時間通過説」は誤りであり、揚力は流れの偏向に起因する。ベルヌーイの定理は揚力の大きさを計算する手段
ベルヌーイの定理は流体力学の基礎中の基礎であり、ここで学んだ概念はポテンシャル流れの解析、管内流れの設計、さらには空気力学における翼理論へと発展していきます。
次のステップとして、以下の記事も参考にしてください。
- 連続の方程式 — ベルヌーイの定理とセットで使う質量保存則
- ナビエ・ストークス方程式 — 粘性を含む一般的な流体の運動方程式
- ポテンシャル流れ — 非粘性・非回転流れの理論
- 管内流れ — 粘性を考慮した配管の流量計算
- レイノルズ数 — 粘性力と慣性力の比を表す無次元数