all¶
概要¶
要約: end-to-endの酵素反応ワークフロー – 活性部位抽出、ML/MM レイヤー割り当て、MM トポロジー準備、任意の段階的スキャン、全系レイヤード PDB での MEP 探索(GSM)、任意の TS 最適化、擬似 IRC、熱化学、DFT、DFT//UMA ダイアグラム。
mlmm all は全系レイヤード PDB 上で ML/MM を用いるワンショットパイプラインを実行します。以下の 3 つのモードをサポートしています:
マルチ構造アンサンブル – 反応順に 2 つ以上の完全 PDB を提供します。活性部位領域を抽出(ML 領域定義用)、MM トポロジー構築、ML/MM レイヤー割り当て後、レイヤード全系 PDB で GSM MEP 探索を実行し、任意でセグメントごとの後処理(TSOPT/freq/DFT)を実行します。
単一構造 + 段階的スキャン – 1 つの PDB と
--scan-listsを提供します。スキャンで中間体/生成物候補を生成し、MEP の端点として使用します。1 つの
--scan-listsリテラルで単一のスキャンステージを実行します。複数ステージは 1 つの
--scan-listsフラグの後に複数の値として渡します(フラグ自体は繰り返せません)。
TSOPT のみ – 1 つの PDB を提供し、
--scan-listsを省略して--tsoptを設定します。レイヤード全系 PDB で TS 最適化を実行し、擬似 IRC、両端の極小化、エネルギーダイアグラムの構築を行います。
Important
--tsopt は TS 候補を生成します。all は検証のために IRC と freq を自動実行しますが、機構解釈の前に必ず結果(虚振動数モード + 端点の結合性)を確認してください。
最小例¶
mlmm all -i R.pdb P.pdb -c "SAM,GPP" -l "SAM:1,GPP:-3" --out-dir ./result_all
出力の見方¶
result_all/summary.logresult_all/summary.yamlresult_all/path_search/mep.pdb(またはresult_all/path_search/seg_*/)
よくある例¶
TS 最適化・熱化学・DFT まで一括実行する。
mlmm all -i R.pdb P.pdb -c "SAM,GPP" -l "SAM:1,GPP:-3" \
--tsopt --thermo --dft --out-dir ./result_all
単一構造 + 段階的スキャンを実行する。
mlmm all -i A.pdb -c "308,309" --scan-lists "[(12,45,1.35)]" "[(10,55,2.20)]" \
--multiplicity 1 --out-dir ./result_scan_all
重い処理を流す前に計画だけ確認する。
mlmm all -i R.pdb P.pdb -c "SAM,GPP" -l "SAM:1,GPP:-3" --dry-run
ORB バックエンドと xTB 点電荷埋め込みを使用する。
mlmm all -i R.pdb P.pdb -c "SAM,GPP" -l "SAM:1,GPP:-3" \
--backend orb --embedcharge --out-dir ./result_all_orb
PDB コンパニオンはテンプレートが利用可能な場合に生成され、--convert-files/--no-convert-files(デフォルト有効)で制御されます。
使用法¶
mlmm all -i INPUT1 [INPUT2...] -c SUBSTRATE [options]
コアオプションは mlmm all --help、全オプション一覧は mlmm all --help-advanced で確認できます。
例¶
# 基質と電荷を明示したend-to-end実行(マルチ構造)
mlmm all -i reactant.pdb product.pdb -c "GPP,MMT" -l "GPP:-3,MMT:-1"
# 中間体を含むアンサンブル、残基 ID による基質指定、全後処理
mlmm all -i A.pdb B.pdb C.pdb -c "308,309" -l "-1" \
--multiplicity 1 --max-nodes 10 --max-cycles 100 --climb \
--opt-mode grad --no-dump --config params.yaml --preopt \
--out-dir result_all --tsopt --thermo --dft
# 単一構造 + スキャンで順序付き系列を構築
mlmm all -i A.pdb -c "308,309" --scan-lists "[(10,55,2.20),(23,34,1.80)]" \
--multiplicity 1 --out-dir result_scan_all --tsopt --thermo --dft
# 単一構造 TSOPT のみモード(path_search なし)
mlmm all -i A.pdb -c "GPP,MMT" -l "GPP:-3,MMT:-1" \
--tsopt --thermo --dft --out-dir result_tsopt_only
ワークフロー¶
活性部位抽出と ML 領域定義(複数入力時はマルチ構造の和集合)
基質を定義します(
-c/--center、PDB、残基 ID、または残基名で指定)。任意で
--ligand-chargeを総数値(分配)またはマッピング(例:GPP:-3,MMT:-1)として提供します。抽出器は入力ごとのポケット PDB を
<out-dir>/pockets/に書き出します。最初のポケットが<out-dir>/ml_region.pdbとしてコピーされ、後続の全 ML/MM 計算の ML 領域を定義します。抽出器の最初のモデルのポケット総電荷が後続ステップの総電荷として使用され、丸め処理が発生した場合はコンソールに通知されます。
追加の抽出トグル:
--radius、--radius-het2het、--include-H2O/--no-include-H2O、--exclude-backbone/--no-exclude-backbone、--add-linkH/--no-add-linkH、--selected-resn、--verbose/--no-verbose。-c/--centerを省略した場合は抽出をスキップし、完全入力構造をそのまま使用します。
ML/MM 準備(parm7 + レイヤー割り当て)
最初の完全入力 PDB に対して
mm_parmを一度実行し、<out-dir>/mm_parm/<input_basename>.parm7/.rst7を構築します。これは自動的に--parmとして渡されます。各完全系 PDB に対して
define-layerを実行し、ML 領域定義に基づく 3 層 B 因子(ML=0.0、MovableMM=10.0、FrozenMM=20.0)を付与します。レイヤード全系 PDB は<out-dir>/layered/に書き出されます。このステージは
--auto-mm-ff-set、--auto-mm-add-ter、--auto-mm-keep-tempで調整できます。
任意の段階的スキャン(単一入力のみ)
完全入力 PDB が 1 つのみで
--scan-listsが指定された場合、レイヤード全系 PDB に対して ML/MM 計算機を使用した段階的な結合距離駆動スキャンを実行します。各ステージの最終緩和構造(
stage_XX/result.pdb)が中間体/生成物候補として収集されます。経路探索の入力系列は
[初期レイヤード PDB, stage_01/result.pdb, stage_02/result.pdb,...]となります。
全系レイヤード PDB での MEP 探索
すべての MEP 計算は全系レイヤード PDB(
--parm+--detect-layer)上で実行されます(ポケット上ではありません)。--refine-path(デフォルト): キンク検出と精密化を含む再帰的path_searchを実行。--no-refine-path: 隣接ペアごとに単一パスpath-optGSM を実行後、軌跡を結合、セグメントごとの HEI 抽出、結合変化検出、summary.yaml書き出しまで行い、Stage 4 後処理(TSOPT、thermo、DFT)も両モードで利用可能。マルチ入力実行では、元の完全 PDB がマージ参照として自動的に供給されます。スキャン由来の系列(単一構造の場合)では、単一の元の完全 PDB がすべての入力の参照テンプレートとして再利用(繰り返し)されます。
サマリーと任意の後処理
セグメントごとの軌跡、全 MEP 軌跡、
summary.yamlが<out-dir>/path_search/に書き出されます。--tsopt: 各 HEI で TS を最適化し、EulerPC IRC を実行し、セグメントエネルギーダイアグラムを描画します。--thermo: (R, TS, P) で ML/MM 熱化学を計算し、Gibbs ダイアグラムを追加します。--dft: (R, TS, P) で DFT 一点計算を実行し、DFT ダイアグラムを追加します。--thermoと組み合わせると、DFT//UMA Gibbs ダイアグラムも生成されます。共有の上書き:
--opt-mode、--opt-mode-post(TSOPT と IRC 後 endpoint-opt のモード上書き)、--flatten/--no-flatten、--hessian-calc-mode、--tsopt-max-cycles、--tsopt-out-dir、--freq-*、--dft-*。VRAM に余裕がある場合は
--hessian-calc-modeをAnalyticalに設定することを強く推奨します。
TSOPT のみモード(単一入力、
--tsopt、--scan-listsなし)ステップ (4)-(5) をスキップし、レイヤード全系 PDB で
tsoptを実行し、擬似 IRC と両端の極小化を行い、R-TS-P の ML/MM エネルギーダイアグラムを構築し、任意で Gibbs、DFT、DFT//UMA ダイアグラムを追加します。このモードでのみ、より高いエネルギーの IRC 端点が反応物 (R) として採用されます。
電荷とスピンの優先順位¶
電荷の解決(優先度の高い順):
優先度 |
ソース |
使用タイミング |
|---|---|---|
1 |
|
明示的な CLI 上書き |
2 |
ポケット抽出 |
|
3 |
|
抽出スキップ時のフォールバック |
4 |
デフォルト |
なし(未解決なら中断) |
スピンの解決: --multiplicity(CLI)-> デフォルト(1)
ヒント: 正しい電荷伝播のため、非標準基質には常に
--ligand-chargeを指定してください。
入力の前提条件¶
抽出有効時(
-c/--center): 入力は残基を特定するため PDB ファイルが必要。抽出スキップ時: 入力は PDB/XYZ が使用可能。
マルチ構造実行には 2 つ以上の構造が必要。
CLI オプション¶
注意: 表示されるデフォルト値はオプション未指定時に使用されます。
入出力オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
反応順の 2 つ以上の完全 PDB( |
必須 |
|
基質指定(PDB パス、残基 ID、または残基名)。省略時は抽出をスキップ。 |
None |
|
総電荷または残基別マッピング(例: |
None |
|
総電荷を強制指定(最優先の上書き)。 |
None |
|
トップレベル出力ディレクトリ。 |
|
|
全系の AMBER parm7 トポロジーファイル。省略時は |
None |
|
構築済み ML 領域 PDB。指定時はポケット抽出をスキップし、このファイルで ML 領域を直接定義。 |
None |
|
XYZ 入力用の参照 PDB。入力が XYZ の場合に PDB メタデータ(残基、鎖、B 因子)を復元するために必要。 |
None |
|
テンプレート利用可能時の XYZ/TRJ から PDB コンパニオンのグローバルトグル。 |
|
|
オプティマイザーダンプを保存。常に |
|
|
先に適用するベース YAML。 |
None |
|
実行前に解決済み設定を表示。 |
|
|
実行せず検証と計画表示のみ行う。 |
|
抽出オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
ポケット包含カットオフ (Å)。 |
|
|
独立したヘテロ-ヘテロカットオフ (Å)。 |
|
|
水分子(HOH/WAT/TIP3/SOL)を含める。 |
|
|
非基質アミノ酸の主鎖原子を除去。 |
|
|
切断結合にリンク水素を付加。 |
|
|
強制包含する残基。 |
|
|
INFO レベルの抽出器ログを有効化。 |
|
MM 準備オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
|
|
|
リガンド/水/イオンブロック周囲の TER 挿入を制御。 |
|
|
|
|
|
|
None |
MEP 探索オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
スピン多重度 (2S+1)。 |
|
|
ML バックエンド: |
|
|
xTB 点電荷埋め込み補正の有効化。MM 環境から ML 領域への静電的影響を考慮。 |
|
|
xTB 埋め込み用 MM 原子のカットオフ半径(Å)。 |
|
|
セグメント GSM の内部ノード数。 |
|
|
GSM マクロサイクルの最大数。 |
|
|
セグメント GSM の TS 精密化を有効化。 |
|
|
スキャン/path-search と単一構造最適化のプリセット( |
|
|
TSOPT/IRC 後端点最適化向けのプリセット上書き( |
|
|
収束プリセット( |
|
|
IRC 後端点最適化の収束プリセット。 |
|
|
セグメント化前に端点を事前最適化。 |
|
|
True の場合は再帰的 |
|
|
ML/MM ヘシアンモード( |
|
|
入力 PDB の B 因子(B=0/10/20)から ML/MM レイヤーを検出。無効時は下流ツールで |
|
TSOPT の最適化モード選択順: --opt-mode-post(設定時)-> --opt-mode(明示指定時のみ)-> TSOPT デフォルト(hess)。
スキャンオプション(単一入力実行)¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
段階的スキャン: |
None |
|
スキャン出力ディレクトリの上書き。 |
None |
|
スキャンインデックスの解釈を上書き(True = 1 始まり、False = 0 始まり)。 |
None |
|
最大ステップサイズ (Å)。 |
デフォルト |
|
調和バイアス強度 (eV/Å^2)。 |
デフォルト |
|
ステップごとの緩和最大サイクル。 |
デフォルト |
|
スキャン事前最適化トグルの上書き。 |
None |
|
スキャンステージ終端最適化の上書き。 |
None |
後処理オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
反応セグメントごとに TS 最適化 + 擬似 IRC を実行。 |
|
|
R/TS/P で振動解析 ( |
|
|
R/TS/P で DFT 一点計算を実行。 |
|
|
|
|
|
|
デフォルト |
|
tsopt サブディレクトリのカスタマイズ。 |
None |
Freq 上書き¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
freq 出力ディレクトリの上書き。 |
None |
|
出力する最大モード数。 |
デフォルト |
|
モードアニメーション振幅 (Å)。 |
デフォルト |
|
モードアニメーションのフレーム数。 |
デフォルト |
|
モードソート方法。 |
デフォルト |
|
熱化学温度 (K)。 |
デフォルト |
|
熱化学圧力 (atm)。 |
デフォルト |
DFT 上書き¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
DFT 出力ディレクトリの上書き。 |
None |
|
汎関数/基底関数ペア。 |
デフォルト |
|
最大 SCF 反復数。 |
デフォルト |
|
SCF 収束閾値。 |
デフォルト |
|
PySCF グリッドレベル。 |
デフォルト |
出力¶
<out-dir>/
ml_region.pdb # ML 領域定義(最初のポケットのコピー)
pockets/
pocket_<input1_basename>.pdb
pocket_<input2_basename>.pdb
...
mm_parm/
<input1_basename>.parm7 # 最初の完全酵素入力 PDB から生成
<input1_basename>.rst7
scan/ # 単一構造+スキャンモードの場合のみ
stage_01/result.pdb
stage_02/result.pdb
...
summary.yaml # トップレベルサマリーのミラー(path_search 実行時)
summary.log
mep_plot.png
energy_diagram_MEP.png
energy_diagram_UMA_all.png # 集約後処理ダイアグラム(有効時)
energy_diagram_G_UMA_all.png
energy_diagram_DFT_all.png
energy_diagram_G_DFT_plus_UMA_all.png
irc_plot_all.png
path_search/ # path_search 実行時
mep_trj.xyz
mep.pdb
summary.yaml
summary.log
mep_plot.png
energy_diagram_MEP.png
post_seg_XX/ # 後処理有効時
ts/...
irc/...
freq/... # --thermo の場合
dft/... # --dft の場合
energy_diagram_UMA.png
energy_diagram_G_UMA.png
energy_diagram_DFT.png
energy_diagram_G_DFT_plus_UMA.png
tsopt_single/ # 単一構造 TSOPT のみモードの場合
ts/...
irc/...
structures/
reactant.pdb
ts.pdb
product.pdb
freq/... # --thermo の場合
dft/... # --dft の場合
energy_diagram_UMA.png
energy_diagram_G_UMA.png
energy_diagram_DFT.png
energy_diagram_G_DFT_plus_UMA.png
summary.log の読み方¶
ログは番号付きセクションで構成されています:
[1] グローバル MEP 概要 – イメージ/セグメント数、MEP 軌跡プロットパス、集約 MEP エネルギーダイアグラム。
[2] セグメントレベル MEP サマリー(UMA 経路) – セグメントごとの障壁、反応エネルギー、結合変化サマリー。
[3] セグメントごとの後処理(TSOPT / Thermo / DFT) – セグメントごとの TS 虚数振動数チェック、IRC 出力、エネルギーテーブル。
[4] エネルギーダイアグラム(概要) – MEP/UMA/Gibbs/DFT シリーズのダイアグラムテーブルと任意のクロスメソッドサマリーテーブル。
[5] 出力ディレクトリ構造 – インラインアノテーション付きの生成ファイルのコンパクトツリー。
summary.yaml の読み方¶
YAML はコンパクトな機械可読サマリーです。主なトップレベルキー:
out_dir、n_images、n_segments– 実行メタデータと総数。segments–index、tag、kind、barrier_kcal、delta_kcal、bond_changesを持つセグメントごとのエントリリスト。energy_diagrams(任意)–labels、energies_kcal、energies_au、ylabel、imageパスを持つダイアグラムペイロード。
YAML 設定¶
all は階層化された YAML をサポートします:
--config FILE: ベース設定。
defaults < config < CLI < override-yaml
解決後の YAML が下流サブコマンドへ転送されます。各ツールは独自ドキュメントに記載されたセクションを読み取ります:
サブコマンド |
YAML セクション |
|---|---|
|
|
|
|
|
|
|
|
|
注意: CLI 値の後に適用されます。
最小の YAML 例:
calc:
charge: 0
spin: 1
mlmm:
real_parm7: real.parm7
model_pdb: ml_region.pdb
backend: uma # ML バックエンド (uma/orb/mace/aimnet2)
embedcharge: false # xTB 点電荷埋め込み補正
uma_model: uma-s-1p1 # uma-s-1p1 | uma-m-1p1
ml_hessian_mode: Analytical # VRAM に余裕がある場合に推奨
gs:
max_nodes: 12
climb: true
dft:
grid_level: 6
すべての YAML オプションの完全なリファレンスは YAML 設定リファレンス を参照してください。
関連項目¶
extract – 単独のポケット抽出(
allが内部で呼び出し)mm_parm – AMBER トポロジー構築(
allが内部で呼び出し)path-search – 単独の再帰的 MEP 探索
tsopt – 単独の TS 最適化
freq – 振動解析と熱化学
dft – DFT 一点計算
trj2fig – 軌跡からエネルギープロファイルをプロット
典型エラー別レシピ – 症状起点の切り分け
トラブルシューティング – よくあるエラーと対処法
YAML リファレンス – 完全な YAML 設定オプション
用語集 – MEP、TS、IRC、GSM の定義