ブラウン運動シミュレーター 戻る
統計物理・拡散現象

ブラウン運動・ランダムウォークシミュレーター

粒子数・ステップ幅・軌跡表示を自由に変えて拡散をリアルタイム観察。アインシュタインのMSD=2dDt公式を実際に検証し、拡散係数Dを推定しよう。

パラメータ設定
粒子数 50
ステップ幅 σ 3.0
フレームあたりステップ数 2
表示設定
軌跡の長さ 100
カラーモード
境界条件
プリセット

アインシュタインの拡散理論

$$\langle r^2 \rangle = 2dDt$$

d=次元(2D)、D=拡散係数、t=経過ステップ

Einstein-Stokes式:

$$D = \frac{k_B T}{6\pi\eta r}$$
0
MSD (px²)
0
D推定値
0
経過ステップ

シミュレーションは自動開始。プリセットや各パラメータを変えて観察しよう。

ブラウン運動・ランダムウォークとは

🧑‍🎓
ブラウン運動って、画面の中で粒子がフラフラ動いてるだけに見えますけど、何がすごいんですか?
🎓
ざっくり言うと、この「フラフラ」が分子の実在を証明したんだ。1905年、アインシュタインはこの動きを数学的に説明して、目に見えない水分子が花粉を蹴っているからだ、と証明したんだよ。このシミュレーターで「粒子数」を増やして、たくさんの粒子の動きの平均を見てみると、規則性が見えてくるよ。
🧑‍🎓
規則性? ランダムな動きなのに? 画面の右側のグラフが「MSD」って書いてありますけど、これですか?
🎓
その通り! MSD(平均二乗変位)は、粒子が初期位置からどれだけ離れたかの2乗の平均値だ。ランダムに見えても、この値は時間に比例してキレイに増えていくんだ。シミュレーターの「ステップ幅 σ」のスライダーを大きくすると、一回の蹴りが強くなるから、グラフの傾き(拡散係数D)が大きくなるのがわかるよ。
🧑‍🎓
へー! でも、この「拡散係数D」って、実世界ではどうやって決まるんですか? シミュレーターで推定できるDと関係あるんですか?
🎓
良い質問だ! 実世界では、アインシュタイン-ストークスの式で決まる。例えば、小さな薬の粒子が血液中をどう拡散するか、を考える時だ。シミュレーターで「境界条件」を「反射」に変えてみよう。容器の中に閉じ込められた粒子の動きを再現できる。実務では、細胞内の分子移動や、半導体の不純物拡散の予測に、この考え方が基礎として使われているんだ。

物理モデルと主要な数式

ブラウン運動の核心は、ランダムな力を受ける粒子の時間経過による平均的な広がりを記述する「アインシュタインの関係式」です。このシミュレーターは、この式が成り立つことをリアルタイムで検証します。

$$\langle r^2 \rangle = 2d D t$$

$\langle r^2 \rangle$: 平均二乗変位 (MSD)、$d$: 次元数(このシミュレーターは2次元なので d=2)、$D$: 拡散係数、$t$: 経過時間(ステップ数)。グラフの直線の傾きが $2dD$ に相当します。

実世界の拡散係数 $D$ は、粒子のサイズや周囲の液体の性質で決まります。これが「アインシュタイン-ストークスの式」です。

$$D = \frac{k_B T}{6\pi\eta r}$$

$k_B$: ボルツマン定数、$T$: 絶対温度、$\eta$: 粘性係数、$r$: 粒子半径。温度が高いほど、粘性が低いほど、粒子が小さいほど、拡散係数が大きく(動きが速く)なります。

実世界での応用

創薬・ドラッグデリバリー:ナノサイズの薬剤粒子が血液中をどのように拡散し、患部に到達するかを予測する基礎モデルとして利用されます。粒子サイズと拡散速度の関係は、薬の設計に直結します。

半導体プロセス:シリコンウェハー中に不純物(ドーパント)を熱拡散させてトランジスタを作る工程で、不純物の広がり方を予測するために拡散方程式が用いられ、その基礎にブラウン運動の理論があります。

環境科学:大気中の微粒子(PM2.5)や水域の汚染物質がどのように広がるかをモデル化する際の基礎過程です。乱流の影響を加味したより複雑なモデルの出発点となります。

金融工学:株価の変動を幾何ブラウン運動としてモデル化し、オプション価格の評価(ブラック-ショールズモデル)などに応用されています。ここでの「ランダムウォーク」は価格の不確実性を表します。

よくある誤解と注意点

このシミュレーターを使い始めるときに、特にCAE初心者がハマりがちなポイントがいくつかあるよ。まず一つ目は、「粒子数が多ければ多いほど正確」と思いがちなこと。確かに統計的なばらつきは減るけど、計算負荷は爆発的に増える。実務では、必要な精度と計算コストのトレードオフを常に考えるんだ。例えば、拡散係数Dを大まかに把握したいだけなら100粒子でも十分だけど、厳密な分布形状を知りたいなら1000粒子以上は必要かもしれない。その判断ができるのがプロの勘所だね。

二つ目は、「ステップ幅σ」と「拡散係数D」の関係を混同しやすい点。シミュレーター上ではσを大きくするとDも大きくなるけど、実世界ではDは物質の性質(温度、粘性、粒子サイズ)で決まる「結果」だ。シミュレーションはそのDを再現するために、適切なσや時間ステップΔtを逆算して設定する必要がある。例えば、水の中のたんぱく質のDが分かっている場合、シミュレーションで同じDを出すためのσは、$$D = \frac{\sigma^2}{2 \Delta t}$$の関係から決めるんだ。この「モデル化」のプロセスを理解しておかないと、ただのゲームで終わっちゃうよ。

最後に、「反射」境界条件の落とし穴。容器を再現できる便利な機能だけど、現実の分子は完全に弾性反射するわけじゃない。壁に近づくと摩擦や化学的な相互作用が起こることもある。シミュレーションで反射条件を使うのは「第一近似」に過ぎないことを頭に入れておこう。細胞内のように複雑な環境を模倣するには、境界に特別なルール(例えば、ある確率で吸着するなど)を追加する必要が出てくるんだ。

関連する工学分野

このランダムウォークの考え方は、CAEの世界のあちこちに顔を出す基礎中の基礎なんだ。例えば「流体粒子法」というシミュレーション手法がある。これは流体を無数の粒子の集合として扱う方法で、各粒子のランダムな動き(拡散)に加えて、流れの速度も考慮する。工場内の空気の流れで粉塵がどう広がるか、とか、河川の汚染物質の拡散を予測するのに使われるよ。

もう一つは「材料工学における相分離・組織形成のシミュレーション」。合金を冷やしていくと、成分が偏って模様(組織)ができることがあるよね。この過程を「Cahn-Hilliard方程式」などの拡散に基づく方程式でモデル化するんだけど、その数値解法の一つに、ランダムウォークをベースにした「モンテカルロ法」が使われることがある。原子一個一個の動きを確率的にシミュレートすることで、巨視的な材料の性質を予測するんだ。

意外なところでは「無線通信ネットワークの設計」にも関連する。例えば、センサーネットワークで、データを隣のノードにランダムに転送しながら最終的に目的地に届ける「拡散型ルーティング」という方式がある。これはまさにパケットのランダムウォークと言える。遅延や信頼性を評価する際の基礎モデルとして、このシミュレーターで学ぶ確率過程の知識が役に立つことがあるよ。

発展的な学習のために

このシミュレーターに慣れてきたら、次のステップに進んでみよう。まずは数学的背景を少し深堀りするのがおすすめ。キーワードは「ウィーナー過程」と「フォッカー-プランク方程式」だ。ウィーナー過程は、連続時間でのブラウン運動を記述する数学モデルで、ここでやっている離散的なランダムウォークの極限として現れる。そして、粒子がランダムに動くとき、その確率分布が時間とともにどう変化するかを記述するのがフォッカー-プランク方程式だ。この式を理解すれば、拡散現象を「粒子の軌跡」と「確率分布の広がり」の両方の視点から捉えられるようになる。

実践的な次の一歩は、「非等方性」や「外力」を加えたモデルを考えてみること。今のシミュレーターはどの方向にも同じ確率で動く「等方性」で、外力はない。しかし現実はそうじゃない。例えば、細胞内では繊維に沿った方向は動きやすく、垂直方向は動きにくい(非等方性拡散)。また、電気泳動では電場という外力が粒子を引っ張る。こうした要素をシミュレーターのルールに自分で追加してみる(例えば、右へ動く確率を少し高めるなど)のは最高の練習問題だ。

最終的には、「ランジュバン方程式」という微分方程式に行き着く。これは粒子に働くランダムな力(揺動力)と粘性抵抗などを直接式にしたものだ。この方程式を数値的に解く(例えばオイラー法など)ことで、より物理的なブラウン運動のシミュレーションができるようになる。ここまで来れば、分子動力学法などより高度なシミュレーション手法への入り口に立ったと言っていい。一歩ずつ、確実にステップアップしていこう。