GROMACS

GROMACS（グローマックス、Groningen Machine for Chemical Simulations、グローニンゲン・マシン・フォー・ケミカル・シミュレーションズ）は、フローニンゲン大学で開発された分子動力学シミュレーションのソフトウェアパッケージである。現在は世界中の開発者により維持管理されている。分子動力学シミュレーション分野の中で高速かつ利用者の多いソフトウェアパッケージの一つであり、CPUおよびGPU上で動作する。フリー、オープンソースソフトウェアであり、GNU General Public License、GNU Lesser General Public License（バージョン4.6から）の下で公開されている。

歴史
GROMACSプロジェクトは1991年にオランダ、フローニンゲン大学生物物理化学科で始まった（1991年-2000年）。GROMACSは並列計算を前提として設計・プログラミングされている。プログラムの大部分はC言語で記述されており、同じグループが以前に開発したGROMOS（FORTRAN 77ベース）を参考としている。バージョン4.6時点では、SSEやAVX、HPC-ACEなどの拡張命令を用いたアセンブリ言語で一部実装されており、高速な計算が可能となっている。

2001年からは、スウェーデンの王立工科大学とウプサラ大学のGROMACS開発チームによって開発されている。

機能
計算アルゴリズムの工夫と各種プロセッサに特化したチューニングの両方により高度に高速化されており、CPUを使用した計算において標準的な分子動力学シミュレーションパッケージよりも3〜10倍程度高速に動作する。操作はコマンドラインから行われ、ユーザは入出力ファイルを介してGROMACSとやりとりを行う。GROMACSは計算の進行度合いの表示機能、トラクジェクトリ表示機能、トラクジェクトリ解析のための豊富なライブラリなどを備える。また、複数の力場（GROMACS、GROMOS、OPLS-AA、AMBER、CHARMM）をサポートすることにより、高い柔軟性を確保している。並列計算方式としてMPI並列およびスレッド並列に対応している。

シミュレーション 
 分子動力学計算（ニュートン運動方程式、ランジュバン動力学）
 エネルギー最小化計算（共役勾配法、最急降下法）
 基準振動解析
 相関関数

アンサンブル 
 Weak Coupling法（温度・圧力制御）
 Nose-Hoover法（温度制御）
 Parrinello-Rahman法（圧力制御）
 Martyna-Tobias-Tuckerman-Klein法（温度・圧力制御）

長距離相互作用の取り扱い 
 カットオフ法（Group based、twin-range、スイッチング関数、シフト関数）
 PME法 (particle mesh Ewald)
 PPPM法 (particle-particle particle mesh Ewald)
 Reaction Field法
 ユーザ定義テーブル関数

自由エネルギー計算 
 熱力学的積分法 (thermodynamic integration)
 自由エネルギー摂動法 (free energy perturbation)
 粒子挿入法 (test particle insertion)
 レプリカ交換法 (replica exchange)

脚注

参考文献

外部リンク 
 GROMACS Webページ

オープンソースソフトウェア
分子動力学ソフトウェア