見出し画像

【内容一部公開】MDシミュレーションの初歩から実践まで――近刊『分子動力学法と原子間ポテンシャル』

2023年10月下旬発行予定の新刊書籍、『分子動力学法と原子間ポテンシャル』のご紹介です。
同書の一部を、発行に先駆けて公開します。


***

まえがき

分子動力学法(molecular dynamics、略してMD法)は、原子レベルの分解能の顕微鏡でミクロの世界を覗き見るように、膨大な原子集団の振る舞いをコンピュータ上で見せてくれる、魅力的なシミュレーション手法です。計算機の性能が飛躍的に向上し、数十万原子からなる巨大な系のMDシミュレーションが、ちょっとした高性能パソコンで実行できるようになりました。スパコンを使った例では、20兆原子という超大規模系のシミュレーションも報告されています。

もともとMD法は、統計力学の補助的な手法として発展したものですが、近年、ナノスケールの加工プロセスや、薬剤分子の設計、多数の原子が関与する複雑な化学反応を調べる方法として、ますますその重要性を増しています。オープンソースのMD計算プログラムの普及も手伝って、MDシミュレーションの論文の発表件数は年々増加の一途をたどっています。

MDシミュレーションでは、「原子間ポテンシャル」の選択が重要なファクターとなります。原子間ポテンシャルとは、原子集団の座標値から系全体のポテンシャルエネルギーを近似的に計算する関数のことです。原子間ポテンシャルの性能次第で、シミュレーションの妥当性も左右されます。せっかく面白い現象がシミュレーションで再現されても、採用した原子間ポテンシャルの適用範囲を超えて使ってしまっていたら、「そのシミュレーションって本当に信頼できるの?」という疑念が残ります。MDシミュレーションに取り組むには、扱う原子間ポテンシャルの特徴をよく理解する必要があるのです。

本書は、これからMDシミュレーションに取り組もうとする人たちに向けて、MDシミュレーションに関する基本的な知識と、代表的な原子間ポテンシャルの仕組みと特徴を解説した入門書です。大学の研究室に配属されたばかりの学部学生を想定読者にしています。

これまでにもMD法に関する優れた書籍が多数刊行されていますが、本書では、近年利用者が増えてきた原子間ポテンシャルの中からとくに、ReaxFFとガウス近似ポテンシャル(GAP)をピックアップして、それぞれ1章を割いて詳しく解説しています。ReaxFFは、さまざまな系の化学反応のシミュレーションができる汎用性の高い原子間ポテンシャルとして、すっかりポピュラーになりました。よくぞここまで作り込んだと感嘆せずにはいられない、パラメトリックなアプローチの極みといってよいポテンシャルです。

もう一方のGAPは、ReaxFFとは正反対の、ノン・パラメトリックなアプローチの到達点で、第一原理計算の膨大なデータに基づいて原子間相互作用を予測します。同じくノン・パラメトリックな手法として、ニューラルネットワークポテンシャルも本書で取り上げていますが、GAPは本質的にニューラルネットワークポテンシャルを内包しているので、とくに深掘りする価値があります。GAPやニューラルネットワークポテンシャルは、筆者が長年夢見てきたデータ駆動型MDの具現化であり、近年の機械学習の目覚ましい進歩も手伝って、今後ますます発展していくと期待されます。

本書では付録として、オープンソースのMDシミュレーションプログラム「LAMMPS」の、ごく簡単な使い方をまとめておきました。ReaxFFとGAPをLAMMPSで動かす方法も、第4章と第5章の終わりで、それぞれ簡単に解説しています。とりあえずMDシミュレーションを試してみたいという方は、これらを参考にするとよいでしょう。

また本書では、MDシミュレーションの計算手順を具体的に示すため、C言語の簡単なサンプルプログラムをいくつか収録しています。これらサンプルプログラムは、森北出版ウェブページからダウンロードできます。

(後略)

***


早稲田大学 渡邉 孝信(著)


【目次】
1 分子動力学法とは?

 1.1 物質・材料シミュレーションの分類
  1.1.1 量子力学に基づく方法
  1.1.2 古典力学に基づく方法
  1.1.3 連続体力学に基づく方法
 1.2 分子動力学法の歴史
  1.2.1 1950~1970年代
  1.2.2 1980年代
  1.2.3 1990年代以降
 1.3 運動方程式の数値解法
  1.3.1 ベレ法
  1.3.2 速度ベレ法
 1.4 分子動力学シミュレーションのプログラム例
  1.4.1 C言語ソースコード
  1.4.2 VMDによる可視化
  1.4.3 ソースコードの解説 

2 分子動力学法の方法論
 2.1 運動方程式の数値解法
  2.1.1 ギアの予測子–修正子法
  2.1.2 シンプレクティック差分法
 2.2 周期的境界条件と最近接イメージ規約
 2.3 近接原子情報の管理
  2.3.1 ベレ・リスト法
  2.3.2 セルインデックス法
 2.4 圧力の制御法
  2.4.1 アンダーセン法
  2.4.2 パリネロ–ラーマン法
 2.5 温度の制御法
  2.5.1 ランジュバン法
  2.5.2 能勢法
  2.5.3 能勢–フーバー法
  2.5.4 マクスウェル–ボルツマン分布に従う初速度の与え方
 2.6 長距離力の計算法
  2.6.1 エバルト法
  2.6.2 P3M法とPME法
  2.6.3 高速多重極展開法(FMM)
 2.7 構造最適化
  2.7.1 最急降下法
  2.7.2 共役勾配法
  2.7.3 直線探索
 2.8 最低エネルギー経路探索(NEB法) 

3 原子間ポテンシャル
 3.1 原子間ポテンシャルの分類
  3.1.1 ペアポテンシャル
  3.1.2 クラスターポテンシャル
  3.1.3 ボンドオーダーポテンシャル
  3.1.4 機械学習ポテンシャル
 3.2 ペアポテンシャル
  3.2.1 レナード・ジョーンズポテンシャル
  3.2.2 モースポテンシャル
  3.2.3 ボルン–マイヤー–ハギンズ(BMH)ポテンシャル
 3.3 スティリンジャー–ウェーバー(SW)ポテンシャル
  3.3.1 SWポテンシャルの定義
  3.3.2 3体項の別表記
  3.3.3 ポテンシャルパラメータ
  3.3.4 力の計算
 3.4 フィニス–シンクレア(FS)ポテンシャル
  3.4.1 FSポテンシャルの定義
  3.4.2 モーメント定理
 3.5 埋め込み原子法(EAM)
  3.5.1 EAMのコンセプト
  3.5.2 フォイルズ–バスケス–ダウのEAM
  3.5.3 MEAM
 3.6 ターソフポテンシャル
  3.6.1 ターソフポテンシャルの定義
  3.6.2 アベルのポテンシャル
  3.6.3 ポテンシャルパラメータ
  3.6.4 力の計算プログラム
 3.7 ニューラルネットワークポテンシャル
  3.7.1 ニューラルネットワークとは?
  3.7.2 ニューラルネットワークの学習
  3.7.3 ベーラー–パリネロのニューラルネットワークポテンシャル

 4 ReaxFF
 4.1 ReaxFFとは?
 4.2 全ポテンシャルエネルギー
 4.3 ボンドオーダー補正スキーム
 4.4 各エネルギー項の解説
  4.4.1 Ebond:共有結合エネルギー
  4.4.2 Elp:孤立電子対崩壊ペナルティー
  4.4.3 Eover:過剰配位に対するペナルティー
  4.4.4 Eunder:過少配位のエネルギー
  4.4.5 Eangle:結合角エネルギー
  4.4.6 Etorsion:ねじれ角エネルギー
  4.4.7 EvdWとECoulomb:非共有結合性の相互作用
  4.4.8 Especific:特殊項
 4.5 LAMMPSによるReaxFFのシミュレーション
  4.5.1 準備
  4.5.2 入力スクリプト
  4.5.3 LAMMPSの実行
  4.5.4 実行結果の確認 

5 ガウス近似ポテンシャル(GAP)
 5.1 GAPとは?
 5.2 GAPの計算手順
 5.3 ガウス過程回帰
  5.3.1 ベイズ回帰
  5.3.2 ガウス過程回帰
  5.3.3 カーネルトリック
  5.3.4 GAP再考
  5.3.5 ハイパーパラメータの最適化
 5.4 局所環境の記述子
  5.4.1 4次元バイスペクトル
  5.4.2 SOAP
 5.5 第一原理計算データの学習と力の計算
 5.6 LAMMPSによるGAPのシミュレーション
  5.6.1 準備
  5.6.2 サンプルスクリプトの実行
  5.6.3 QUIPポテンシャルファイル 

A LAMMPSチュートリアル
 A.1 LAMMPSのインストール
 A.2 入力スクリプトの例
 A.3 LAMMPSの実行
 A.4 実行結果 

B GAPに関する補足
 B.1 カーネルトリックに関する補足
  B.1.1 期待値
  B.1.2 分散
 B.2 超球面調和関数
 B.3 クレブシュ–ゴルダン係数 

さらに詳しく学びたい方へ
参考文献
索引
欧文索引


いいなと思ったら応援しよう!