freq¶
概要¶
概要: PHVA 対応の ML/MM 振動解析と熱化学(ZPE、Gibbs エネルギー等)を計算します。VRAM に余裕がある場合は
--hessian-calc-mode Analyticalでヘシアン評価を高速化できます。虚振動数は負の値で表示されます。
mlmm freq は ML/MM 計算機(mlmm.mlmm_calc.mlmm)による振動解析を実行し、PHVA による凍結原子に対応します。基準振動アニメーションを _trj.xyz と .pdb(酵素の原子順序にマップバック)としてエクスポートし、オプションの thermoanalysis パッケージがインストールされている場合は Gaussian スタイルの熱化学サマリーを出力します。
最小例¶
mlmm freq -i pocket.pdb --parm real.parm7 --model-pdb ml_region.pdb \
-q 0 -m 1 --out-dir ./result_freq
出力の見方¶
result_freq/frequencies_cm-1.txtresult_freq/mode_*_trj.xyzresult_freq/mode_*.pdb(PDB 入力の場合)
よくある例¶
まずは出力モード数を絞って確認する。
mlmm freq -i pocket.pdb --parm real.parm7 --model-pdb ml_region.pdb \
-q 0 -m 1 --max-write 6 --out-dir ./result_freq_quick
凍結原子を指定した PHVA と熱化学ダンプを実行する。
mlmm freq -i pocket.pdb --parm real.parm7 --model-pdb ml_region.pdb \
-q 0 -m 1 --freeze-atoms "1,3,5,7" --dump --out-dir ./result_freq_phva
VRAM に余裕があるノードで解析的ヘシアンを使う。
mlmm freq -i pocket.pdb --parm real.parm7 --model-pdb ml_region.pdb \
-q 0 -m 1 --hessian-calc-mode Analytical --out-dir ./result_freq_analytical
ワークフロー¶
ML/MM 計算機の構築 – ML 領域は
--model-pdbで提供され、Amber パラメータは--parmから読み取られます。--hessian-calc-modeは解析的または有限差分のヘシアンを選択します。計算機は完全な 3N x 3N ヘシアンまたはアクティブ自由度のサブブロックを返す場合があります。VRAM に余裕がある場合は
--hessian-calc-modeをAnalyticalに設定することを強く推奨します。
PHVA と TR 射影 – 凍結原子がある場合、固有解析はアクティブ部分空間内で行われ、並進/回転モードがそこに射影されます。3N x 3N とアクティブブロックの両方のヘシアンが受け付けられ、振動数は cm^-1 で報告されます(負の値 = 虚数)。
アクティブ自由度モード –
--active-dof-modeは振動解析に含まれる原子を制御します:all(全原子)、ml-only(ML 層, B=0)、partial(ML + Hessian 対象 MM、デフォルト)、unfrozen(非凍結層、通常 B=0/10)。モードエクスポート –
--max-writeはアニメーション化するモード数を制限します。モードは値(または--sort absで絶対値)でソートされます。エクスポートされた各モードは_trj.xyz(XYZ ライク軌跡)と.pdbファイル(酵素の原子順序にマップバックされた PDB アニメーション)を書き出します。正弦波アニメーション振幅(--amplitude-ang)とフレーム数(--n-frames)は YAML デフォルトに合致します。熱化学 –
thermoanalysisがインストールされている場合、PHVA 振動数を使用した QRRHO ライクなサマリー(EE、ZPE、E/H/G 補正、熱容量、エントロピー)が出力されます。CLI の圧力(atm)は内部で Pa に変換されます。--dumpの場合、thermoanalysis.yamlスナップショットも書き出されます。デバイス選択 –
ml_device="auto"は CUDA が利用可能な場合にトリガーし、それ以外は CPU。内部の TR 射影/モード組み立ては転送を抑えるため同じデバイスで実行されます。終了動作 – キーボード割り込みはコード 130 で終了。その他の失敗はトレースバックを出力してコード 1 で終了。
CLIオプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
ML バックエンド: |
|
|
xTB 点電荷埋め込み補正の有効化。MM 環境から ML 領域への静電的影響を考慮。 |
|
|
xTB 埋め込み用 MM 原子のカットオフ半径(Å)。 |
|
|
完全酵素 PDB(リンク原子なし)。 |
必須 |
|
完全酵素の Amber parm7 トポロジー。 |
必須 |
|
ML 領域を定義する PDB。 |
None |
|
明示的な ML 領域原子インデックス( |
None |
|
|
|
|
入力 PDB の B 因子から ML/MM レイヤーを自動検出。 |
|
|
ML 領域の電荷。 |
None( |
|
残基ごとの電荷マッピング(例: |
None |
|
スピン多重度 (2S+1)。 |
|
|
1 始まりカンマ区切りの凍結原子インデックス。 |
None |
|
Hessian 対象 MM 原子のカットオフ距離。 |
None |
|
Movable-MM レイヤーのカットオフ距離。 |
None |
|
ヘシアンモード( |
|
|
エクスポートするモード数。 |
|
|
モードアニメーション振幅 (Å)。 |
|
|
モードアニメーションのフレーム数。 |
|
|
モードのソート方法: |
|
|
熱化学温度 (K)。 |
|
|
熱化学圧力 (atm)。 |
|
|
|
|
|
PDB テンプレートが利用可能な場合の XYZ/TRJ から PDB コンパニオンの切り替え。 |
|
|
出力ディレクトリ。 |
|
|
アクティブ自由度選択: |
|
|
ヘシアン組み立て/対角化のデバイス: |
|
|
非 PDB 入力用の参照 PDB トポロジー。 |
None |
|
明示 CLI 適用前に読み込むベース YAML。 |
None |
|
解決済み YAML レイヤー/設定を表示して続行。 |
|
|
実行せずに検証と実行計画のみ表示。 |
|
出力¶
out_dir/ (デフォルト: ./result_freq/)
├─ mode_XXXX_±freqcm-1_trj.xyz # モードごとの正弦波アニメーション(XYZ ライク軌跡)
├─ mode_XXXX_±freqcm-1.pdb # 酵素原子順序にマップバックされた PDB アニメーション
├─ frequencies_cm-1.txt # 選択されたソート順での全振動数リスト
└─ thermoanalysis.yaml # thermoanalysis がインポート可能で --dump が True の場合
コンソールには解決済みの
geom、calc、freq、熱化学設定をまとめたブロックが出力されます。
YAML設定¶
マージ順 デフォルト < config < 明示CLI < override でマッピングを提供します。
共有セクションは YAML リファレンス を再利用します。
熱化学制御用の追加 thermo セクションがサポートされます。
geom:
coord_type: cart # 座標タイプ: デカルト vs dlc 内部座標
freeze_atoms: [] # 0 始まり凍結原子(CLI/リンク検出とマージ)
calc:
charge: 0 # 総電荷(CLI 上書き)
spin: 1 # スピン多重度 2S+1
mlmm:
real_parm7: real.parm7 # Amber parm7 トポロジー
model_pdb: ml_region.pdb # ML 領域定義
backend: uma # ML バックエンド (uma/orb/mace/aimnet2)
embedcharge: false # xTB 点電荷埋め込み補正
uma_model: uma-s-1p1 # uma-s-1p1 | uma-m-1p1
uma_task_name: omol # UMA タスク名 (backend=uma 時)
ml_device: auto # ML デバイス選択
ml_hessian_mode: Analytical # ヘシアンモード選択
out_hess_torch: true # torch 形式ヘシアンを要求
mm_fd: true # MM 有限差分トグル
return_partial_hessian: true # 部分ヘシアンを許可(PHVA デフォルト)
freq:
amplitude_ang: 0.8 # モードの変位振幅 (Å)
n_frames: 20 # モードごとのフレーム数
max_write: 10 # 書き出す最大モード数
sort: value # ソート順: value vs abs
thermo:
temperature: 298.15 # 熱化学温度 (K)
pressure_atm: 1.0 # 熱化学圧力 (atm)
dump: false # true の場合 thermoanalysis.yaml を書き出し
関連項目¶
典型エラー別レシピ – 症状起点の切り分け
トラブルシューティング – 詳細なトラブルシューティングガイド
tsopt – TS 候補の最適化(freq/IRC で検証; 期待: 1 つの虚数振動数)
opt – 構造最適化(多くの場合 freq の前に実行)
dft – より高レベルのエネルギー精密化のための DFT 一点計算
all –
--thermo付きend-to-endワークフローYAML リファレンス –
freqとthermoの完全な設定オプション用語集 – ZPE、Gibbs エネルギー、エンタルピー、エントロピーの定義