實戰 用BEAST構建帶分子鐘的皿蛛分子系統發育樹

2021-07-09 19:00:44 字數 2391 閱讀 6715

一、取樣:以wang et.al,2015中l148_r樹的taxa為基礎,去除重複的taxa,最終得到122個taxa。dna序列資料l122.nex, 起始樹為ml法推斷出的besttree。

二、生成xml檔案

a. 開啟beauti,將dna序列資料和起始樹匯入程式,按以下步驟生成跑beast所需的xml檔案。。

(1)定義tmrca,共4個。

outgroup(2taxa,2種派模蛛,非強制單系)

linyphiidae(120taxa,所有傳統分類中定義的皿蛛科物種,非強制單系)。

linyphiidae(117taxa,except stemonyphantes亞科的3個taxa, 強制單系,用於設定化石矯正點)

orsonwelles(2taxa, include orsonwelles屬兩種,強制單系,用於設定地質矯正點?)

(2)核苷酸分子替換模型。site model:gtr。事先使用jmodeltest等軟體對該最適模型及其引數進行判定。此部分請參考高芳鑾的博文

(3) 分子鐘模型clock models。 將molecular clock model選為「relaxed clock:uncorrelated lognormal」, estimate不選擇。

(4)設定priors。選擇tree prior為speciation:birth-death model。

(5)   設定prior。

在tmrca(linyphiinae)中選擇lognormal,引數為0,2,125(參考dimitrov,2012)。

在tmrca(osonwelles)中選擇lognormal,引數為0,0.001,2.7。

(6)設定起始樹。

在beast2中,無法從beauti的gui介面設定起始樹。唯一的做法是生成xml檔案後,手工修改**,將預設使用隨機樹做起始樹的**改為如下格式

yournewick;

需要注意的是,beast2官方教程在這一部分的**是錯的,我試了無數次都不行。只有這樣寫才能執行正常。在引入自定義的starting tree後,tmrca的設定便有了限制,tmrca的taxa分組不能和starting tree拓撲結構衝突,否則在beast的時候會報錯。

(7)operators。如果你僅僅希望用beast2推算分化時間,樹拓撲要保持與ml分析的最優樹完全一致,在這部分你要將xml檔案**中部分subtree slide,narrow exchange,wide exchange, wilson balding四行**全部刪掉,以保證在整個mcmc過程中樹拓撲保持一致,只是支長有變化。

(8)設定mcmc。鏈長設為40000000,echo設為1000,log_every設為1000(一般來講,tracer中顯示所有引數的ess值均大於200表示beast分析結果可信,需要根據此引數確定最適合鏈長)。

(6)生成xml文件。

b.執行beast。在beast中開啟xml檔案,執行後生成字尾為trees和log的檔案。

4. 在/beast/bin目錄下找到beast程式,執行beast。彈出的對話方塊開啟編輯好的xml檔案,就會自動執行beast,結果trees和log檔案儲存在bin目錄下。需要說明一點,如果在windowspc下編輯生成的xml檔案,在centos平台下不能直接使用,由於eof在unix和dos/windows下編碼不同,直接使用會報錯。解決方法是在notepad++的edit選單下將檔案的eof模式設定為unix格式,儲存後將其上傳至伺服器,再用beast開啟就ok了。

c. 執行tracer分析結果。用tracer開啟log檔案分析。這個過程可以看出跑樹結果的好壞。

(1)tracer顯示了beast後得到的各種引數,包括likelihood,meanrate(平均進化速率),coefficientofvariation(每一分支分子進化的變異係數,表示分子變化的速率在不同分支上是否等速),root和每乙個tmrca分化時間的估計值等等。同時選中root.height和tmrca,可以通過箱線圖和邊界密度圖顯示預設的化石校正點估計值是否一致。

d. 執行treeannotator得到合議樹。用treeannotator開啟trees檔案,設定引數得到合議樹。特別要指出的是,treeannotator中output file檔案預設是讓選擇,其實直接取乙個輸出的檔名點ok即可。需要注意的是,由於jvm有記憶體限制,對於超過10000棵樹需要和議時,不能直接執行treeannotator,而是進入beast的lib目錄,執行以下**啟動treeannotator。

**中的2048為jvm可呼叫記憶體的限值,運算量越大,這個值應調的越高。

合議樹第乙個引數設為4000(40000000代,每1000代生成1棵樹,共40000棵。取10%為4000).第二個引數改為0

e.最後用figtree開啟tree檔案,分析和議得到的dated phylogeny。 為了使結果更為直觀,可以在figtree中顯示tmrca中node的值及95%hpd

《機械人構建實戰》 導讀

機械人構建實戰 機械人是21世紀發展最為迅速 應用前景最為廣闊的科學技術領域之一。機械人技術綜合運用了基礎科學和應用工程技術的最新成果,是乙個國家科技發展水平和國民經濟現代化 資訊化的重要標誌,是世界強國重點發展的高技術之一。近年來,機械人技術走進了人們工作和生活的各個角落,工業機械人在智慧型製造和...

用CMake 構建Qt 專案

譯 用cmake構建qt專案 qtsdk中已經包含了qmake用於處理跨平台的編譯問題。然而,還存在其它編譯工具,比如autotools,scons和cmake.這些工具滿足不同的需求,比如外部依賴。當kde專案從使用qt3公升級到使用qt4時,整個專案將構建工具從autotools轉而使用cmak...

用CMake 構建Qt 專案

在本文中我們將只關注cmake本身,並且指出如何將它與qt結合起來。首先,我們看乙個簡單但典型的基於cmake的專案。從下面的列表可以看出,這個工程包括一些源 及文字檔案。ls cmakelists.txt hellowindow.cpp hellowindow.h main.cpp 最基本的,cm...