「何となく」で何とかなっている阿部洋太郎です、こんばんわー。さて、最近何となくやりたくなったjavascriptで作り始めていた「自己複製反応(グレイスコットモデル)」のプログラムがようやく完成しました。
世間の逆をゆく
コーヒーに砂糖を入れると砂糖は溶けて広がっていって、最終的には均一に混ざります。コーヒーに溶けていた砂糖が集まってきて部分的に濃くなっていく、ということは普通はありません。が、その常識を破る現象が世の中にはあります。
カギとなるのは自己触媒反応
通常の化学反応では、反応が進んで行くと反応速度は遅くなっていきます。例えば、UとVからWができる反応( U + V → W )では、UとVが減っていくためにWの生成速度は落ちていきます。
それに対して、『U + 2V → 3V』のように自分自身を生成する反応では、反応が進むと原料のVが増えていくため、Uが十分にある間は生成速度は上がっていきます。で、拡散して広がって行く速さよりもVの生成速度の方が大きくなるとVの濃度はどんどん高まっていきます。最終的に原料のUがなくなると反応は止まります。
反応と拡散が組み合わせると濃度ムラで様々なパターンができる
Uを供給したときに起きる「Vが増加する→Uがなくなる→Vが減少する→Uが溜まっていく→Vが増加する→・・・」という振動反応と拡散が組み合わさると、最初の写真のようなドット柄・ストライプ柄ができあがります。動物や魚の体の模様は、この「自己触媒反応と拡散の組み合わせ」で出来ているんじゃないかと考えられています。(プログラムは100×100のマス目を作って、U・Vの濃度変化を計算し、濃度を色(低濃度:赤~高濃度:青)で表示しています)
ということで頑張って作ったのですが、最後に壁にぶち当たりました。
・・・WordPressでは動かない
プラグインとかカスタムフィールドとかいろいろ調べたんですが、私の能力ではどうにもならなかったです。それと、httpsの設定ができず。httpのリンクを貼りたくないので、実際に動いているところを見たい方は下記リンクをコピーしてブラウザに入力してください(笑)
アニメーションのリンクはコチラ
コメント