path-search¶
mlmm path-search は選択した MEP engine(デフォルト GSM、または DMF)を使用して 2 つ以上の構造にわたる連続した最小エネルギー経路(MEP)を構築します。共有結合変化が検出された領域のみを選択的に精密化し、精密化済みのサブパスを 1 つの軌跡に統合します。R + (任意の中間体)+ P からなる多段機構を駆動する用途に向いており、再帰分割が素過程を自動検出します。ただし、複雑な多段階反応の検出は困難な場合があり、入力中間体・MEP エンジン設定・収束閾値の調整など手動での試行錯誤が必要になることがあります。
実行例¶
mlmm path-search -i reactant.pdb product.pdb --parm real.parm7 \
--model-pdb ml_region.pdb -q 0 --out-dir ./result_path_search
中間体を明示した多段経路を構築する例:
# 中間体を含む多段経路を構築する
mlmm path-search -i R.pdb IM1.pdb IM2.pdb P.pdb --parm real.parm7 \
--model-pdb ml_region.pdb -q -1 --out-dir ./result_path_search_multi
事前最適化とアライメントを無効にして軽く試す例:
# 事前最適化とアライメントを無効にして軽く試す
mlmm path-search -i reactant.pdb product.pdb --parm real.parm7 \
--model-pdb ml_region.pdb -q 0 --no-preopt --no-align --max-nodes 8 \
--out-dir ./result_path_search_fast
YAML 上書きや凍結原子を併用する例:
# YAML 上書き、凍結原子付きマルチステップ経路
mlmm path-search -i R.pdb IM1.pdb P.pdb --parm real.parm7 \
--model-pdb ml_region.pdb -q -1 --freeze-atoms "1,3,5" \
--ref-pdb holo_template.pdb --out-dir ./run_ps
一般的なコマンド形式:
mlmm path-search -i R.pdb IM1.pdb P.pdb \
--parm real.parm7 --model-pdb ml_region.pdb -q CHARGE [-m MULT]
[--mep-mode gsm|dmf] [--refine-mode peak|minima]
[--freeze-atoms "1,3,5"] [--max-nodes N]
[--max-cycles-gsm N] [--max-cycles-dmf N] [--climb/--no-climb]
[--thresh PRESET] [--dump/--no-dump] [--out-dir DIR]
[--show-config/--no-show-config] [--dry-run/--no-dry-run]
処理の流れ¶
初期セグメント(隣接ペア A->B ごと; GSM/DMF) – 選択した MEP エンジン(
--mep-mode)を実行して粗い MEP を取得し、最高エネルギーイメージ(HEI)を特定。HEI 周辺の局所緩和 –
--refine-mode(peak: HEI+/-1、minima: 最近傍局所極小)で種点を選び、単一構造オプティマイザ(opt-mode)で精密化して近傍の極小(End1、End2)を得る。ねじれ vs 精密化の判定:
End1とEnd2の間に共有結合変化が検出されない場合、その領域をねじれとして扱い、search.kink_max_nodes個の線形ノードを挿入して各ノードを個別に最適化。それ以外の場合、
End1とEnd2の間で選択した MEP engine による精密化セグメントを起動して障壁を明確化。
選択的再帰 –
(A->End1)と(End2->B)の結合変化をbond閾値で比較。共有結合の更新を含むサブ区間のみに再帰。再帰深度はsearch.max_depthで制限。統合とブリッジ – 精密化済みのサブパスを連結し、RMSD <=
search.stitch_rmsd_threshの重複端点を削除。2 つの統合部分の間の RMSD ギャップがsearch.bridge_rmsd_threshを超える場合、選択中の--mep-modeでブリッジ MEP セグメントを挿入。インターフェース自体に結合変化がある場合、ブリッジの代わりに新たな再帰セグメントを生成。任意のアライメント/精密化 – 事前最適化後、
--alignで全入力を最初の入力に剛体アライン。凍結アンカーがある場合は reference への freeze-guided scan と L-BFGS 緩和も行い、凍結原子を再マッチ。セグメントをプロット/分析用にアノテーション。
結合変化検出は bond YAML セクションの閾値を使用する bond_changes.compare_structures に依存します。
出力¶
out_dir/ (デフォルト:./result_path_search/)
summary.json # MEP レベルの実行サマリー(完全設定ダンプなし)
summary.log # 人間が読めるサマリー
mep_trj.xyz # 最終 MEP(常に書き出し)
mep.pdb # 最終 MEP(参照テンプレート利用可能時は PDB)
mep_seg_XX_trj.xyz / mep_seg_XX.pdb # セグメント別経路
hei_seg_XX.xyz / hei_seg_XX.pdb # 結合変化セグメントごとの HEI
mep_plot.png # イメージインデックスに対する Delta-E プロファイル(trj2fig より)
energy_diagram_MEP.png # 反応物基準の状態レベルエネルギーダイアグラム(kcal/mol)
seg_000_*/ # セグメントレベルの GSM と精密化成果物
実行結果は通常、次のファイルを開いて確認します。
result_path_search/mep_trj.xyzresult_path_search/summary.jsonresult_path_search/summary.logresult_path_search/mep_plot.png(プロット生成時)
CLI オプション¶
mlmm path-search --help はコアオプションを、mlmm path-search --help-advanced は全オプションを表示します。全フラグの一覧は生成されたコマンドリファレンスにもあります。以下の表では、説明が必要なオプションを取り上げます。
オプション |
説明 |
デフォルト |
|---|---|---|
|
反応順の 2 つ以上の PDB/mmCIF 構造、または対応する |
必須 |
|
完全酵素複合体の Amber parm7 トポロジー。 |
必須 |
|
ML/MM の ML(高レベル)領域原子を定義する PDB。 |
None |
|
ML 領域のカンマ区切り原子インデックス(範囲指定可、例: |
None |
|
|
|
|
B 因子レイヤー(B=0/10/20)を自動的に読み取ります。ML 原子集合を明示した場合は MM 側のレイヤーだけを保持し、明示しない場合は B 因子が ML 原子集合も定義します。 |
有効 |
|
ML 領域の電荷(整数)。 |
None |
|
残基ごとの電荷マッピング(例: |
None |
|
スピン多重度 (2S+1)。 |
|
|
セグメント/ブリッジ探索に使う MEP バックエンド。 |
|
|
DMF 計算バックエンド( |
|
|
HEI 精密化の種点ルール。 |
|
|
凍結する 1 始まりカンマ区切りインデックス(YAML |
None |
|
ML 領域からの可動 MM 原子の距離カットオフ (Å)。これを超える MM 原子は凍結。指定時は |
None |
|
GSM/DMF セグメントごとの可動内部画像数(総画像数は |
|
|
完全成長後のGSMノード配置。 |
|
|
GSMストリング最適化サイクル上限。 |
|
|
DMF IPOPT反復上限。 |
|
|
セグメント GSM の TS 精密化を有効化。 |
|
|
セグメンテーション前に端点を L-BFGS で事前最適化。 |
|
|
事前最適化後に入力をアラインし、凍結アンカーがあれば freeze-guided scan/緩和後に凍結原子を再マッチ。 |
有効 |
|
単一構造 L-BFGS のみの収束プリセット( |
|
|
GSM ストリング最適化の収束プリセット( |
|
|
DMF 最適化の IPOPT dual-infeasibility 許容値( |
|
|
MM バックエンド。Hessian 構築法は |
|
|
オプティマイザダンプを保存。 |
|
|
出力ディレクトリ。 |
|
|
XYZ→PDB 変換・トポロジー参照用の完全テンプレート PDB。 |
None |
|
明示 CLI 指定より前に適用されるベース YAML。 |
None |
|
解決済み設定(YAML レイヤ情報を含む)を表示して実行継続。 |
|
|
実行せずに検証と実行計画表示のみを行う。 |
|
|
ML 領域の MLIP バックエンド: |
|
|
REAL と MODEL の両 MM 層で CMAP を保持します。 |
|
|
PDB テンプレート利用可能時の XYZ/TRJ から対応する PDB の生成を切り替え。 |
|
YAML 設定¶
マージ順は defaults < config < 明示指定 CLI です。
YAML ルートはマッピングでなければなりません。受け付けるセクション:
geom–coord_type(デフォルト"cart")、freeze_atoms(1 始まりインデックス)。calc/mlmm– ML/MM calculator設定:input_pdb、real_parm7、model_pdb、model_charge、model_mult、バックエンド選択(backend)、UMA 制御(uma_model、uma_task_name、hessian_calc_mode)、デバイス選択、凍結原子。gs– Growing String 設定:max_nodes、climb、climb_rms、climb_fixed、reparam_every_full、reparam_check。opt– StringOptimizer 制御:max_cycles、print_every、dump、dump_restart、out_dir。lbfgs– HEI+/-1 精密化用の単一構造オプティマイザ制御:keep_last、beta、gamma_mult、max_step、control_step、double_damp、mu_reg、max_mu_reg_adaptions。bond– 結合変化検出:bond_factor、margin_fraction、delta_fraction。search– 再帰ロジック:max_depth、stitch_rmsd_thresh、bridge_rmsd_thresh、max_nodes_segment、max_nodes_bridge、kink_max_nodes、max_seq_kink、refine_mode。
注記¶
端点が 2 つだけで再帰的精密化が不要な場合は、path-opt がより簡単な選択です。