add-elem-info¶
PDB ファイルの ATOM/HETATM レコードの元素記号カラム(77–78)を修復します。Bio.PDB.PDBParser で再パースし、各原子の元素を原子名と残基の情報から推定して、Bio.PDB.PDBIO で再シリアライズします(修復対象は元素記号カラム 77–78)。PDB の元素カラム(77–78)が欠落・誤記で、extract / opt / tsopt などの下流サブコマンドが入力を受け付けないときに使用します。all は事前チェックで add-elem-info を自動的に呼び出すため、手動実行は単独サブコマンドの前処理用です。
実行例¶
# 元素カラムを補完して "<input>_add_elem.pdb" に出力
pdb2reaction add-elem-info -i 1abc.pdb
# 出力ファイルを指定
pdb2reaction add-elem-info -i 1abc.pdb -o 1abc_fixed.pdb
# 入力ファイルをその場で上書き
pdb2reaction add-elem-info -i 1abc.pdb --overwrite
処理の流れ¶
Bio.PDB.PDBParserで入力を解析し、extract.pyで使用される残基定義(AMINO_ACIDS、WATER_RES、ION)と同じ定義に従って分類する。各原子について、原子名と残基名を組み合わせて元素を推定:
ION辞書に登録された単原子イオン残基は対応する元素を使用タンパク質/核酸/水は H/D や Se の特例を扱い、C/N/O/P/S は先頭文字で判定(炭素側鎖ラベルは C)
その他のリガンドは原子名の接頭辞で判定し、ハロゲン認識や重水素→水素の正規化にフォールバック
PDBIOで書き出し:
デフォルト出力:
<input>_add_elem.pdb(-o/--out省略かつ--overwriteがTrueでない場合)-o/--out: 指定パスへ書き込み(この場合--overwriteは無視)--overwrite(-o/--outなし): 入力パスを上書き
割り当て/再割り当て数、元素別合計、未解決原子のリスト(最大 50 件)を要約表示。
出力¶
元素記号が補完/修正された PDB ファイル:
デフォルト:
<input>_add_elem.pdb(-o/--out省略かつ--overwriteがTrueでない場合)-o/--out指定時:OUTPUT.pdb(--overwriteの値に関わらず)--overwriteを-o/--outなしで指定:INPUT.pdbをその場で上書きコンソールに、処理/割り当て原子数、元素別カウント、未解決原子(最大 50 件)を出力
CLI オプション¶
オプション |
説明 |
デフォルト |
|---|---|---|
|
入力 PDB ファイル |
必須 |
|
出力パス。指定した場合 |
None → |
|
|
|
完全なフラグ一覧は生成された command reference を参照してください。
注記¶
構造は
Bio.PDB.PDBIOで再シリアライズされます(列のインプレース編集ではありません)。ATOM/HETATM の座標・占有率・B 因子・altloc・挿入コードはそのまま保持されますが、非 ATOM レコード(HEADER/REMARK/CONECT/ANISOU)とレガシーの電荷列(79–80)は保持されません。すべてのモデル/チェーン/残基にわたる ATOM/HETATM レコードを処理します。
重水素は水素に正規化され、セレン(
SE*)やハロゲンは自動認識されます。すでに有効な元素記号を持つ PDB に対して再実行しても no-op(原子はそのまま通過)です。
pdb2reaction allを実行すると、add-elem-infoは 元素記号が欠落している PDB 入力に対してのみ、プリフライトステップとして自動的に呼び出されます(その後fix-altloc、続いて活性部位モデルの抽出が行われます)。元素記号がすでに補完されている入力はそのまま通過します。そのためpdb2reaction allの前にadd-elem-infoを手動で実行する必要はありません。手動実行が必要となるのは、元素カラムが欠落した PDB に対してextractやoptなどの個別サブコマンドを直接使用する場合だけです。詳細は all を参照してください。
関連項目¶
典型エラー別レシピ – 症状起点の切り分け
トラブルシューティング – 詳細な対処ガイド
extract – 元素カラム修正後の活性部位モデル抽出
all – 一気通貫ワークフローの入口