MrBayes の使い方

ローカルでMrBayes を使う

MrBayes の準備と解析

Kakusan4 で出力されたReuslt フォルダのBIC4 のベストモデルを確認する。

Kakusan4 で出力されたMrBayes フォルダのwhole_BIC4_nonpartitioned.nex をメモ帳で編集し、最後の行に以下を書き加える。

mcmc ngen = 2000000 printfreq = 2000 diagnfreq = 100000 samplefreq = 1000 nchains = 4 savebrlens = Yes;

End;

mcmc ngen = 2000000 は解析の結果によっては増やすことになる。。。

mb.3.2.7-win64.exe をKakusan4 のMrBayes フォルダにコピー。mb.3.2.7-win64.exe をクリックしてMrBayes を起動、以下のコマンドを入力

execute whole_BIC4_nonpartitioned.nex

enterキーを押すと解析が始まる。

Chain results (2000000 generations requested):


0 -- [-3962.654] (-3928.624) (-3721.924) (-3710.587) * [-4180.031] (-3872.077) (-4254.824) (-4141.708)

2000 -- [-2417.205] (-2415.987) (-2428.468) (-2419.484) * (-2440.907) [-2415.070] (-2423.250) (-2413.217) -- 0:49:57

4000 -- (-2405.725) [-2416.481] (-2411.710) (-2424.345) * [-2403.578] (-2413.967) (-2427.748) (-2418.517) -- 0:49:54


----------------------中略-------------------------------


96000 -- [-2413.387] (-2422.563) (-2414.793) (-2411.040) * [-2402.141] (-2404.401) (-2422.777) (-2409.631) -- 0:51:34

98000 -- (-2407.339) (-2434.631) [-2402.096] (-2427.852) * (-2412.710) (-2418.006) [-2405.690] (-2408.405) -- 0:51:45

100000 -- [-2407.835] (-2411.614) (-2412.108) (-2428.295) * (-2416.586) [-2407.831] (-2410.734) (-2406.945) -- 0:51:37


Average standard deviation of split frequencies: 0.044526


102000 -- (-2407.994) (-2410.323) (-2417.091) [-2412.830] * [-2408.500] (-2403.827) (-2409.600) (-2413.483) -- 0:51:47

104000 -- [-2406.072] (-2401.551) (-2405.150) (-2421.071) * (-2408.405) (-2421.201) (-2406.587) [-2415.619] -- 0:51:39

mcmc ngen = 2000000 を指定したので2000000までmcmc が進められる。

解析過程はsamplefreq = 1000 を指定したので1000 刻みで更新される。

終了予定時間は右端に表示される。


mcmc ngen = 2000000 に達すると以下の質問がでる。

1992000 -- (-2422.137) [-2407.442] (-2428.326) (-2413.212) * (-2419.133) (-2410.912) (-2410.589) [-2402.693] -- 0:00:12

1994000 -- (-2414.096) (-2412.357) (-2411.500) [-2402.946] * (-2409.459) (-2405.914) [-2409.724] (-2408.068) -- 0:00:09

1996000 -- (-2408.251) (-2414.390) [-2407.238] (-2410.381) * [-2407.191] (-2399.960) (-2405.881) (-2400.206) -- 0:00:06

1998000 -- [-2395.955] (-2413.274) (-2410.177) (-2420.955) * [-2412.061] (-2424.966) (-2400.621) (-2413.714) -- 0:00:03

2000000 -- (-2424.337) (-2419.168) (-2407.390) [-2399.469] * (-2412.204) [-2413.824] (-2415.470) (-2417.089) -- 0:00:00


Average standard deviation of split frequencies: 0.005767

Continue with analysis? (yes/no): n

Average standard deviation of split frequencies (ASDSF) が0.01 以下になっていれば解析を終了して問題ない。

no かn を入力する。

Burnin の設定

上記が終了後、以下のコマンドをそれぞれ入力する。

sumt burnin=@; @は世代数/4/1000、1000000なら250、2000000なら500

sump burnin=@ ; @は世代数/4/1000、1000000なら250、2000000なら500

出力されたファイルをTracer で収束を確認後、FigTree などで枝を確認する。


CIPRES でMrBayes を使う

解析画面

目的ごとにフォルダを作成できる。必要なファイルは自身のパソコンから随時アップロードする。

以下にMrBayes を使った解析の例を示す。

Data サブフォルダにKakusan4 で推定した最適モデルをアップロード

Tasks へ移動する


基本的にはファイルをアップロードして操作する。

CIPRES での解析

解析の事前準備

解析を始める場合はCreate New Task を選択


Input Select Input Data を選択するとData フォルダが表示される。先ほどアップロードしたnexus ファイルを選択する。

nexus には事前に以下を入力しておくと良い (@ は解析に合わせて変更する)。


mcmc ngen = @ printfreq = @ diagnfreq = @ samplefreq = @ nchains = 4 savebrlens = Yes;

End;

以下入力例

mcmc ngen = 2000000 printfreq = 2000 diagnfreq = 100000 samplefreq = 1000 nchains = 4 savebrlens = Yes;

End;

CIPRES Gateway を使った場合、MCMC を追加することはできない

※ 以下のコマンドを加えると自動で0.01 以下になったときに計算は終了するが世代が中途半端になるのでおすすめしない

stoprule=yes stopval=0.01


Select Tool ではMrBayes on XSEDE (3.2.6) 選択 (ちなみにCipres Gateway ではデフォルトでmulti core に対応したMrBayes が使える)

解析の設定

  • nexus にあるモデルで計算するため、My Data Contains a MrBayes Data Block (Check This or MrBayes Block entries will be overwritten!!!) のボックスにチェックを入れる

  • Run BEAGLE はOFF を推奨(もしBEAGLE を使うと、計算は10 % ほど早くなるがハングることもある)

  • Maximum Hours to Run は解析の制限時間なので、設定時間をオーバーすると解析は強制的にストップする。

初期設定では0.5時間なので30分で強制終了されるので、適切な時間を設定する必要がある。一度解析を走らせてstdout.txt を確認することで時間の目安がわかる。

Save Parameters を選択後、Save and Run Task を選択する。

解析の進行はIntermediate Results のList のstdout.txt から確認できる。

Mrbayes の設定画面、Kakusan4 を使用していればMy Data Contains a MrBayes Data Block に☑を入れるだけで解析ができる

結果の確認...の前に

結果の確認は自前のパソコンで行う。このときMrBayes から以下を抜き出したzip ファイル (MrBayes_Corefile) を作っておくと解析が楽になる。

以下のファイルをまとめたzip ファイルを作る。私はMrBayes_result.zip という名前で保存管理している。


追記 (2018/05/16)

64bit 環境であればhmsbeagle64.dll, hmsbeagle-cpu64-21.dll, hmsbeagle-cpu-sse64-21.dll, hmsbeagle-cuda64-21.dll, hmsbeagle-opencl64-21.dll, mrbayes_x64.exe があればMrBayes は動く (32bit はその逆)。CIPRES を使っているならば、これらのファイルをzip なりで圧縮保存しておくとsmut, smup が容易にできる。

出力ファイルをMrBayesで開く

Cipres で出力されたファイルをダウンロードし、解凍する。

解凍されたフォルダにMrBayes_Corefile を解凍し、MrBayes を起動し、以下のコマンドを入力

execute ;入力後にコンソール画面へinfile.nex をドラッグアンドドロップ


enterキーを押すと解析が進む。

execute の後にinfile.nex をドラッグアンドドロップすることでファイルパスが自動で入力される。

出力ファイルをMrBayesで開いたあとに...

nexus 内の解析が終了後に続けてmcmc block が読み込まれ、解析を上書きするか質問されるので 、以下のコマンドを入力する。

no

これにより、MrBayes でinfile.nex が開かれた状態になる

mcmc analysis を上書きするかの質問は "no" で対応する。これでMrBayes でinfile.nex を開いた状態になる。

Burnin の設定

上記が終了後、以下のコマンドをそれぞれ入力する。

sumt burnin=@; @は世代数/4/1000、1000000なら250となる

sump burnin=@ ; @は世代数/4/1000、1000000なら250となる

出力されたファイルをTracer で収束を確認後、FigTree などで枝を確認する。