よくあるエラー:|Gromacs|を使用する際の一般的なエラー¶
|Gromacs|によって生成されるほとんどのエラーメッセージは、ユーザーにエラーが発生した場所を正確に知らせるように設計されています。以下に、発生する可能性のあるエラーと、問題の詳細と解決方法について説明します。
よくあるエラー¶
メモリ不足が発生した¶
プログラムは計算に使用するメモリの割り当てを試みていますが、メモリが不足しているため、割り当てできません。
考えられる解決策は次のとおりです:
分析対象となる原子の数を減らす。
処理中の軌跡ファイルの長さを短縮する。
特定の状況では、Ångströmとnmの混同により、ユーザーが意図したよりも10倍大きい:ref:
pdb2gmx <gmx pdb2gmx>`形式の水分子ボックスを作成してしまう可能性があります(例::ref:`gmx solvate)。より多くのメモリを搭載したコンピューターを使用してください。
コンピューターにさらにメモリを搭載してください。
ユーザーは、さまざまな操作にかかる時間と/またはメモリのコストが、原子/グループ/残基の数 N、またはシミュレーションの長さ T に比例して、指数関数的に増加する可能性があることを理解しておく必要があります。具体的には、N の場合、N、N*log*N、または |*N*の2乗| (またはそれ以上に) のオーダーで、T の場合も同様です。時間がかかり始めた場合は、自分が何をしているのか、そしてその背後にあるアルゴリズム(Reference manual、マニュアルページ、またはユーティリティの-hオプションを参照)を検討し、より優れたスケーリング特性を持つ、実行可能な方法がないか確認してください。
エラー::ref:`pdb2gmx <gmx pdb2gmx>`でのエラー¶
残差 'XXX' が残差トポロジーデータベースに存在しません¶
これは、実行中に選択した力場が、pdb2gmx で XXX という名前の残基に対して、残基データベース にエントリを持たないことを意味します。 残基データベース を使用して トップ ファイルを作成するために必要です。 :ref:`残基データベース<rtp>`のエントリが欠落しているのは、データベースにその残基が存在しない場合、または名前が異なる場合が原因です。
新規ユーザーの場合、このエラーは、ユーザーが pdb2gmx を、ファイルの内容を考慮せずに、自分自身で持っている PDB ファイル上で実行しているために発生します。 force field は魔法ではありません。それは、residue database に含まれている、またはそれ以外の方法で提供されている分子や残基(構成要素)のみを扱えます。
もし、pdb2gmx を使用して、トポロジーを自動的に生成したい場合は、目的の force field 内に、使用しようとしているビルディングブロックと同じ名前の適切な rtp エントリが存在していることを確認する必要があります。もし、分子の名前を "HIS" と指定した場合、pdb2gmx は、rtp ファイル内の [ HIS ] エントリに基づいてヒスチジンを構築しようとします。そのため、正確なヒスチジンの原子エントリを検索します。
もし、任意の分子に対して topology を作成したい場合は、pdb2gmx を使用することはできません(ただし、rtp エントリを手動で作成した場合を除く)。その場合は、手動でエントリを作成するか、別のプログラム(例えば x2top またはユーザーが提供したスクリプト)を使用して トップ ファイルを作成する必要があります。
データベースにこの残基に対するエントリがない場合、以下のいずれかの方法で力場パラメータを取得できます。
:ref:`残存物データベース<rtp>`で、残存物の別の名前が使用されているかどうかを確認し、必要に応じて名前を変更してください。
自分で残基/分子をパラメータ化する(これは非常に手間がかかり、専門家でも大変)。
分子の :ref:`トポロジーファイル<top>`を見つけ、それを :ref:`ITPファイル`に変換し、それを自分の :ref:`TOPファイル`に含めます。
別の:ref:`強制場<gmx-force-field>`を使用し、この場に必要なパラメータを設定します。
使用している力場に適合する、残基のパラメータに関する主要な文献を検索する。
一度、ご自身の残基のパラメータとトポロジーを決定したら、force field に残基を追加する の手順を参照して、どのように進めるかを確認してください。
長い結合と/または欠落した原子¶
おそらく、:ref:`pdb`ファイルの中で、必要な原子が欠けている可能性があります。これにより、:ref:`pdb2gmx <gmx pdb2gmx>`が正常に動作しなくなることがあります。 :ref:`pdb2gmx <gmx pdb2gmx>`の画面出力を確認し、欠けている原子を特定してください。その後、:ref:`pdb`ファイルに原子を追加し、エネルギー最小化を実行することで、正しい位置に配置されます。または、`WHAT IF <https://swift.cmbi.umcn.nl/whatif/>`プログラムなどを使用して、サイドチェインを修正してください。
チェーン識別子「X」が、非連続した2つのブロックで使用されています。¶
これは、:ref:`座標ファイル<gmx-structure-files>`を:ref:`pdb2gmx<gmx pdb2gmx>`に渡す際に、X鎖が分割されていることを意味します。これは、おそらく、分子が別の分子の中に誤って挿入されたために発生します。解決策は簡単です。挿入された分子を、他の分子を分割しない場所に移動します。このメッセージは、同じ鎖識別子が2つの異なる鎖で使用されていることを意味する可能性もあります。その場合は、2番目の鎖に一意の識別子を割り当ててください。
警告:PDBファイル内のXXX残基のXアトムが欠損しています。¶
上記「長い結合/欠落した原子」エラーに関連して、このエラーは通常、その意味が非常に明確です。つまり、pdb2gmx<gmx pdb2gmx>`は、指定された残基内の特定の原子を、フォースフィールドファイル :ref:`rtp に記述された情報に基づいて認識します。このエラーが発生する可能性のあるケースは以下のとおりです。
欠損した水素原子:エラーメッセージは、:ref:`hdb`ファイル内のエントリが欠落していることを示唆している可能性があります。より可能性が高いのは、あなたの水素原子の命名規則が、:ref:`rtp`エントリで期待される形式と一致しないことです。この場合、「-ignh」を使用し、:ref:`pdb2gmx<gmx pdb2gmx>`が正しい水素原子を追加できるようにするか、問題のある原子の名前を変更してください。
ターミナル末端(通常はN末端)にH原子が欠損している場合、これは通常、適切な
-terオプションが指定されていないか、正しく指定されていないことを示します。 :ref:`AMBER力場<gmx-amber-ff>`を使用する場合、命名規則が問題であることが多いです。 N末端およびC末端の残基は、それぞれNとCで前置する必要があります。たとえば、N末端のアラニンを :ref:`pdb`ファイルに ``ALA``としてリストするのではなく、`ffamber <http://ffamber.cnsm.csulb.edu/ffamber.php>`の指示に従って ``NALA``としてリストする必要があります。提供された構造ファイルには、原子が単純に欠けています。
:ref:`pdb2gmx<gmx pdb2gmx>`に渡されたファイルで、`REMARK 465とREMARK 470のエントリを探してください。これらの原子は、外部ソフトウェアを使用してモデリングする必要があります。Gromacs のツールを使用して、不完全なモデルを再構築することはできません。
エラーメッセージとは異なり、-missing オプションの使用はほとんどの場合不適切です。-missing オプションは、rtp エントリを活用するために、アミノ酸類似の分子用の特定のトポロジーを生成するためにのみ使用する必要があります。もし、タンパク質や核酸のトポロジーを生成するために -missing オプションを使用している場合は、やめてください。生成されるトポロジーは、物理的に現実的ではありません。
アトム X が残基 YYY に存在しません。¶
もし、pdb2gmx を使用してトポロジーを構築しようとしている場合、原子の名前は、構造内のビルディングブロックを定義する rtp ファイルに存在する名前と一致する必要があります。ほとんどの場合、問題は名前の不一致によるもので、原子の名前を coordinate file で適切に変更してください。また、フォースフィールド force field の期待に合わない残基を含む構造を提供している場合もあります。その場合は、なぜそのような違いが生じているのかを調査し、調査結果に基づいて適切な対応(異なる force field の使用、手動での構造編集など)を行ってください。
フォースフィールドが見つかりませんでした ('.ff' で終わるサブディレクトリにある 'forcefield.itp' という名前のファイル)¶
これは、環境が|Gromacs|を正しく使用するように設定されていないことを意味します。なぜなら、pdb2gmx がフォースフィールドに関するデータベースを見つけられないからです。これは、|Gromacs|のインストールが別の場所に移動された場合に発生する可能性があります。その場合は、:ref:`|Gromacs|へのアクセス方法`の手順に従うか、それを行う前に|Gromacs|を再インストールしてください。
エラー:grompp¶
2番目のデフォルト設定ファイルが見つかりました¶
これは、システム用の topology または force field ファイルに [defaults] ディレクティブが複数回出現するためです。これは許可されていません。一般的な原因は、別の場所から取得された topology ファイル(例えば、itp ファイル)に、もう一つの [defaults] ディレクティブが設定されていることです。トポロジーファイルの動作に関する詳細は、reference manual、第 5.6 節を参照してください。:
[ defaults ]
; nbfunc comb-rule gen-pairs fudgeLJ fudgeQQ
1 1 no 1.0 1.0
一つの解決策は、該当するコード行をファイル内でコメントアウト(または削除)することです。つまり、コードが2回含まれている場所で、その行を削除します。
;[ defaults ]
; nbfunc comb-rule gen-pairs fudgeLJ fudgeQQ
;1 1 no 1.0 1.0
より良い解決策を見つけるためには、現在行っていることを再考することが重要です。 [defaults] ディレクティブは、トップ ファイルの最上部にのみ配置する必要があります。ここで、force field を選択します。 2つの force fields を混在させようとすると、問題が発生する可能性があります。 また、分子の itp ファイルが force field を選択しようとすると、その作成者は問題を招くことになります。
Invalid section title or transition marker.¶
.top および .itp ファイル内の指示には、それらが出現できる順序に関するルールがあり、このエラーは、そのルールが違反された場合に発生します。 reference manual の第 5 章の例と説明、またはチュートリアル資料を参照してください。 :ref: include file mechanism を使用してファイルを「#include」することはできません。なぜなら、これらのファイルには指示が含まれており、それらは適切に配置されている必要があります。
特に、「不適切なデフォルト値の設定」は、デフォルト値が :ref:`トポロジー <top>`または :ref:`力場 <gmx-force-field>`ファイルに不適切な場所に設定された場合に発生します。「[defaults]」セクションは1回しか出現できず、必ず :ref:`トポロジー <top>`の最初のディレクティブである必要があります。通常、「[defaults]」ディレクティブは :ref:`力場 <gmx-force-field>`ファイル(forcefield.itp)に存在し、システムトポロジーに「#include」でこのファイルを読み込むと、 :ref:`トポロジー <top>`に追加されます。
もし問題の指示が [atomtypes]``(このエラーの最も一般的な原因)またはその他のバインドまたは非バインド ``[*types] 指示の場合、ユーザーは通常、標準的なものでない種(リガンド、溶媒など)を追加しており、これによりシステムに新しい原子タイプまたはパラメータが導入されます。 上記のように、これらの新しいタイプとパラメータは、どの [moleculetype] 指示よりも前に表示する必要があります。 force field は、分子が定義される前に完全に構築されている必要があります。
アトムインデックス n が、位置制約の範囲外¶
一般的な問題は、複数の分子に対して位置制約ファイルが正しく配置されていないことです。位置制約ファイル:ref:`itp`ファイルには、``[ position_restraints ]``ブロックが含まれており、このブロックは必ず ``[ moleculetype ]``ブロック内に存在する必要があります。例えば:
不正:
#include "topol_A.itp"
#include "topol_B.itp"
#include "ligand.itp"
#ifdef POSRES
#include "posre_A.itp"
#include "posre_B.itp"
#include "ligand_posre.itp"
#endif
正しく:
#include "topol_A.itp"
#ifdef POSRES
#include "posre_A.itp"
#endif
#include "topol_B.itp"
#ifdef POSRES
#include "posre_B.itp"
#endif
#include "ligand.itp"
#ifdef POSRES
#include "ligand_posre.itp"
#endif
さらに、各 [position_restraint] のアトムインデックスは、システムではなく [moleculetype] に相対的にする必要があります(なぜなら、まだ [molecules] が解析されていないため、「システム」という概念が存在しないからです)。したがって、genrestr のようなツールの出力を鵜呑みにすることはできません(genrestr -h が警告するように)。
システム全体の電荷がゼロではありません。¶
システムが電荷を中和するために、またはトポロジーに問題がある可能性があることをお知らせします。
もし電荷が整数に非常に近い場合、これは トポロジー を使用した場合、原子リストの右側のコメント列を確認してください。この列には、累積電荷が表示されます。これは、各残基(および適用可能な場合は電荷グループ)ごとに整数である必要があります。これにより、整数値から逸脱する箇所を特定するのに役立ちます。また、使用されているターミナルカッピンググループも確認してください。
もし、その値がすでに整数に近い場合、その差は :ref:`丸め誤差<gmx-floating-point>`によるものであり、大きな問題ではありません。
注記:PMEユーザー向け:PMEでは、全体的な背景電荷を補償するために、均一な中和背景電荷を使用することができます。ただし、特に非均一な系の場合、望ましくないアーティファクトが発生する可能性があります。これは、ref:`181 <refGroenhofEwaldArtefact>`(http://pubs.acs.org/doi/abs/10.1021/ct400626b)に示されているように、実際には、系全体を中性にするために、対イオンを追加することが標準的な手順です。
パラメータの数が正しくない¶
システム用の トポロジー ファイルを確認してください。 結合定義に必要なパラメータが不足しています。 また、Include File Mechanism またはトポロジーファイルの形式(「リファレンス マニュアル」第 5 章を参照)を編集した際に、ファイルが破損している場合に、同様の問題が発生することがあります。
座標ファイル内の座標の数が、トポロジーと一致しません。¶
これは、:ref:`topology <top>`ファイルに記載されている情報に基づいて、システム内の原子または粒子の総数が、通常は:ref:`gro`または:ref:`pdb`形式の:ref:`coordinate file <gmx-structure-files>`に記載されているものと完全に一致しないことを示しています。
最も一般的な理由は、ユーザーがソルバを実行した後、またはシステムに分子を追加した後、トポロジーファイルを更新しなかった、またはシステム内の分子の数についてタイプミスをしたことが原因です。 使用しているトポロジーファイルの末尾に、座標ファイルの内容と完全に一致する以下の内容が含まれていることを確認してください(分子の数と順序の両方について):
[ molecules ]
; Compound #mol
Protein 1
SOL 10189
NA+ 10
致命的なエラー: XXXという種類の分子が見つかりません¶
あなたの [ molecules ] セクションにある、各分子の種類は、事前に [ moleculetype ] セクションが定義されている必要があります。これは、トップ ファイルまたは included itp ファイルのいずれかにある必要があります。構文の説明については、「リファレンスマニュアル」の 5.6.1 節を参照してください。あなたの トップ ファイルには、指定された分子に対するそのような定義がありません。関連するファイルの内容、分子の名前、およびそれらを後で参照する方法を確認してください。 #ifdef および / または #include ステートメントの状態に注意してください。
T-カップリンググループ XXX は、原子の数が 10% 未満¶
シミュレーション内で、分子の種類ごとに個別の:ref:`thermostats <gmx-thermostats>`(温度結合グループ)を指定することが可能です。これは、分子動力学シミュレーションを行う初心者によく見られる、悪習です。このようなことは、予測が難しいエラーやアーティファクトを引き起こす可能性があるため、推奨されません。多くの場合、すべての分子を単一のグループにまとめることが最適です。デフォルトの「System」グループを使用します。「ホット・ソルベント、コールド・ソリューション」の問題を回避するために、個別の結合グループが必要な場合は、それらが「十分な大きさ」であることを確認し、シミュレーション内で一緒に現れる分子の種類を組み合わせる必要があります。たとえば、カウンターイオンを含むタンパク質を水中でシミュレーションする場合は、「Protein」と「Non-Protein」を使用することが適切です。
切断長は、最短の箱ベクトルの半分よりも長く、または最小の箱対角要素よりも長くなっています。箱のサイズを大きくするか、rlistを小さくしてください。¶
このエラーは、メッセージ内で記載されている状況で発生します。シミュレーションボックスの寸法は、原子が互いに相互作用する(周期境界条件を使用する場合)ように設定されており、これにより最小画像規則が違反されます。このような状況は完全にあり得ず、重大なアーチファクトを引き起こします。解決策は、メッセージ内で記載されているものと同様です。シミュレーションボックスのサイズを、すべての3つの次元で、カットオフ長を基準に絶対最小の2倍にする(圧力を使用する場合は注意が必要で、ボックスの寸法は時間とともに変化し、わずかに減少した場合でも最小画像規則が違反される可能性がある)か、カットオフ長を小さくする(使用している:ref:`force field <gmx-force-field>`に応じて、このオプションが利用できない場合がある)。
アトムインデックス (1) が、境界外の結合に存在¶
この種のエラーは以下のような表示になります:
Fatal error:
[ file spc.itp, line 32 ]
Atom index (1) in bonds out of bounds (1-0).
This probably means that you have inserted topology
section "settles" in a part belonging to a different
molecule than you intended to. in that case move the
"settles" section to the right molecule.
このエラーは比較的わかりやすいものです。まず、top`ファイルを確認し、すべての ``[molecules]` セクションに、その分子に関するすべてのデータが含まれており、他のデータは含まれていないことを確認してください。つまり、前の [moleculetype] セクションが終了する前に、別の分子タイプ(itp`ファイル)を ``#include` することはできません。必要なセクションの順序に関する情報は、reference manual`の第5章の例を参照してください。 ``#include` ディレクティブを使用してインクルードしたファイルの内容に注意してください。
XXX: 互換性のない原子名の指定¶
このエラーは通常、:ref:`topology <top>`ファイルの順序が、:ref:`coordinate file <gmx-structure-files>`の順序と一致しないことを示します。 :ref:`grompp <gmx grompp>`を実行する際、プログラムは:ref:`topology <top>`からパラメータを読み込み、それらを:ref:`coordinate <gmx-structure-files>`ファイル内の原子にマッピングします。 順序が一致しない場合、このエラーが発生します。 この問題を解決するには、``[ molecules ]``ディレクティブの内容が、coordinateファイル内の原子の正確な順序と一致するようにしてください。
いくつかのケースでは、このエラーは無害です。おそらく、古い(4.5より前の)ion命名規則を使用している:ref:座標ファイル <gmx-structure-files>`を使用している可能性があります。この場合、:ref:`grompp <gmx grompp>`に名前の再割り当てを許可しても問題ありません。ほとんどの他の状況では、このエラーが発生した場合、**無視すべきではありません**。-maxwarn`オプションが利用可能であるからといって、シミュレーションが正常に動作することを盲目的に期待して使用する必要はありません。ほとんどの場合、:ref:`クラッシュ <blowing-up>`します。
座標ファイル内の、原子Xに対応する無効な行¶
このエラーは、:ref:`gro`ファイルの形式が何らかの方法で破損した場合に発生します。最も一般的な原因は、:ref:`gro`ファイル内の2行目に、誤った原子数を指定していることが原因で、:ref:`grompp <gmx grompp>`が原子を検索し続けるものの、ボックスベクトルが見つからないことです。
入力ファイルには、4095文字を超える長さの行が含まれています。¶
このエラーは、通常、行末の形式の違いによって発生します。DOS/Windows と Unix/Linux/Mac では行末の形式が異なります。これは、dos2unix のような専用のツールを使用するか、ほとんどのテキストエディタで修正することで解決できます。ネットワークファイルシステム(例:Samba)から直接読み込むと、同様の問題が発生する可能性があります。その場合は、ファイルをローカルファイルシステムにコピーして再度試すことをお勧めします。
エラー:mdrun¶
ステップサイズが小さすぎる、またはエネルギーに変化がない。機械精度まで収束したが、要求されたF:sub:`max`には収束しなかった。¶
これは必ずしもエラーではありません。これは単に、エネルギー最小化のプロセス中に、mdrun`が現在のパラメータで構造を最小化するための可能な限界に達したことを通知しています。これは、システムが完全に最小化されていないことを意味するものではありませんが、特定の状況下ではそうなる可能性があります。システムに大量の水が存在する場合、`E`の値が-10:sup:`5`から-10:sup:`6`(`F`の値が10から1000 kJ mol:sup:-1` nm:sup:`-1`の間)である場合、これは通常、結果の構造からほとんどのMDシミュレーションを開始するための合理的な値です。最も重要な結果は、`F`の値である可能性が高く、これはポテンシャルエネルギー表面の傾きを示し、つまり、構造がエネルギーの最小値からどれだけ離れているかを示します。通常、通常のモード解析などの特殊な目的には、さらに最小化が必要になる場合があります。さらに最小化を行うには、異なるエネルギー最小化方法を使用するか、|Gromacs|(ダブル精度をサポート)を使用することができます。
エネルギー最小化は、少なくとも1つの原子にかかる力が有限でないため、停止しました。¶
これは、おそらく入力座標において(少なくとも)2つの原子が非常に近い位置にあることを示しており、それらの原子がお互いに及ぼす力が、|Gromacs|の精度を超えるほど大きいため、最適化はできません。ソフトコアポテンシャルを使用することで、無限の力を持つシステムを最適化できる場合があります。これは、|Gromacs|の自由エネルギーコードを使用して、レンナー・ジョーンズ相互作用の大きさを縮小することで、Martiniなどの粗いスケールのシステムを最適化するための一般的なワークフローです。
警告: LINCS/SETTLE/SHAKE¶
時々、ダイナミクスを実行中に、mdrun が突然停止することがあります(たとえば、複数の pdb ファイルを書き込んだ後に)。これは、制約アルゴリズム(たとえば、LINCS、SETTLE、または SHAKE)に関する警告が ログ ファイルに書き込まれた後に発生することがあります。これらのアルゴリズムは、通常、結合長と/または角度を制約するために使用されます。システムが blowing up に関するアドバイスも参照してください。
1-4 境界を超えたインタラクション¶
一部の原子が移動したため、3つの結合で隔てられた2つの原子が、カットオフ距離を超える距離にあります。これは問題です。 最も重要なことは、カットオフを増やさないでください! このエラーは、原子が非常に大きな速度で動いていることを示しており、これは通常、(一部の)分子が :ref:`爆発<blowing-up>`していることを意味します。LINCSを使用している場合は、すでにLINCSの警告が表示されている可能性があります。SHAKEを使用している場合、SHAKEのエラーが発生し、シミュレーションが「1-4がカットオフを超えている」というエラーが発生する前に停止します。
システムで大きな速度が発生する原因はいくつか考えられます。シミュレーションの初期段階で発生する場合は、システムが十分に平衡状態でない可能性があります(たとえば、接触が不適切である)。この問題を修正するために、エネルギー最小化を再度試してください。そうでない場合、温度が高すぎるか、またはステップサイズが大きすぎる可能性があります。これらのパラメータを調整して、エラーが解消されるまで試してください。それでも解決しない場合は、 :ref:`トポロジー<top>`内のパラメータの有効性を確認してください!
シミュレーションは実行されているが、出力がない¶
これは厳密にはエラーではありませんが、mdrunがCPU時間を消費しているように見えますが、出力ファイルには何も書き込まれていません。このような状況が起こる理由はいくつかあります:
シミュレーションが単に(非常に)遅い(
gmx-performance`を参照)だけかもしれません。また、出力がバッファリングされているため、出力が特定のファイルに表示されるまでに時間がかかる場合があります。問題を解決しようとしており、可能な限り早く出力を取得したい場合は、環境変数 ``GMX_LOG_BUFFER`を 0 に設定できます。シミュレーションで何らかの問題が発生している可能性があります。これにより、例えばゼロ除算の結果である「非数値」 (NAN) が生成されることがあります。NAN を使用した後の計算は、浮動小数点例外を引き起こし、処理速度を著しく低下させます。
「nst*」パラメータ(マニュアルファイル::ref:`mdp`を参照)をすべて0に設定している場合、ほとんどの出力が抑制されます。
ディスクが一杯になっている可能性があります。これにより、最終的には mdrun がクラッシュしますが、出力がバッファリングされているため、mdrun が書き込みできないことを認識するまでに時間がかかる場合があります。
制約付きの共役勾配法を実行できません¶
これは、トポロジーに制約が定義されている場合、共役勾配アルゴリズムを使用してエネルギー最小化を実行できないことを意味します。詳細については、`参照マニュアル`_を参照してください。
圧力のスケールが1%を超えた¶
このエラーは、シミュレーションボックスが振動し始める(大きな圧力や/または小さな結合定数による)、システムが共鳴し始め、最終的に :ref:`クラッシュ<爆発>`する際に発生しやすいです。これは、圧力結合を使用する前に、システムが十分に平衡状態になっていないことを意味します。したがって、より良い/より長い平衡化を行うことで、この問題を解決できる可能性があります。
システムがクラッシュする前に、およびクラッシュ中に、システムの動作を観察することが推奨されます。これにより、システムの特定の部分/構造が問題の原因であるかどうかを特定できる場合があります。
場合によっては、システムが十分に平衡状態になった場合、このエラーは、圧力結合定数 tau-p が小さすぎることを意味する可能性があります(特にBerendsenの弱い結合法を使用する場合)。この値を大きくすると、圧力の変化への応答が遅くなり、共鳴が停止する可能性があります。また、Parrinello-Rahmanの圧力結合法を、まだ平衡状態になっていないシステムで使用した場合に、このエラーが発生する可能性が高くなります。その場合は、C-rescaleメソッドを使用してください。
このエラーは、制約や/または仮想サイトがない場合に、タイムステップが大きすぎる(例:5 fs)場合に発生する可能性があります。
範囲チェックエラー¶
これは通常、シミュレーションが :ref:`崩壊<blowing-up>`していることを意味します。おそらく、より適切なエネルギー最小化、または/と、トポロジー設計を行う必要があります。
X粒子がPMEノードYに送信される場合、その電荷グループのドメイン分割セルよりも、細胞長の範囲を超えて存在する¶
これは、mdrun がシステムが :ref:`崩壊している <blowing-up>ことを伝えている別の方法です。もし、システム内で粒子が飛び交っている場合、この致命的なエラーが発生します。このメッセージは、システムの何かが崩壊している(つまり、「電荷グループのセル」から離れている)ことを示しています。この問題を修正する方法については、「崩壊」ページを参照してください。
2つのドメイン分割ステップの間で、電荷グループが移動しすぎました。¶
上記の情報をご参照ください。
ソフトウェアの一貫性エラー: 一部の操作が複数回割り当てられているように見える¶
上記の情報を参照してください
与えられたボックスと最小セルサイズ x nm に対して、n 階層に対応するドメイン分割は存在しません。¶
これは、並行計算を実行しようとしたことを意味し、:ref:``mdrun がシミュレーションセルをチャンクに分割しようとした際に、それができなかったことを示しています。最小セルのサイズは、最大の電荷グループまたは結合相互作用、および rvdw、rlist、および rcoulomb のいずれかのサイズ、および結合制約の影響、および安全マージンによって制御されます。したがって、多数のプロセッサを使用して小さなシミュレーションを実行することはできません。そのため、:ref:``grompp が大きな電荷グループについて警告した場合、注意し、そのサイズを再検討してください。:ref:``mdrun は、最小サイズを計算する方法の詳細を :ref:``log ファイルに出力します。したがって、そこから原因を特定できる可能性があります。
もし、並列計算を行っているとは考えていなかった場合、GROMACS 4.5以降では、デフォルトでスレッドベースの並列処理を使用していますことを認識してください。これを防ぐには、mdrun コマンドに -ntmpi 1 オプションを指定してください。そうしないと、MPIに対応した|Gromacs|を使用しているにも関わらず、そのことに気づかない可能性があります。
箱のXサイズとトリキリンの傾き係数の積が、DDセルの数と最小許容セルサイズの積よりも小さい¶
このエラーは、シミュレーションボックスが、要求された数のドメイン分解(DD)セルの間で分割するために小さすぎる場合に発生します。GROMACSは、シミュレーションボックスを各並列処理のランクごとに1つのセルに分割し、各セルは少なくともカットオフ半径(および安全マージン)以上のサイズである必要があります。指定された軸に沿ったボックスサイズを、トリキニクな傾き係数で乗算したものが、その軸に沿ったDDセルの数と最小許容セルサイズを乗算した値よりも小さい場合、シミュレーションは実行できません。考えられる解決策は次のとおりです。
mdrunが明示的な-ddフラグを削除することで、DD 分解を自動的に選択するようにする。シミュレーションボックスのサイズを大きくする。
MPIのプロセス数またはスレッド-MPIスレッド数(
-ntmpi)を減らす。