ファイル形式¶
ファイル形式¶
分子トポロジーの仕様に従ってトポロジーファイルが作成されます。:ref:`top`ファイルは、:ref:`pdb2gmx<gmx pdb2gmx>`を使用して生成できます。トポロジーファイルに含まれるすべての項目は、:numref:`Tables %s <tab-topfile1>`と:numref:`%s <tab-topfile2>`に一覧表示されています。また、以下の情報も表にまとめられています。
* 各パラメータの単位
* 自由エネルギー計算で変更可能な相互作用
* :ref:`grompp <gmx grompp>`が使用する結合相互作用(除外の生成用)
* :ref:`grompp <gmx grompp>`で結合相互作用を制約に変換できるもの
パラメータ |
||||
|---|---|---|---|---|
相互作用の種類 |
指示 |
# at. |
f. tp |
パラメータ |
必須 |
|
非結合関数型; 組み合わせ規則\(^{(cr)}\); ペアを生成 (はい/いいえ); fudge LJ (); fudge QQ () |
||
必須 |
|
アトムの種類; ボンドの種類; 原子番号; m (u); q (e); 粒子の種類; V\(^{(cr)}\) ; W\(^{(cr)}\) (ボンドの種類と原子番号はオプション) |
||
|
(詳細は、Table 10 の「bonds」ディレクティブを参照)
|
|||
|
(詳細は、Table 10、
pairs ディレクティブを参照) |
|||
|
(詳細は、Table 10 の「angles」ディレクティブを参照)
|
|||
|
(詳細は、Table 10 の「dihedrals」ディレクティブを参照)
|
|||
|
(参照してください: Table 10, ディレクティブ
constraints) |
|||
LJ |
|
2 |
1 |
V\(^{(cr)}\) ; W\(^{(cr)}\) |
バッキンガム |
|
2 |
2 |
\(a~\mathrm{kJ~mol}^{-1}\) ; \(b~\mathrm{nm}^{-1}\); \(c_6\) (\(\mathrm{kJ~mol}^{-1}~\mathrm{nm}^{-6}\)) |
分子の定義 |
||||
|---|---|---|---|---|
必須 |
|
分子名; \(n_{ex}^{(nrexcl)}\) |
||
必須 |
|
1 |
アトムの種類; 残留分子番号; 残留分子名; アトム名; 電荷グループ番号; \(q\) (e); \(m\) (u) |
種類 \(q,m\) |
分子内相互作用と形状定義については、Table 10 に記載されている内容を参照してください。 |
||||
システム |
||
|---|---|---|
必須 |
|
システム名 |
必須 |
|
分子名; 分子の数 |
分子間の相互作用 |
|
|---|---|
任意 |
|
1つ以上の結合相互作用(|TREF|で説明されているもの)、2つ以上の原子、排他的な相互作用がない、制約がない、グローバルな原子番号を使用 |
|
# atは、この指示に必要な原子タイプのインデックス数です。f. tpは、この関数タイプを選択するために使用される値ですF. E.は、自由エネルギー計算においてどのパラメータを補間できるかを示す\(^{(cr)}\) 組み合わせルールは、LJパラメータの種類を決定します。詳細は:ref:`nbpar`を参照してください。
\(^{(*)}\)
dihedraltypesの場合、4つの原子または内側の(不対原子の場合は外側の)2つの原子を指定できます。\(n_{ex}^{(nrexcl)}\) 非共有結合相互作用のために、`n_{ex}`個の隣接結合を無視する
無償のエネルギー計算を行う場合、「q」と「m」または、トポロジー「B」(\(\lambda = 1\))に対して、通常のパラメータの後に同じ行にパラメータを追加する必要はありません。
相互作用の名前 |
ディレクティブ「トポロジーファイル」 |
数 [1] |
機能の種類 [2] |
パラメータと単位の順序 |
F.E. で使用しますか? [3] |
|---|---|---|---|---|---|
バンド |
|
2 |
1 |
\(b_0\) (nm); \(k_b\) (kJ mol\(^{-1}\)nm\(^{-2}\) |
すべて |
G96 結合 |
|
2 |
2 |
\(b_0\) (nm); \(k_b\) (kJ mol\(^{-1}\)nm\(^{-4}\) |
すべて |
モーズ |
|
2 |
3 |
\(b_0\) (nm); \(D\) (kJ mol\(^{-1}\); \(\beta\) (nm\(^{-1}\) |
すべて |
立方結合 |
|
2 |
4 |
\(b_0\) (nm); \(C_{i=2,3}\) (kJ mol\(^{-1}\)nm\(^{-i}\) |
|
接続 |
|
2 |
5 |
||
調和的ポテンシャル |
|
2 |
6 |
\(b_0\) (nm); \(k_b\) (kJ mol\(^{-1}\)nm\(^{-2}\) |
すべて |
FENE 結合 |
|
2 |
7 |
\(b_m\) (nm); \(k_b\) (kJ mol\(^{-1}\)nm\(^{-2}\) |
|
表形式の結合 |
|
2 |
8 |
表番号 (\(\geq 0\)); \(k\) kJ mol\(^{-1}\) |
\(k\) |
表形式の結合 [6] |
|
2 |
9 |
表番号 (\(\geq 0\)); \(k\) kJ mol\(^{-1}\) |
\(k\) |
潜在的な制約 |
|
2 |
10 |
low, up\(_1\),\(_2\) (nm); \(k_{dr}\) (NM2) |
すべて |
追加の LJ または クオラム |
|
2 |
1 |
すべて |
|
追加の LJ または クオラム |
|
2 |
2 |
||
追加の LJ または クオラム |
|
2 |
1 |
||
角度 |
|
3 |
1 |
\(\theta_0\) (度); \(k_\theta\) (kJ mol\(^{-1}\)rad\(^{-2}\)) |
すべて |
G96 角度 |
|
3 |
2 |
\(\theta_0\) (度); \(k_\theta\) (kJ mol\(^{-1}\)) |
すべて |
クロス ボンド-ボンド |
|
3 |
3 |
\(r_{1e}\), \(r_{2e}\) (nm); \(k_{rr'}\) ((kJ mol\(^{-1}\)nm\(^{-2}\)) |
|
クロス ボンド角 |
|
3 |
4 |
\(r_{1e}\), \(r_{2e}\), \(r_{3e}\) (nm); \(k_{r\theta}\) ((kJ mol\(^{-1}\)nm\(^{-2}\)) |
|
ユーリー・ブラッドリー |
|
3 |
5 |
\(\theta_0\) (度); \(k_\theta\) (kJ mol\(^{-1}\)rad\(^{-2}\)); \(r_{13}\) (ナノメートル); \(k_{UB}\) ((kJ mol\(^{-1}\)nm\(^{-2}\)) |
すべて |
四次角 |
|
3 |
6 |
\(\theta_0\) (度); \(C_{i=0,1,2,3,4}\) (KJRI) |
|
表形式の角度 |
|
3 |
8 |
表番号 (\(\geq 0\)); \(k\) (kJ mol\(^{-1}\)) |
\(k\) |
線形角度 |
|
3 |
9 |
\(a_0\); \(k_{lin}\) (NM2) |
すべて |
制限付き
曲げやすさ
|
|
3 |
10 |
\(\theta_0\) (度); \(k_\theta\) (kJ mol\(^{-1}\)) |
|
適切な二次元 |
|
4 |
1 |
\(\phi_s\) (度); \(k_\phi\) (kJ mol\(^{-1}\)); 繰り返し |
\(\phi,k\) |
不適切な二面角 |
|
4 |
2 |
\(\xi_0\) (度); \(k_\xi\) (kJ mol\(^{-1}\)rad\(^{-2}\)) |
すべて |
Ryckaert-Bellemans の二配角 |
|
4 |
3 |
\(C_0\), \(C_1\), \(C_2\), \(C_3\), \(C_4\), \(C_5\) (KJM) |
すべて |
不規則な周期的な二次元 |
|
4 |
4 |
\(\phi_s\) (度); \(k_\phi\) (kJ mol\(^{-1}\)); 繰り返し |
\(\phi,k\) |
フーリエ・ジヘダル |
|
4 |
5 |
\(C_1\), \(C_2\), \(C_3\), \(C_4\), \(C_5\) (KJM) |
すべて |
表形式の二面角 |
|
4 |
8 |
表番号 (\(\geq 0\)); \(k\) (kJ mol\(^{-1}\)) |
\(k\) |
適切な二次元の角 [8] |
|
4 |
9 |
\(\phi_s\) (度); \(k_\phi\) (kJ mol\(^{-1}\)); 繰り返し |
\(\phi,k\) |
制限された二面体 |
|
4 |
10 |
\(\phi_0\) (度); \(k_\phi\) (kJ mol\(^{-1}\)) |
|
結合された曲げ-ねじれポテンシャル |
|
4 |
11 |
\(k_\phi\) (KJM); A0, A1, A2, A3, A4 |
|
除外 |
|
1 |
1つ以上のアトムインデックス |
||
制約 |
|
2 |
1 |
\(b_0\) (nm) |
すべて |
制約 [6] |
|
2 |
2 |
\(b_0\) (nm) |
すべて |
SETTLE |
|
1 |
1 |
\(d_{\mathrm{oh}}\), \(d_{\mathrm{hh}}\) (nm) |
|
1-ボディ仮想サイト |
|
2 |
1 |
||
仮想サイト(2体構成) |
|
3 |
1 |
\(a\) () |
|
2-ボディ仮想サイト (fd) |
|
3 |
2 |
\(d\) (nm) |
|
仮想サイト(3体構成) |
|
4 |
1 |
\(a\), \(b\) () |
|
3-body 仮想サイト (fd) |
|
4 |
2 |
\(a\) (); \(d\) (nm) |
|
3-body 仮想サイト (fad) |
|
4 |
3 |
\(\theta\) (度); \(d\) (nm) |
|
3-body 仮想サイト (出力) |
|
4 |
4 |
\(a\), \(b\) (); \(c\) (NM) |
|
4-body 仮想サイト (fdn) |
|
5 |
2 |
\(a\), \(b\) (); \(c\) (nm) |
|
N-ボディ仮想サイト (COG) |
|
1 |
1 |
1つ以上のアトムインデックスの作成 |
|
N-ボディ仮想サイト (COM) |
|
1 |
2 |
1つ以上のアトムインデックスの作成 |
|
N-ボディ仮想サイト (COW) |
|
1 |
3 |
1つ以上のペアで構成され、
アトムのインデックスと重みの構築
|
|
位置制約 |
|
1 |
1 |
\(k_{x}\), \(k_{y}\), \(k_{z}\) (NM2) |
すべて |
フラットボトムのポジション制約 |
|
1 |
2 |
\(g\), \(r\) (nm), \(k\) ((kJ mol\(^{-1}\)nm\(^{-2}\)) |
|
距離制約 |
|
2 |
1 |
種類; ラベル; low, up\(_1\),\(_2\) (nm); 重み () |
|
二面拘束 |
|
4 |
1 |
\(\phi_0\) (度); \(\Delta\phi\) (度); \(k_{\mathrm{dihr}}\) (kJ mol\(^{-1}\)rad\(^{-2}\)) |
すべて |
方向制限 |
|
2 |
1 |
exp.; ラベル; \(\alpha\); \(c\) (U nm\(^{\alpha}\); 観測値 (U); 重み (U\(^{-1}\)) |
|
角度制限 |
|
4 |
1 |
\(\theta_0\) (度); \(k_c\) (kJ mol\(^{-1}\)); 繰り返し |
\(\theta,k\) |
角度制限 (z) |
|
2 |
1 |
\(\theta_0\) (度); \(k_c\) (kJ mol\(^{-1}\)); 繰り返し |
\(\theta,k\) |
Description of the file layout:
セミコロン (;) と改行文字でコメントを囲む
行末に `` で終わる場合、改行文字は無視されます。
指示は
[と]で囲まれています。トポロジー階層(必須に従う必要がある)は、3つのレベルで構成されています。
パラメータレベル、これは特定の力場仕様を定義します(詳細は:<tab-topfile1>を参照)。
分子レベルで、1つ以上の分子定義(詳細は:ref:`表 %s <tab-topfile2>`を参照)を含む必要があります。
システムレベルで、システム固有の情報のみ(「[ system ]」と「[ molecules ]」)を含む。
項目はスペースまたはタブで区切る必要があります。カンマを使用しないでください。
分子内の原子は、1から連続して番号を付ける必要があります。
同じ電荷グループにある原子は、連続してリストする必要があります。
「結合された原子のタイプ名には、少なくとも1つの数字以外の文字を含める必要があります。」
このファイルは一度だけ解析されるため、前方参照は処理できません。つまり、使用する前にすべての項目を定義する必要があります。
除外は、結合から生成することも、手動で上書きすることも可能です。
結合された力の種類は、原子の種類から生成することも、個々の結合ごとに上書きすることも可能です。
同じ種類の複数の結合相互作用を同じ原子に適用することも可能です。
説明的なコメント行と空行の使用は強く推奨されます
すべてのパラメータレベルの指示は複数回使用でき、順序に関する制限はありません。ただし、ある原子型を使用するには、他のパラメータ定義で使用する前に定義する必要があります。
特定の相互作用のパラメータが、同じ原子種類の組み合わせに対して複数回定義されている場合、最後の定義が使用されます。grompp は、異なる値を持つパラメータの再定義について警告を表示しますが、
[dihedraltype]の場合は例外です。「[原子]」、「[結合]」、「[対]」、「[角]」などのいずれかを使用する際に、「[moleculetype]」を使用していない場合、それは無意味であり、警告が表示されます。
「[ molecules ]」を使用する際に、「[ system ]」を使用していない場合、意味がなく警告が生成されます。
「[ system ]」の後に、許可されているのは「[ molecules ]」のみです。
[ ]内に未知の文字列を使用すると、次の指示までの一連のデータが無視され、警告が生成されます。
以下は、トポロジーファイルの例、「urea.top」です。
;
; Example topology file
;
; The force-field files to be included
#include "amber99.ff/forcefield.itp"
[ moleculetype ]
; name nrexcl
Urea 3
[ atoms ]
1 C 1 URE C 1 0.880229 12.01000 ; amber C type
2 O 1 URE O 2 -0.613359 16.00000 ; amber O type
3 N 1 URE N1 3 -0.923545 14.01000 ; amber N type
4 H 1 URE H11 4 0.395055 1.00800 ; amber H type
5 H 1 URE H12 5 0.395055 1.00800 ; amber H type
6 N 1 URE N2 6 -0.923545 14.01000 ; amber N type
7 H 1 URE H21 7 0.395055 1.00800 ; amber H type
8 H 1 URE H22 8 0.395055 1.00800 ; amber H type
[ bonds ]
1 2
1 3
1 6
3 4
3 5
6 7
6 8
[ dihedrals ]
; ai aj ak al funct definition
2 1 3 4 9
2 1 3 5 9
2 1 6 7 9
2 1 6 8 9
3 1 6 7 9
3 1 6 8 9
6 1 3 4 9
6 1 3 5 9
[ dihedrals ]
3 6 1 2 4
1 4 3 5 4
1 7 6 8 4
[ position_restraints ]
; you wouldn't normally use this for a molecule like Urea,
; but we include it here for didactic purposes
; ai funct fc
1 1 1000 1000 1000 ; Restrain to a point
2 1 1000 0 1000 ; Restrain to a line (Y-axis)
3 1 1000 0 0 ; Restrain to a plane (Y-Z-plane)
[ dihedral_restraints ]
; ai aj ak al type phi dphi fc
3 6 1 2 1 180 0 10
1 4 3 5 1 180 0 10
; Include TIP3P water topology
#include "amber99.ff/tip3p.itp"
[ system ]
Urea in Water
[ molecules ]
;molecule name nr.
Urea 1
SOL 1000
以下に説明文を示します。
#include “amber99.ff/forcefield.itp”: この行は、使用している力場に関する情報を読み込みます。これには、結合および非結合パラメータが含まれています。この例では、AMBER99力場を使用していますが、シミュレーションでは異なる力場を使用することも可能です。 grompp は、このファイルを自動的に探し、その内容をコピーして貼り付けます。その内容は share/top/amber99.ff/forcefield.itp} に表示され、以下のような内容が含まれています。
#define _FF_AMBER
#define _FF_AMBER99
[ defaults ]
; nbfunc comb-rule gen-pairs fudgeLJ fudgeQQ
1 2 yes 0.5 0.8333
#include "ffnonbonded.itp"
#include "ffbonded.itp"
これらの #define ステートメントは、将来のトポロジーのコンポーネントが、AMBER 99 力場が使用されていることを認識できるように、条件を設定します。
[ デフォルト設定 ] :
nbfuncは非結合関数タイプです。 1 (Lennard-Jones) または 2 (Buckingham) を使用します。ただし、2 は gmx mdrun ではサポートされていません。comb-ruleは、組み合わせルールの番号(を参照::非結合パラメータ)。gen-pairsはペア生成用です。デフォルトは「no」で、つまり、ペアタイプのリストから1〜4のパラメータを取得します。パラメータがリストに存在しない場合は、致命的なエラーで停止します。「yes」を設定すると、通常のLennard-Jonesパラメータから``fudgeLJ``を使用して、ペアリストに存在しない1〜4のパラメータを生成します。fudgeLJは、レンナー・ジョーズ 1-4 の相互作用を乗算する係数。デフォルトは 1。fudgeQQは、静電相互作用の 1-4 の値を乗算する係数です。デフォルトは 1 です。\(N\) は、6-\(N\) のポテンシャルにおける斥力項のパラメータであり、GROMACS 4.5 以降、grompp は \(N\) を読み込み、12 以外の値を使用します。この場合、表に記載された相互作用関数が使用されます (以前のバージョンでは、ユーザーが自分で相互作用関数を定義する必要がありました)。
注意: gen-pairs、fudgeLJ、fudgeQQ、および \(N\) はオプションです。fudgeLJ は gen-pairs が「yes」に設定されている場合にのみ使用され、fudgeQQ は常に使用されます。ただし、\(N\) を指定する場合は、他のパラメータにも値を指定する必要があります。
その後、いくつかの #include ステートメントが、残りの力場を記述するために必要な大量のデータを追加します。ここではこれらをスキップし、「urea.top」に戻ります。そこでは、以下の内容を確認できます。
[ moleculetype ] : は、この トップ ファイルで指定する分子の名前を定義します。また、nrexcl = 3 は、3 結合以内の距離にある原子間の非結合相互作用を除外することを意味します。
[原子]: 分子を定義します。nr と type は固定されており、残りの部分はユーザーが定義します。したがって、atom は自由に名前を付けることができ、cgnr の値を大きくしたり小さくしたり(可能な場合)、電荷グループの合計電荷は 0 になるように設定できます。電荷もここで変更できます。
[ bonds ] : 説明不要。
[ペア]: LJ およびクーロン相互作用(1-4)
[ 角度 ] : コメントなし
[ 角度 ] : この場合、9つの適切な角度(funct = 1)、3つの不適切な角度(funct = 4)と、Ryckaert-Bellemans型の角度は存在しません。Ryckaert-Bellemans型の角度をトポロジーに含めたい場合は、以下の手順を実行してください(例:デカンの場合):
[ dihedrals ]
; ai aj ak al funct c0 c1 c2
1 2 3 4 3
2 3 4 5 3
元の実装におけるアルカン類の相互作用131 では、1-4 相互作用のみが使用されていました。つまり、特定の力場を実装するには、トポロジーの [ pairs ] セクションから1-4 相互作用を削除する必要があります。現代の力場(例:OPLS/AA、Amber)では、ルールが異なり、Ryckaert-Bellemans のポテンシャルは、1-4 相互作用と組み合わせてコサイン系列として使用されます。
[ position_restraints ]: 選択された粒子を基準位置に調和的に固定します(参照:<ref>`positionrestraint`)。基準位置は、:ref:`grompp <gmx grompp>`によって別の座標ファイルから読み取られます。
[ dihedral_restraints ] : 選択された角度を基準値に制限します。角度制限の実装については、マニュアルの dihedralrestraint セクションを参照してください。 [dihedral_restraints] ディレクティブで指定されたパラメータは以下のとおりです。
typeには、1 のみ有効な値があります。phiは、マニュアルの \(\phi_0\) の値であるeqn. %sとeqn. %sの中で定義されています。dphiは、マニュアルの \(\Delta\phi\) の値です(参照:eqn. %s)。fcは、マニュアルの \(\eqn. %s <eqndihre>\) のk_{dihr}の値です。
#include “tip3p.itp” : 既存のトポロジーファイルを含める(詳細は「molitp」のセクションを参照)。
[ システム ]: システム名、ユーザーが定義
[ 分子 ]: これは、この トップ で定義されているシステム内の (サブ) 分子の総数を指定します。この例では、1つのウレア分子が1000個の水分子に溶解していることを示しています。分子の種類「SOL」は、「tip3p.itp」ファイルで定義されています。ここで使用される名前はすべて、先頭の moleculetype で指定された名前と一致する必要があります。分子の種類とそれらの分子の数を表すブロックの順序は、この topology を grompp に提供する際に付属する座標ファイルと一致する必要があります。分子のブロックは隣接する必要はありませんが、一部のツール(例:genion)は、特定の分子の種類の最初のまたは最後のブロックのみに作用する場合があります。また、これらのブロックはグループの定義(「グループ概念」セクションおよび「グループの使用」セクションを参照)とは関係ありません。
ファイル名: Molecule.itp¶
もし、頻繁に使用するトポロジーファイル(例えば、水分子の tip3p.itp など、すでに作成済みのもの)を作成する場合は、 molecule.itp ファイルを作成することをお勧めします。このファイルには、特定の分子に関する情報のみがリストされ、複数のシステムで [ moleculetype ] を再利用できるようになり、:ref:`pdb2gmx を呼び出す必要や、手動でコピー&ペーストする手間が省けます。以下に例として urea.itp を示します。
[ moleculetype ]
; molname nrexcl
URE 3
[ atoms ]
1 C 1 URE C 1 0.880229 12.01000 ; amber C type
...
8 H 1 URE H22 8 0.395055 1.00800 ; amber H type
[ bonds ]
1 2
...
6 8
[ dihedrals ]
; ai aj ak al funct definition
2 1 3 4 9
...
6 1 3 5 9
[ dihedrals ]
3 6 1 2 4
1 4 3 5 4
1 7 6 8 4
:ref:`itp`ファイルを使用すると、非常に短い:ref:`top`ファイルが生成されます。
;
; Example topology file
;
; The force field files to be included
#include "amber99.ff/forcefield.itp"
#include "urea.itp"
; Include TIP3P water topology
#include "amber99/tip3p.itp"
[ system ]
Urea in Water
[ molecules ]
;molecule name nr.
Urea 1
SOL 1000
条件付き定義¶
GROMACS の非常に強力な機能の一つは、:ref:`top ファイル内で #ifdef ステートメントを使用することです。このステートメントと、以前の amber99.ff/forcefield.itp などで確認した #define ステートメントのような関連ステートメントを使用することで、同じ :ref:`top ファイル内で 1 つの分子に対して異なるパラメータを使用できます。例として TFE の場合、原子に対して異なる電荷を使用するオプションがあります。これは、De Loof らの電荷:ref:132 または Van Buuren と Berendsen の電荷:ref:133 です。実際には、C のプリプロセッサである cpp の多くの機能を使用できます。なぜなら、:ref:`grompp は、ファイル全体をスキャンするための同様のプリプロセッシング関数が含まれているからです。 #ifdef オプションを使用する方法は次のとおりです。
どちらか一方の方法を使用してください。
:ref:`mdp`ファイル(grompp <gmx grompp> の入力パラメータを含む)でオプション ``define = -DDeLoof` を使用するか、または、:ref:`top`またはitp`ファイルで `#define DeLoof という行を先頭に記述してください。以下のように、あなたの トップ に
#ifdefステートメントを記述してください。
...
[ atoms ]
; nr type resnr residu atom cgnr charge mass
#ifdef DeLoof
; Use Charges from DeLoof
1 C 1 TFE C 1 0.74
2 F 1 TFE F 1 -0.25
3 F 1 TFE F 1 -0.25
4 F 1 TFE F 1 -0.25
5 CH2 1 TFE CH2 1 0.25
6 OA 1 TFE OA 1 -0.65
7 HO 1 TFE HO 1 0.41
#else
; Use Charges from VanBuuren
1 C 1 TFE C 1 0.59
2 F 1 TFE F 1 -0.2
3 F 1 TFE F 1 -0.2
4 F 1 TFE F 1 -0.2
5 CH2 1 TFE CH2 1 0.26
6 OA 1 TFE OA 1 -0.55
7 HO 1 TFE HO 1 0.3
#endif
[ bonds ]
; ai aj funct c0 c1
6 7 1 1.000000e-01 3.138000e+05
1 2 1 1.360000e-01 4.184000e+05
1 3 1 1.360000e-01 4.184000e+05
1 4 1 1.360000e-01 4.184000e+05
1 5 1 1.530000e-01 3.347000e+05
5 6 1 1.430000e-01 3.347000e+05
...
このメカニズムは、:ref:`pdb2gmx を使用して、オプションのポーズ制約(positionrestraint)を実装するために使用されます。これは、特定の #define が設定されている(そして正しく記述されている!)場合にのみ意味のある itp ファイルを #include することで実現されます。
エネルギー計算のためのトポロジー¶
A と B の 2 つのシステム間の自由エネルギー差は、sec. fecalc に記載されている方法で計算できます。 A と B は、同じ数の分子と、同じ数の原子で構成されたトポロジーで記述されます。 Masse と非結合相互作用は、[ atoms ] ディレクティブの下で B パラメータを追加することで調整できます。 結合相互作用は、結合タイプまたは結合相互作用に B パラメータを追加することで調整できます。 調整できるパラメータは、Tables 9 と 10 にリストされています。 相互作用の λ 依存性は、sec. feia に記載されています。 使用されている結合パラメータ(結合相互作用の定義行、または結合タイプリスト内の原子タイプで参照されるパラメータ)は、Table 11 に説明されています。 ほとんどの場合、設定は直感的に機能します。 結合相互作用における A と B の原子タイプがすべて同一ではなく、B 状態に対してパラメータが定義されていない場合(定義行または結合タイプリストで参照)、grompp は A 状態のパラメータを使用し、警告を表示します。 自由エネルギー計算の場合、トポロジー B (λ = 1) のすべてのパラメータまたはパラメータを、通常のパラメータと同じ行に、通常のパラメータと同じ順序で追加する必要があります。 GROMACS 4.6 以降では、λ がベクトルとして扱われる場合、bonded-lambdas コンポーネントは、明示的に制約としてラベル付けされていないすべての結合項を制御します。 制約項は、restraint-lambdas コンポーネントによって制御されます。
B-状態原子タイプ すべてが同じ A-状態原子型 |
パラメータ 行単位 |
パラメータ (A原子) | ボンドされたタイプ (A原子) | ボンドされたタイプ (B原子) |
期待されるメッセージ |
||||
|---|---|---|---|---|---|---|---|
A |
B |
A |
B |
A |
B |
||
はい |
+AB |
\(-\) |
x |
x |
|||
はい |
+A |
+B |
x |
x |
|||
はい |
\(-\) |
\(-\) |
\(-\) |
\(-\) |
エラー |
||
はい |
\(-\) |
\(-\) |
+AB |
\(-\) |
|||
はい |
\(-\) |
\(-\) |
+A |
+B |
|||
いいえ |
+AB |
\(-\) |
x |
x |
x |
x |
警告 |
いいえ |
+A |
+B |
x |
x |
x |
x |
|
いいえ |
\(-\) |
\(-\) |
\(-\) |
\(-\) |
x |
x |
エラー |
いいえ |
\(-\) |
\(-\) |
+AB |
\(-\) |
\(-\) |
\(-\) |
警告 |
いいえ |
\(-\) |
\(-\) |
+A |
+B |
\(-\) |
\(-\) |
警告 |
いいえ |
\(-\) |
\(-\) |
+A |
x |
+B |
\(-\) |
|
いいえ |
\(-\) |
\(-\) |
+A |
x |
+B |
||
以下は、GROMOS-96 力場を使用して、200 のプロパノールから 200 のペンタンへの変換を示すトポロジーの例です。
; Include force field parameters
#include "gromos43a1.ff/forcefield.itp"
[ moleculetype ]
; Name nrexcl
PropPent 3
[ atoms ]
; nr type resnr residue atom cgnr charge mass typeB chargeB massB
1 H 1 PROP PH 1 0.398 1.008 CH3 0.0 15.035
2 OA 1 PROP PO 1 -0.548 15.9994 CH2 0.0 14.027
3 CH2 1 PROP PC1 1 0.150 14.027 CH2 0.0 14.027
4 CH2 1 PROP PC2 2 0.000 14.027
5 CH3 1 PROP PC3 2 0.000 15.035
[ bonds ]
; ai aj funct par_A par_B
1 2 2 gb_1 gb_26
2 3 2 gb_17 gb_26
3 4 2 gb_26 gb_26
4 5 2 gb_26
[ pairs ]
; ai aj funct
1 4 1
2 5 1
[ angles ]
; ai aj ak funct par_A par_B
1 2 3 2 ga_11 ga_14
2 3 4 2 ga_14 ga_14
3 4 5 2 ga_14 ga_14
[ dihedrals ]
; ai aj ak al funct par_A par_B
1 2 3 4 1 gd_12 gd_17
2 3 4 5 1 gd_17 gd_17
[ system ]
; Name
Propanol to Pentane
[ molecules ]
; Compound #mols
PropPent 200
「PC2」と「PC3」のような、揺さばれない原子は、Bパラメータの指定は不要です。なぜなら、BパラメータはAパラメータからコピーされるからです。揺さばれない原子間の結合は、例示されたトポロジーの最後の結合と同様に、Bパラメータの指定は不要です。OPLS/AA力場を使用するトポロジーでは、AパラメータとBパラメータの両方が原子の種類によって決定されるため、結合パラメータは不要です。1つまたは2つの揺さばれる原子を伴う非結合相互作用では、自由エネルギー摂動関数を使用します。2つの揺さばれない原子間の非結合相互作用では、通常の関数を使用します。つまり、例えば、粒子の電荷のみが変化する場合、λが0または1でない場合、レンナー・ジョーンズ相互作用も影響を受けます。
注意: このトポロジーは、GROMOS-96 力場を使用しており、結合相互作用は原子の種類によって決定されません。結合相互作用の文字列は、Cコンパイラによって変換されます。力場パラメータファイルには、以下のような行が含まれています。
#define gb_26 0.1530 7.1500e+06
#define gd_17 0.000 5.86 3
制約による強制¶
; Include force-field parameters
#include "gromos43a1.ff/forcefield.itp"
[ moleculetype ]
; Name nrexcl
Methanes 1
[ atoms ]
; nr type resnr residu atom cgnr charge mass
1 CH4 1 CH4 C1 1 0 16.043
2 CH4 1 CH4 C2 2 0 16.043
[ constraints ]
; ai aj funct length_A length_B
1 2 2 0.7 1.7
#include "gromos43a1.ff/spc.itp"
[ system ]
; Name
Methanes in Water
[ molecules ]
; Compound #mols
Methanes 1
SOL 2002
座標ファイル¶
ファイルには、GROMOS-87形式の分子構造が含まれています。以下にサンプルを示します。
MD of 2 waters, reformat step, PA aug-91
6
1WATER OW1 1 0.126 1.624 1.679 0.1227 -0.0580 0.0434
1WATER HW2 2 0.190 1.661 1.747 0.8085 0.3191 -0.7791
1WATER HW3 3 0.177 1.568 1.613 -0.9045 -2.6469 1.3180
2WATER OW1 4 1.275 0.053 0.622 0.2519 0.3140 -0.1734
2WATER HW2 5 1.337 0.002 0.680 -1.0641 -1.1349 0.0257
2WATER HW3 6 1.326 0.120 0.568 1.9427 -0.8216 -0.0244
1.82060 1.82060 1.82060
この形式は固定されており、つまり すべての列が固定された位置にあります。ご自身のプログラムでこのようなファイルを読み取る場合、|Gromacs|ライブラリを使用せずに、以下の形式を使用できます。
C形式: “%5i%5s%5s%5i%8.3f%8.3f%8.3f%8.4f%8.4f%8.4f”
あるいは、より正確には、タイトル など を含む場合、以下のように表示されます。
"%s\n", Title
"%5d\n", natoms
for (i=0; (i<natoms); i++) {
"%5d%-5s%5s%5d%8.3f%8.3f%8.3f%8.4f%8.4f%8.4f\n",
residuenr,residuename,atomname,atomnr,x,y,z,vx,vy,vz
}
"%10.5f%10.5f%10.5f%10.5f%10.5f%10.5f%10.5f%10.5f%10.5f\n",
box[X][X],box[Y][Y],box[Z][Z],
box[X][Y],box[X][Z],box[Y][X],box[Y][Z],box[Z][X],box[Z][Y]
フォーラン形式: (i5,2a5,i5,3f8.3,3f8.4)
したがって、confin.gro は GROMACS の座標ファイルであり、GROMOS-87 ファイルとほぼ同じです(GROMOS ユーザー向け:ntx=7 で使用する場合)。唯一の違いは、GROMACS がテンソルを使用する箱であることです(ベクトルを使用しない)。