mlmm-toolkit ドキュメント¶
バージョン: v0.2.4
mlmm-toolkit は、機械学習原子間ポテンシャル(Machine Learning Interatomic Potential)と分子力学(Molecular Mechanics)を ONIOM 的に結合した ML/MM 法 を用いて、PDB 構造から酵素反応経路を自動モデリングする Python 製 CLI ツールキットです。
目的別クイックスタート¶
ユースケース |
推奨コマンド |
ガイド |
|---|---|---|
最初の 1 回を実行(end-to-end) |
|
|
単一構造スキャン( |
|
|
TS 検証( |
|
|
PDB から反応経路探索を一通り実行 |
|
|
現在の設定を確認 |
|
|
タンパク質-リガンド複合体からQM領域を抽出 |
|
|
MM トポロジー(parm7/rst7)を構築 |
|
|
ML/MM 3層領域を定義 |
|
|
単一構造を最適化 |
|
|
遷移状態を探索・最適化 |
|
|
最小エネルギー経路を探索 |
|
|
遷移状態からIRCを実行 |
|
|
エネルギープロファイルを可視化 |
|
|
Gaussian ONIOM / ORCA QM/MM 入力を生成 |
|
|
ONIOM 入力から XYZ/層付き PDB を再構築 |
|
|
数値から状態エネルギーダイアグラムを描画 |
|
|
チュートリアルに従う |
– |
|
症状からエラー対処を探す |
– |
|
全体像(概念・用語)の把握 |
– |
|
よくあるエラーの解決 |
– |
|
略語や用語を調べる |
– |
ドキュメントガイド¶
トピック |
ページ |
|---|---|
インストールと初回実行 |
|
主要概念とワークフロー概要 |
|
症状起点の切り分け |
|
よくあるエラーと対処 |
|
CLI 規約と入力要件 |
CLI サブコマンド¶
メインワークフロー¶
構造準備¶
サブコマンド |
説明 |
|---|---|
タンパク質-リガンド複合体から活性部位ポケット(クラスターモデル)を抽出 |
|
PDB の元素カラム(77-78)を修復 |
|
AmberTools (tleap + GAFF2) を使用して Amber トポロジー(parm7/rst7)を構築 |
|
ML 領域からの距離に基づき 3 層 ML/MM 領域を定義し、B-factor でエンコード |
構造最適化¶
経路探索・最適化¶
サブコマンド |
説明 |
|---|---|
GSM または DMF による MEP 最適化 |
|
自動精密化を伴う再帰的 MEP 探索 |
スキャン¶
解析・後処理¶
サブコマンド |
説明 |
|---|---|
固有反応座標(IRC)計算 |
|
振動解析と熱化学 |
|
DFT 一点計算(GPU4PySCF / PySCF) |
|
XYZ 軌跡からエネルギープロファイルをプロット |
|
数値入力からエネルギーダイアグラムを作成 |
ユーティリティ¶
サブコマンド |
説明 |
|---|---|
PDB の代替コンフォメーション(altloc)を解決 |
|
HPC 環境での GPU デバイス情報の確認 |
エクスポート¶
サブコマンド |
説明 |
|---|---|
Amber parm7 から Gaussian ONIOM / ORCA QM/MM 入力を生成(`–mode g16 |
|
Gaussian/ORCA ONIOM 入力を読み込み、XYZ と層付き PDB を再構築 |
設定・リファレンス¶
トピック |
ページ |
|---|---|
CLI コマンドリファレンス |
|
YAML スキーマ |
|
YAML 設定オプション |
|
ML/MM 計算機アーキテクチャ |
|
用語集 |
システム要件¶
ハードウェア¶
OS: Linux(Ubuntu 20.04+、CentOS 8+ で動作確認)
GPU: CUDA 12.x 互換
VRAM: 最小 8 GB(1000 原子以上には 16 GB 以上推奨)
RAM: 16 GB 以上推奨
ソフトウェア¶
Python 3.11
CUDA サポート付き PyTorch
CUDA 12.x ツールキット
AmberTools(
mm-parmサブコマンドに必要)
クイック例¶
基本的な ML/MM MEP 探索¶
mlmm -i R.pdb P.pdb -c 'SAM,GPP' -l 'SAM:1,GPP:-3'
TS 最適化を含む完全ワークフロー¶
mlmm -i R.pdb P.pdb -c 'SAM,GPP' -l 'SAM:1,GPP:-3' \
--tsopt --thermo --dft
単一構造スキャンモード¶
mlmm scan -i pocket.pdb --parm real.parm7 --model-pdb ml_region.pdb \
-q 0 -s scan.yaml --print-parsed
TS 最適化のみ¶
mlmm -i TS_candidate.pdb -c 'SAM,GPP' -l 'SAM:1,GPP:-3' \
--tsopt
重要な概念¶
ML/MM 3 層システム¶
mlmm は PDB の B-factor を用いた 3 層分割スキームを使用します:
ML 領域(B=0.0): UMA 機械学習ポテンシャルで計算
Movable-MM(B=10.0): 最適化時に移動可能な MM 原子
Frozen(B=20.0): 座標固定の MM 原子
Hessian 計算に含める MM 原子は、B-factor 専用層ではなく hess_cutoff や hess_mm_atoms で制御します。
電荷とスピン¶
未知残基の電荷を指定するには
--ligand-chargeを使用:'SAM:1,GPP:-3'ML 領域の総電荷を上書きするには
-q/--chargeを使用スピン多重度は
-m/--multiplicity(デフォルト: 1)で設定
ブール値オプション¶
ブール値 CLI オプションはトグル形式(--flag / --no-flag)を使用します:
--tsopt --thermo --no-dft
YAML 設定¶
すべてのオプションについては YAML リファレンス を参照してください。
出力構造¶
典型的な mlmm all 実行の出力:
result_all/
├── ml_region.pdb # ML 領域定義
├── summary.log # 人間が読めるサマリー
├── summary.yaml # 機械可読サマリー
├── pockets/ # 抽出されたクラスターモデル
├── mm_parm/ # AMBER トポロジーファイル
├── scan/ # (オプション)スキャン結果
├── path_search/ # MEP 軌跡とダイアグラム
│ ├── mep_trj.xyz # MEP 軌跡
│ ├── mep.pdb # PDB 形式の MEP
│ └── seg_*/ # セグメントごとの詳細
└── path_search/post_seg_*/ # 後処理出力
├── tsopt/ # TS 最適化結果
├── irc/ # IRC 軌跡
├── freq/ # 振動モード
└── dft/ # DFT 結果
引用¶
本ソフトウェアを研究に使用した場合は、以下を引用してください:
[1] Ohmura, T., Inoue, S., Terada, T. (2025). ML/MM toolkit – Towards Accelerated Mechanistic Investigation of Enzymatic Reactions. ChemRxiv. https://doi.org/10.26434/chemrxiv-2025-jft1k
ライセンス¶
mlmm-toolkit は GNU General Public License version 3 (GPL-3.0) の下で配布されています。
ヘルプ¶
# 一般的なヘルプ
mlmm --help
# コマンドのヘルプ
mlmm <command> --help
Note: 本ドキュメントは現在整備中のため、一部未完成の箇所や今後変更される箇所がある可能性があります。