sp¶
pdb2reaction sp は、単一の構造に対して MLIP のエネルギー + 原子間力(オプションで Hessian)を評価します。用途は次のとおりです。
最適化の実行前に、構造のエネルギー / 原子間力 / Hessian を手早くサニティチェックする
バックエンド同士を直接比較する
optimizer のループ外で参照値 / Hessian を生成する
実行例¶
コマンド形式:
pdb2reaction sp -i FILE [-q INT | -l 'RES:Q,...'] [-m INT] [-b uma|orb|mace|aimnet2] [--hess] [options]
エネルギー + 原子間力(UMA バックエンド、中性閉殻):
# energy + forces (UMA backend, neutral closed-shell)
pdb2reaction sp -i structure.pdb -q 0 -m 1
完全な Hessian も計算(すべての backend で既定は有限差分):
# also compute the full Hessian (FiniteDifference by default)
pdb2reaction sp -i structure.pdb -q 0 -m 1 --hess
出力¶
sp はデフォルトで出力を result_sp/ 以下に書き出します。計算成功後にエネルギーと |force|_max を stdout に出力し、forces.npy(--hess 指定時は hessian.npy も)を書き出します。
ファイル |
内容 |
書き出し |
|---|---|---|
stdout |
エネルギー(スカラー値)(a.u.) と最大力ノルム。 |
計算成功時 |
|
原子単位 (Hartree / Bohr) の |
計算成功時 |
|
質量重みなし Hessian (Hartree / Bohr²)。凍結原子が無ければ |
|
|
機械可読なエネルギー (a.u.)、バックエンド、電荷/スピン、npy 出力へのパス、経過時間 |
|
sp は人間可読な summary.log を書き出しません。
Hessian バックエンド¶
--hess を設定すると、--hessian-calc-mode が Hessian の計算方法を選択します。
すべての backend で既定は
FiniteDifferenceです。対応 backend の autograd 経路を使う場合は
--hessian-calc-mode Analyticalを明示します。
UMA、ORB、MACE、AIMNet2 はすべて解析 Hessian を実装しています。明示的に使う場合は --hessian-calc-mode Analytical、数値的なクロスチェックには FiniteDifference を指定します。UMA では workers > 1 と明示的な解析 Hessian を併用できずエラーになるため、workers = 1 または有限差分を使用してください。
CLI オプション¶
フラグの完全な一覧は自動生成された コマンドリファレンス にあります。下表では説明が必要なオプションを扱います。
フラグ |
デフォルト |
意味 |
|---|---|---|
|
— |
PDB / mmCIF / XYZ / GJF の構造ファイル(必須) |
|
— |
系の総電荷。残基情報を持つPDB/mmCIFでは |
|
— |
残基別の電荷マッピング(例: |
|
|
スピン多重度、2S+1(任意;省略時は 1。GJF はテンプレートから継承) |
|
|
MLIP バックエンドの選択 |
|
|
|
|
|
Hessian モードを選択( |
|
|
出力ディレクトリ |
|
backend依存 |
backendに渡す数値精度 |
|
— |
|
|
|
機械可読な |
|
off |
実効的なマージ済み設定を出力 / 実行せずに検証 |
完全な一覧(workers、溶媒補正など)を見るには pdb2reaction sp --help-advanced を実行してください。
注記¶
spはfreeze用CLI flagを持ちませんが、1-basedのYAMLgeom.freeze_atomsを反映します。凍結原子のforceはgeometry/backend契約により zero化され、--hessはデフォルトでactive partial-Hessian blockを書き出します。一点 DFT(gpu4pyscf / PySCF)のベンチマークには、代わりに
dftを使用してください。