bond-summary(構造間の結合変化)

bond-summary サブコマンドは、反応物(R)→ 生成物(P)や、R → 中間体 IM1 → IM2 → P のような連続する構造の間で、どの共有結合ができ、どれが切れたかを報告します。入力 N 個に対して N − 1 個の比較ブロック(A → B、B → C、…)を表示し、変化した結合ごとに前後の距離(Å)を示します。ファイルは書き出しません。


主な用途

  • IRC 端点の確認: 固有反応座標(IRC)の両端が狙った結合だけ違うかを確かめる

  • 多段機構のスクリーニング: 中間体の列で、各段に変わる結合を一覧する

  • ワークフローの結果の検算: all が segments/seg_NN/ に書き出した R・遷移状態(TS)・P を手で比べる


基本的な実行例

1. 2 つの構造を比べる

反応物と生成物を比べます。ファイル名は自分の構造に置き換えてください。

mlmm bond-summary -i reactant.xyz product.xyz

Bond formed (k): と Bond broken (k): の下に結合が並びます。Bond formed: None はできた結合が無いという意味です。

============================================================
  reactant.xyz  →  product.xyz
============================================================
Bond formed (2):
  - O14-H106 : 1.502 Å --> 1.011 Å
  - P95-O107 : 3.477 Å --> 1.523 Å
Bond broken (2):
  - P95-O97 : 1.585 Å --> 3.270 Å
  - H106-O107 : 1.034 Å --> 1.673 Å

2. 多段の構造列

4 つの構造から、R → IM1、IM1 → IM2、IM2 → P の 3 ブロックが出ます。

mlmm bond-summary -i reactant.xyz im1.xyz im2.xyz product.xyz

処理の仕組みと計算仕様

  1. 構造の読み込み: 渡した順にファイルを読みます。XYZ・PDB・GJF を拡張子で判別し、2 つ以上のファイルが必要です。

  2. 結合の判定: 2 つの原子の Cordero et al. (2008) の共有結合半径(H は 0.40 Å)の和に --bond-factor(デフォルト 1.20)を掛けた値を T とし、距離が 0.95 T 以下なら結合ありとします。

  3. 変化の数え方: 前の構造で結合なし(あり)、次の構造で結合あり(なし)で、距離の変化が 0.05 T 以上の組だけを、できた(切れた)結合として数えます。閾値をわずかにまたぐだけの変化は数えません。irc と all が報告する結合変化も同じ判定です。


主な出力ファイル

bond-summary はファイルを書き出しません。連続する組ごとのテキストブロックを、実行例 1 の形で標準出力に表示します。原子は元素と原子インデックス(デフォルトは 1 始まり)で示します。--json では代わりに JSON を標準出力に表示し、scientific_status(success・partial・failed)、execution_status、comparisons を持ちます。comparisons には組ごとに structure_a・structure_b、件数の bonds_formed・bonds_broken、原子インデックス・元素・前後の距離を並べた formed・broken が入ります。保存したいときは標準出力をリダイレクトしてください。


主な CLI オプション

オプション

引数の型

デフォルト

説明

-i, --input

パス

(必須)

順に並べた 2 つ以上の構造。1 つの -i の後に並べる(-i を繰り返してもよい)

--bond-factor

浮動小数点数

1.20

共有結合半径の和に掛ける係数

--json/--no-json

フラグ

False

テキストの代わりに JSON を標準出力に表示

--one-based/--zero-based

フラグ

--one-based

報告での原子の番号付け

全オプションは 自動生成のオプションの一覧(英語のみ) を参照してください。


使用上の注意点

  • 同じ原子が同じ順に並ぶこと: すべての構造で、原子の種類と並びが同じである必要があります。違う組では、標準エラーに ERROR: Atom types and ordering must be identical. が出ます。入力 / 抽出の問題 を参照してください。

  • 境目の結合: 2.0–2.4 Å の金属配位のような長めの接触も数えたいときは、--bond-factor を大きくしてください(例: 1.30)。

  • 比較できなかった組: 1 組でも比較できないと終了コード 1 で終わり、JSON の scientific_status は partial か failed になります。

  • 終了コード: 終了コードを参照してください。


関連ドキュメント

  • irc — 同じ判定で端点を確かめる IRC

  • all — 各段の結合変化も報告する全工程のワークフロー

  • trj2fig — 軌跡のエネルギープロファイルの図

  • トラブルシューティング — 実行に失敗したときの対処