前言:相比besat1.x系列而言,beast2.x系列可以通过点击BEAUti里的“Manage Packages”菜单目录下载需要的包,笔者在使用过程中发现一些有趣的现象,记录在这里。
1.包的共用(windows系统)
笔者在beast2.4.8的BEAUti里下载一系列包后,后来打开beast2.4.6和beast2.4.7中的BEAUti时,发现会自动加载之前在beast2.4.8的BEAUti下载的包,原本以为每个beast版本的包需要单独下载一次,发现居然可以共用。<br /> 但是,笔者打开beast2.5.1和beast2.5.2里的BEAUti时,发现并没有自动加载之前在beast2.4.8的BEAUti下载的包,可能是2.4系列和2.5系列不能彼此共用这些包吧。至于Linux上是否存在包的共用问题,笔者还没测试。而之所以在windows上测试了这么多版本的beast,是在使用beast2.4.8进行某个分析时出现了点问题,后面会提到。<br /> 还有一点是beast2.4系列和2.5系列的“Manage Packages”菜单里能下载的包的版本也是有限制的,比如对于结构溯祖包mascot,beast2.4.7和beast2.4.8里只能下载mascot0.0.5
,而beast2.5.1和beast2.5.2可以下载当前最新的mascot1.0.2。
2.采用Mascot法结构溯祖,beast跑xml文件时出现的问题
笔者在windows系统上,通过beast2.4.8版本,下载mascot0.0.5包想采用Mascot法进行结构溯祖分析,在beauti里配置xml文件后,使用beast跑xml数据时,每次到某个地方运行代数就卡在那里基本不动了,其中一次截图如下:<br />![](https://cdn.nlark.com/yuque/0/2019/png/119869/1553261876878-cbfab235-46f9-49f7-99e1-f5ac133cf32b.png#align=left&display=inline&height=1023&originHeight=1023&originWidth=1052&size=141476&status=done&width=1052)<br /> 这一次是在第95000代的时候基本不动了,开始以为是自己电脑内存不够,于是在运行内存足够的服务器上使用beast2.4.8版本跑同样的xml数据,大概也是在这个代数的附近不动了,发现可能不是运行内存的原因。<br /> 于是,开始换上各种beast2.x版本跑xml文件数据(这也是前面提到的为什么会测试这么多beast2.x版本的原因),还是没有解决问题,和上图差不多,beast跑xml文件代数总是会卡在某个位置不继续往下跑。<br /> 到底问题出在哪里呢?<br /> 从上图来看,好像并没有明显的报错提示。<br /> 后来,笔者还是解决了这个问题,方法有点....意想不到。<br /> 因为笔者只打算使用beast2.4.8版本进行结构溯祖分析,所以笔者在BEAUti里的“Manage Packages”下只下载安装了BASTA、Mascot、MultiTypeTree和SCOTTI这4种不同方法进行结构溯祖的包,而其他包没有安装。<br /> 笔者在想,是不是Mascot这个包分析xml数据时还依赖于其他包呢?但是不知道具体是哪一个,于是把和结构溯祖无关的那些包也全部下载安装了,后来再用beast2.4.8里的beast跑xml文件进行Mascot法结构溯祖分析时,就没有遇到代数卡到某个位置不动的问题。
但是,人都有好奇心,笔者也是,之前到底是哪个包没装导致基于Mascot法beast跑xml文件产生了问题?<br /> 显然,beast2.4.8版本里的包笔者已经全装了,也懒得全部卸载来重新安装进行一一测试。<br /> 不过,后来笔者在使用beast2.5.2里的Mascot包进行结构溯祖分析时,本来想和之前一样,把里面的其他包也全装了,但是迫于网速的原因,只装了一部分,但是使用beast2.5.2版本里的beast跑xml文件进行Mascot法结构溯祖分析,发现能正常运行下去,代数并没有卡在某个位置。<br /> beast2.5.2里通过BEAUti安装的那一部分包如下:(划红线处)<br />![](https://cdn.nlark.com/yuque/0/2019/png/119869/1553263691179-d301d18d-045b-4f89-9729-a3bcbddef879.png#align=left&display=inline&height=805&originHeight=805&originWidth=1310&size=188524&status=done&width=1310)<br /> 当然,最后能解决Mascot法结构溯祖这个问题,已经达到了笔者的目的,至于具体是哪一个包的原因也没有必要深究。