各種プログラム使用方法 MLFSOM

MLFSOMのexample.comを試す  

プログラム順  

  1. PDB fileの準備
  2. anomalous_sfall.com

anomalous_sfall.com  

走らせるために必要なプログラム  

example.comを試す  

準備  

CCP4FIT2D、MAPMAN、GNUPLOTが必要になります。mlfsom.comからはfit2d、mapmanというコマンド名で実行されますのでこれらの名前でコマンドが実行できるようにしておきます。私はシンボリックリンクを張りました。

また、イメージファイルのヘッダのDATEパラメータが日本語になってしまうので環境変数LANGをunsetします。

% unsetenv LANG <-- cshの場合
% unset LANG    <-- shの場合

これをしておかないと回折イメージヘッダに日本語(2009年 2月 21日 土曜日 08:51:50 JST)が混入してしまい、imosflmではエラーが出ました(HEADDATEがおかしい、というような感じ)。

パッケージの展開  

インストーラなどはありません。development_snapshot.tar.gzを使います。今回は2009年1月5日版のものを取得しました。

% mkdir mlfsom-20090105
% cd mlfsom-20090105
% tar zxvf development_snapshot.tar.gz

これで必要なファイルがだーっと展開されます。

example.com  

2009年1月5日版のdevelopment_snapshot.tar.gzに含まれるスクリプトを試し中。多分example.comと同様の手順を行えばいいと思いますが*1、少し異なっていそうなのでメモ。解説は今のところ推測なので正確かどうかわかりません [huh]

とりあえずstep by stepで試してみました。

% cd mlfsom-20090105
% ./ano_sfall.com energy=12660 1H87.pdb                      <-- 不要な気もする
% ./ano_sfall.com energy=12660 refined.pdb 1.2A solvent_B=35 <-- Gdの異常分散が入った構造因子を作成
% mv ideal_ano.mtz pristine.mtz
% grep -v " GD " refined.pdb >! damaged.pdb                  <-- Gd原子を抜く
% ./ano_sfall.com energy=12660 damaged.pdb 1.2A solvent_B=35 <-- 異常分散なしの構造因子を作成
% mv ideal_ano.mtz decayed.mtz
% vi mlfsom.params                                           <-- パラメータファイルmlfsom.paramsを編集
% ./mlfsom.com frames=100                                    <-- 回折イメージを出力
mlfsom.paramsの編集
よーわからんので6行目のoutprefixを環境に合わせました。
 6 set outprefix    = /home/nobrin/xray/fakedata/run1/fake_1
こんな感じ。これだと/home/nobrin/xray/fakedata/run1/fake_1_###.imgで出力されます。あらかじめディレクトリを作っておかないと失敗するかもしれません。

mlfsom.comを実行すると計算が始まります。このステップで相当時間がかかりますので放置します(Corei7 2.93GHzで50分ぐらい)。それが終わるとイメージが書き出されますが、GNUPLOTがないと途中のプロットが行われないらしく、/tmp/nobrin/mlfsom_tempfileplotoutがない、と怒られます・・・が進んでいきます(失敗してる)。
失敗した場合は./mlfsom.com frames=100を実行し直せば計算ステップはスキップされるようです。
イメージの書き出しは1枚につきだいたい4分程度かかるようです。上記のスクリプト、全ての処理に6時間程度かかりました*2。分解能が1.2Åになっていますので、もう少し低くすればそこまで時間がかからないかもしれません。

*1 何をやってるかあまりよくわかってませんが・・・
*2 まあ、所詮awkスクリプトなので時間がかかるのは当然といえば当然なのですが