シミュレーションは自動開始。プリセットや各パラメータを変えて観察しよう。
d=次元(2D)、D=拡散係数、t=経過ステップ
Einstein-Stokes式:
$$D = \frac{k_B T}{6\pi\eta r}$$粒子数・ステップ幅・軌跡表示を自由に変えて拡散をリアルタイム観察。アインシュタインのMSD=2dDt公式を実際に検証し、拡散係数Dを推定しよう。
シミュレーションは自動開始。プリセットや各パラメータを変えて観察しよう。
d=次元(2D)、D=拡散係数、t=経過ステップ
Einstein-Stokes式:
$$D = \frac{k_B T}{6\pi\eta r}$$創薬・ドラッグデリバリー:ナノサイズの薬剤粒子が血液中をどのように拡散し、患部に到達するかを予測する基礎モデルとして利用されます。粒子サイズと拡散速度の関係は、薬の設計に直結します。
半導体プロセス:シリコンウェハー中に不純物(ドーパント)を熱拡散させてトランジスタを作る工程で、不純物の広がり方を予測するために拡散方程式が用いられ、その基礎にブラウン運動の理論があります。
環境科学:大気中の微粒子(PM2.5)や水域の汚染物質がどのように広がるかをモデル化する際の基礎過程です。乱流の影響を加味したより複雑なモデルの出発点となります。
金融工学:株価の変動を幾何ブラウン運動としてモデル化し、オプション価格の評価(ブラック-ショールズモデル)などに応用されています。ここでの「ランダムウォーク」は価格の不確実性を表します。
このシミュレーターを使い始めるときに、特にCAE初心者が陥りがちなポイントがいくつかあるよ。まず一つ目は、「粒子数が多ければ多いほど正確」と思いがちなこと。確かに統計的なばらつきは減るけど、計算負荷は爆発的に増える。実務では、必要な精度と計算コストのトレードオフを常に考えるんだ。例えば、拡散係数Dを大まかに把握したいだけなら100粒子でも十分だけど、厳密な分布形状を知りたいなら1000粒子以上は必要かもしれない。その判断ができるのがプロの勘所だね。
二つ目は、「ステップ幅σ」と「拡散係数D」の関係を混同しやすい点。シミュレーター上ではσを大きくするとDも大きくなるけど、実世界ではDは物質の性質(温度、粘性、粒子サイズ)で決まる「結果」だ。シミュレーションはそのDを再現するために、適切なσや時間ステップΔtを逆算して設定する必要がある。例えば、水の中のたんぱく質のDが分かっている場合、シミュレーションで同じDを出すためのσは、$$D = \frac{\sigma^2}{2 \Delta t}$$の関係から決めるんだ。この「モデル化」のプロセスを理解しておかないと、ただのゲームで終わってしまうよ。
最後に、「反射」境界条件の落とし穴。容器を再現できる便利な機能だけど、現実の分子は完全に弾性反射するわけじゃない。壁に近づくと摩擦や化学的な相互作用が起こることもある。シミュレーションで反射条件を使うのは「第一近似」に過ぎないことを頭に入れておこう。細胞内のように複雑な環境を模倣するには、境界に特別なルール(例えば、ある確率で吸着するなど)を追加する必要が出てくるんだ。
粒子数n=20、ステップサイズσ=1.5px、総ステップ数1000の場合:初期段階(ステップ0~100)ではMSD≈150px²、中期(ステップ200~500)でMSD≈850px²と増加。MSD=4Dtの公式から、t=500ステップ時にMSD値850より逆算するとD推定値≈0.425px²/step。実際の物理系では、水中の赤血球(直径7μm)でD≈100μm²/sが標準値。シミュレーション時間スケール0.1msec/stepと設定すれば、物理値への変換可能