等方性乱流とエネルギーカスケード
等方性乱流とエネルギーカスケード
大きな渦が小さな渦にエネルギーを渡し、最終的に粘性がすべてを熱に変える — コルモゴロフの 法則と最小渦サイズの正体。
はじめに
本章は本書全体で最も「乱流らしい」絵を描く章である。第1章で挙げた五つの特性 — 拡散性、3次元渦度、散逸 — がどのように一つのシナリオに束ねられるかを示す。本章を読み終えると、読者はコルモゴロフの 法則がなぜそのような形になるのかを次元解析だけで説明でき、乱流に「これ以上分裂しない最小の渦」が存在する理由を一行で述べられるようになるはずだ。第10章(DNS)がなぜあれほど高価なのかという問いの輪郭も、ここで先取りされる。
本論 1 — 等方性という理想化
等方性(isotropy) とは、流れの統計量が回転に対して不変であるという性質である。すなわち、座標軸をどの角度に回しても、平均運動エネルギー、分散、相関関数といった統計が変わらない。
現実世界の乱流のほとんどは等方的ではない。煙突から立ち上る煙は縦に伸び、壁の近くでは壁に平行な方向が強く出る。すなわち 大スケールはほぼ常に非等方的である。しかし、渦が小さくなるにつれて、この方向性は忘れられていく傾向がある。
コルモゴロフ(A. N. Kolmogorov, 1903–1987)はこの事実を一つの仮説に格上げした: 小さな渦では統計が局所的に等方である(local isotropy)。これはすべての乱流が最初から等方的だという主張ではなく、「方向情報はカスケードを通って洗い流される」という主張である。この理想化のおかげで、我々は小スケールを普遍的な唯一の絵として扱える。
本論 2 — リチャードソンのカスケード
ルイス・フライ・リチャードソン(L. F. Richardson, 1881–1953)は1922年に一編の詩を残した。散文に訳せば次のような意味になる: 大きな渦は自身の速度を食って生きる小さな渦を抱え、小さな渦はさらに小さな渦を抱え、こうして分子スケールの粘性に届くまで降りていく。
この一文に乱流の絵のすべてが詰まっている。流れに外部からエネルギーが入る場所は常に 大スケールである — ポンプ、翼、風速差。このエネルギーは大きな渦を作り、大きな渦は不安定なので自分より小さな渦に分裂する。その小さな渦も同じ運命をたどる。エネルギーは一方向に、大きい側から小さい側へ流れる。この流れの率を我々は (epsilon, 単位質量あたりのエネルギー散逸率) と呼ぶ。単位は 。
肝心なのは、このカスケードが 局所的 であることだ。ある中間スケール の渦は、自分より少し大きい渦からエネルギーを受け取り、自分より少し小さい渦にエネルギーを渡す。スケールをジャンプしない。
本論 3 — コルモゴロフの三つの仮説と 法則
1941年、コルモゴロフは上の絵を三つの仮説に整理した:
- エネルギー注入: 大きな渦が単位質量あたり の率でエネルギーを注入する。
- 慣性領域(inertial range): 大スケールと小スケールの間にある中間領域では、統計量は と波数 (wavenumber, 単位は 、渦サイズの逆数) のみに依存する。粘性 (nu, 動粘性係数, 単位 ) は直接には現れない。
- 散逸領域: 十分小さなスケールでは、粘性がついに渦を食い尽くし、運動エネルギーが熱に変わる。
仮説2が最も強力である。慣性領域のエネルギースペクトル — 波数 の近傍に含まれる単位質量あたりのエネルギー密度 — が と だけの関数であれば、次元のみで形が決まる。
次元を書き下そう。、、。 の両辺の次元を合わせると、、 が一意に決まる。したがって
定数 を コルモゴロフ定数 と呼ぶ。この一行が20世紀の乱流研究の最も有名な結果であり、風洞・海洋・大気いずれの測定でも慣性領域のスペクトルの傾きが であることが確認されている。
本論 4 — コルモゴロフ長さ
カスケードはどこで止まるのか? 渦が小さくなるほど、その渦の局所レイノルズ数 は小さくなる。あるしきい値のサイズで になると、粘性が慣性を圧倒し、その渦はもはや分裂できずに熱として散逸する。このサイズを コルモゴロフ長さ (eta) と呼ぶ。
もまた次元解析で決まる。 と だけから長さの次元を持つ量はただ一つ:
常温の空気 () で比較的穏やかな乱流 () なら は約 0.4 mm。居間の中で起きる空気の流れも、1 mm 以下の最小渦を抱えていることになる。産業用ガスタービンのように がさらに大きい場合は、 はマイクロメートル単位まで下がる。
この数字が次章の冒頭を決める: DNSは格子サイズを まで縮めなければならない。だからDNSの計算量は の約3乗で爆発し、産業流れに適用しにくいと言われるのだ。
Pythonで確かめる
# 偽のスペクトルを作り、慣性領域で傾きを測る。
# 結果は -5/3 ≈ -1.667 の近傍になるはず。
import numpy as np
# 波数: 1 ~ 1000 (対数等間隔)
k = np.logspace(0, 3, 200)
# 慣性領域では E ~ k^(-5/3)、
# 粘性散逸領域では指数関数で減衰すると仮定。
eps = 0.01 # エネルギー散逸率 [m^2/s^3]
C = 1.5 # コルモゴロフ定数
E = C * eps**(2/3) * k**(-5/3) * np.exp(-(k / 600)**2)
# 慣性領域だけ切り出して対数対数で直線フィット
mask = (k >= 5) & (k <= 100)
slope, intercept = np.polyfit(np.log10(k[mask]), np.log10(E[mask]), 1)
print(f"慣性領域の傾き = {slope:.3f} (理論値 -1.667)")
# コルモゴロフ長さも確認してみる。
nu = 1.5e-5 # 空気の動粘性係数 [m^2/s]
eta = (nu**3 / eps)**(1/4)
print(f"コルモゴロフ長さ eta = {eta*1e3:.3f} mm")
出力の傾きが 近傍に落ち、 が 1 mm 未満で出てくれば、カスケードの二つの核心式を両方とも手で触ったことになる。
次章へ
第10章: 直接数値シミュレーション(DNS)では、本章で見た がなぜ計算コスト爆発の直接の原因になるのかを、格子点数のスケーリングとともに定量的に扱う。カスケードの絵が頭にあれば、DNS・LES・RANSのトレードオフがはるかに鮮明に見えるはずだ。