PyMOL の APBS Electrostatics プラグインで使われる実行ファイルのデフォルトパスを変更する
上の画像と動画はGFPの結晶構造(PDB: 1GFL)を PyMOL で表示したもの。青い所が正電荷、赤い所が負電荷を示している。
PDB の構造ファイルからタンパク質の電荷を計算するには、構造の表示に用いる PyMOL とは別に APBS と pdb2pqr をインストールしておく必要がある。APBSが実際に計算を行うプログラムで、pdb2pqr は PDB 形式の構造ファイルを補完して計算に用いる PQR ファイルを作製してくれる。PyMOL にはこれらを簡便に使うためのプラグインが最初からインストールされている。
APBS Electrostatics プラグインを使用するためには、APBS と pdb2pqr の存在するパスを指定する必要がある(下図)。このパスはプラグインのウィンドウを閉じるたびにリセットされてしまうので非常に手間がかかる。古いバージョンのAPBSプラグインの解説では環境変数(APBS_BINARY_DIR, APBS_PDB2PQR_DIR)を変更すればデフォルトのパスを指定できると書いてあるが、現行のバージョンでは不可能になっている。
直接 Python のプログラムを書き換えるとデフォルト値を変更できる。目的のファイルは Applications/PyMOL.app/Contents/share/pymol/data/startup/apbs_gui/__init__.py にある。
変更前
# executables
from distutils.spawn import find_executable
form.apbs_exe.setText(electrostatics.find_apbs_exe() or 'apbs')
form.pdb2pqr_exe.setText(find_executable('pdb2pqr') or
find_executable('share/pdb2pqr/pdb2pqr.py',
os.getenv('FREEMOL', '/usr')) or 'pdb2pqr')
APBS と pdb2pqr の実行ファイルを探している処理に任意のパスを追加すればデフォルト値を変更できる(下図)。
変更後(下線部を追加)
# executables
from distutils.spawn import find_executable
form.apbs_exe.setText(find_executable("/Applications/APBS.app/Contents/MacOS/apbs") or electrostatics.find_apbs_exe() or 'apbs')
form.pdb2pqr_exe.setText(find_executable('/Applications/pdb2pqr-osx-bin-1.9.0/pdb2pqr') or find_executable('pdb2pqr') or
find_executable('share/pdb2pqr/pdb2pqr.py',
os.getenv('FREEMOL', '/usr')) or 'pdb2pqr')
コメント
コメントを投稿