どぼるざーくとゆく、高分子シミュレーション

lammpsやOCTAなどの高分子シミュレーターについて四苦八苦しながら学んでいくブログです。Twitterアカウント@lammps_octa

【OCTA】OCTAはイイぞ

はじめに

今回の記事では高分子をシミュレーションするために作られたソフトウェア『OCTA』について紹介していきたいと思います。OCTAは使い方や活用事例が記された書籍があるので、今回の記事はそれを参考にして書いています。

 

増補版 高分子材料シミュレーション: OCTA活用事例集

増補版 高分子材料シミュレーション: OCTA活用事例集

  • 作者: 
  • 出版社/メーカー: 化学工業日報社
  • 発売日: 2017/07/11
  • メディア: 単行本
 

 

 

 OCTAとは何ぞや??

OCTAとは『Open Computational Tool for Advanced material technology』の略称で、『世界中の人々によってソフトウェアが開発され、計算機材料設計という技術が育ってほしい』という意味が込められているそうです。

(一番最初の『監修の言葉』の部分でより詳しく書かれているので気になる人は、そこを読んでみてください)

OCTAは原子レベルのシミュレーションから有限要素法を用いた連続体モデルまでを扱うことができ、『COGNAC』『SUSHI』『PASTA・NAPLES』『MUFFIN』『KAPSEL』というシミュレーションエンジンを動かすことができます。

以下に各エンジンの説明をしていきたいと思います。

 

各エンジンの説明

複数エンジンを搭載する重要性

そもそもなぜ複数のシミュレーションエンジンが必要なのでしょうか??その疑問を解消するためには計算機の限界を知る必要があります。

例えば私がlammpsを使って『9380個の粒子』を『4つのポテンシャル』で計算するときは、8コアの並列で計算しても1μs計算するのに1週間弱かかります。

ここで重要なのは、使うエンジンを間違えると解析に時間がかかりすぎるということです。分子振動が知りたければ『フェムト秒スケール』で解析すれば十分ですが、粘弾性測定をするためには『秒スケール』で解析を行う必要があります。つまりlammpsで粘弾性を計算するなら、1000週間ほどかかりますね・・・(19年も一つの解析に費やせるかっ!)

 

そんなわけで解析をする際には、自分が得たい物性が得られる適切なシミュレーションエンジンを選ばなければなりません。ただ使用するエンジンを変えるたびに毎回ファイルを変換するのは大変です。その問題を解決しているのがOCTAなんです!

OCTAが扱うファイル形式は『udf』というもので、各エンジン間で共通して使うことができるんです。例えば密度汎関数で得られた3D相分離構造を全原子モデルに変換することもできます。(これをズーミングと言います。)

 

COGNAC

このエンジンでは分子動力学法でシミュレーションをすることができます。分子動力学法では、複数のポテンシャル関数を定義してニュートンの運動方程などに従うように粒子を動かします。

得られる物性値には動径分布関数末端間距離などがあります。これらの値は高分子鎖と溶媒の相互作用を確認する時にも使われたりします。

またCOGNACはlammps形式にデータ変換ができるので、大規模構造の計算の際にはlammpsで高速な解析をすることができます。

 

SUSHI

このエンジンでは平均場近似(SCF法)を利用したシミュレーションを行うことができます。SCF法では周囲の高分子鎖の作る平均場に高分子が影響を受けると仮定しています。

高分子の位置をエントロピー、セグメント間相互作用をエンタルピーと仮定するため、安定な相分離構造を解析することができます!また得られた系の自由エネルギー汎関数から高分子溶融体の相分離現象を動的に表現することができます。

(ここら辺は自分で書いてて分からなくなったので、また別の記事で解説します)

 

PASTA・NAPLES

このエンジンでは絡み合い状態にある高分子系の長時間ダイナミクスレオロジーをシミュレーションすることができます。分子動力学法よりも数万倍速く解析することができますが、条件が厳しいことや、理論が半経験的であるのが注意点です。

得られる物性値は線形粘弾性非線形粘弾性で、粘度の時間成長も含めて出力することができます。

 

MUFFIN

このエンジンでは連続体モデルをベースとしたシミュレーションをすることができます。例えば液滴の変形やゲルの膨潤と収縮、相分離構造上の熱伝導などを扱う事ができます。

 

KAPSEL

このエンジンでは粒子分散系の動的現象をシミュレーションすることができます。例えば荷電コロイドの電気泳動や電気二重層などを扱う事ができます。

 

まとめ

いかがだったでしょうか。もっと簡潔に書くつもりだったのですが、思ったよりも書きたいことが多くあったため広くおおざっぱな説明になってしまいました・・・雑な部分もあるので、また時間があるときに再編集します。