使用RAxML做Maximum likelihood 進化樹


沒有授權禁止轉載

話說ML進化樹如果要進行高bootstrap值的驗證的話對於計算能力要求是很高的。不並行做基本不可能。

所以下了一個RAxML,在linux下有好幾種編譯方式,看了一下手上的機器支持AVX指令集,所以選擇AVX-MPI方式吧。

先安裝openmpi,照網上教程編譯就行,就是略慢。

但是安裝完mpicc之后,再去編譯RAxML時發現gcc版本不夠高,無法支持AVX,雖然不知道AVX能帶來多大的速度提升,但是出於學習考慮還是嘗試升級一下gcc吧

下了一個gcc4.8.1,注意在編譯之前要下載一下依賴庫./contrib/download_prerequisites,然后編譯安裝即可。

 

mpi的運行方式就是 mpirun -np N program

N是同時開的進程數,program是軟件加參數(和單進程跑一模一樣就行)

 

序列處理之前用TrimAI截短一下,我的序列差異很大,所以手工截太麻煩了。

RAxML對序列的要求比較變態。。phy格式序列中的'.'表示和第一條序列相同的表示法不被識別。所以自己寫了個腳本把格式轉回來了。

注意跑的時候要把 -k選項打開才會有branch length,不然會branch都等長,略丑。

raxmlHPC-MPI-AVX -x 12345 -p 12345 -# 1000 -m PROTGAMMAWAGF -s ../LysM_t -f d -k -n Tf4

 

跑完會出來一個RAxml_bootstrap.Tf4的tree list,這個是重復1000次的進化樹。需要在phylip下的consensus工具轉為單個樹。

consensus下選擇Majority Rule (extended)模型了,產生outtree和outfile,outtree可改為.nwk文件直接MEGA編輯。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM