最大似然系统发育分析(PAML)

杨子恒

目录

介绍

PAML的当前版本可从其github网站获得:https://github.com/abacus-gene/paml.

PAML是用于DNA或使用最大似然的蛋白质序列。它由维护Ziheng Yang并在GNU GPL v3下分发。ANSI C源代码针对UNIX/Linux/Mac OSX发布,并提供了可执行文件适用于MS Windows。PAML不适合造树。它可以用来估计参数和检验假设以研究进化当您使用其他程序重建树时,如如PAUP*、PHYLIP、MOLPHY、PhyML、RaxML等。

本文档是关于下载和编译PAML以及获取起动。请参阅手册(pamlDOC.pdf文件)的有关运行包中程序的详细信息。

下载和设置PAML

PAML的当前版本可从其github站点获得:https://github.com/abacus-gene/paml.

PAML-X:PAML的GUI

Bo Xu编写了一个名为PAML-X的图形用户界面中国科学院动物研究所。这个是用Qt编写的,应该在Windows、Mac OSX和linux上运行,尽管OSX和linux的版本可能没有经过很好的测试。下载PAML和PAML-X。当您第一次运行PAML-X时指定PAML文件夹名称。下载链接如下所示。

使用pamlX1.3.1需要paml4.9或更高版本。

  源代码  pamlX1.3.1-src.tgz
  窗户  pamlX1.3.1-win32.tgz 
  Mac OSX  pamlX1.3.1-osx-x86_64.dmg型 
  Linux操作系统 

以下是为天真的用户编写的。如果你知道这样的事情文件夹、可执行文件和搜索路径,您不需要按照这里的说明操作。

用于Windows 9x/NT/2000/XP/Vista/7的PAML

请注意,PAML的最新版本现在可以在其github站点:https://github.com/abacus-gene/paml.以下注释是针对早期版本4.9j编写的。

下载并保存存档paml4.9j.tgz文件在本地磁盘上。(确保使用正确的文件保存文件名称。如果Internet Explorer将文件扩展名更改为.gz双击之前应将其改回.tgz).打开包装例如,使用Winzip将存档文件保存到文件夹中。记住的名字文件夹。Windows可执行文件位于paml4.9j/bin/中。我建议为本地程序创建一个文件夹并移动PAML那里有可执行文件。这里有一些注意事项。

设置本地程序的文件夹并更改搜索路径。您只需为您的用户帐户执行一次此操作。假设您的用户文件夹为C:\Users\Ziheng。[请将此替换为您自己的以下示例中的用户文件夹。]这是默认用户Vista或Windows 7上的文件夹。在Windows XP上很难理解,比如C:\Documents and Settings\Ziheng。使用Windows资源管理器在用户内部创建名为bin的文件夹文件夹,即C:\Users\Ziheng\bin。或者如果您是您的老板PC,您可能更喜欢C:\bin文件夹。无论如何,这是用于保存可执行程序。

接下来,我们将把这个文件夹添加到搜索路径中,操作系统用于搜索可执行程序。以下是针对Windows的远景。Win 2000/XP上的菜单可能略有不同,但您找路应该没问题。打开控制面板。选择经典视图。双击系统。选择高级系统设置,然后单击选项卡高级。点击按钮环境变量。在“用户变量”下,双击要编辑的变量路径。单击“变量值”字段并移动光标指向开头。插入程序文件夹的名称C: \用户\资恒\宾;或C:\Bin;或您创建的任何文件夹。请注意,分号分隔文件夹名称。小心不要引入任何错误。单击OK(确定)。

复制PAML可执行文件. 复制或移动预编译的可执行文件(baseml.exe、codeml.exe、,evolver.exe、chi2.exe等)本地程序文件夹C:\Users\Ziheng\Bin\。在这之后,你可以无论你在哪里,都可以在命令提示符下执行这些程序。如果愿意,可以将baseml.exe和codeml.exe重命名为baseml4.exe和codeml4.exe,以包含版本号。(您然后将通过命令codeml4而不是codeml运行程序。)

您还可以将下载的其他命令行程序复制到此文件夹,如mb、RAxML、PhyML程序。

运行PAML程序。避免在Windows资源管理器中双击程序名。那个当程序运行时,您不会在屏幕上看到任何错误消息崩溃。而是启动“命令提示符”框。例如,开始-程序-附件-命令提示符)。或启动-运行-键入cmd和OK。您可以右键单击标题栏并选择Properties to更改窗口的大小、字体和颜色。cd到文件夹包含您的用户文件,并键入命令名。在这里,我们cd到paml文件夹(假设您已将存档解压缩到C: \Programs\paml4.9j\)并使用默认文件运行程序。

抄送:
cd\程序\paml4.9j\
代码ml

因为没有名为codeml.exe的可执行文件(或codeml.bat等),操作系统将在环境变量路径中列出的文件夹。它会找到并在C:\Users\Ziheng\Bin文件夹中执行codeml.exe。你也可以指定可执行程序的完整路径,例如以下内容:

C: \程序\paml4.9j\bin\codeml

一些代码分析使用氨基酸距离(例如。,grantham.dat)或替代率矩阵(例如wag.dat)。你会的然后需要将必要的文件复制到当前文件夹。否则,程序将要求您输入文件。

UNIX/Linux和Mac OSX

对于MAC,我们为MAC OSX编译了一个版本:paml4.8a.macosx.tgz公司。您打开了一个应用程序-实用程序-终端的命令终端。

UNIX、linux和其他系统。下载Win32存档并保存,然后将其解压缩到本地文件夹中。删除bin/文件夹中的Windows可执行文件(.exe文件)。(替换4.9j在以下命令中使用适当的版本号。)

焦油xf paml4.9j.tgz

然后cd到paml文件夹(您必须记住您在哪里保存了文件),再次cd到src/文件夹并编译程序。

rm bin/*.exe
cd-src
make-f生成文件
ls-1F
rm(确认)*。o(o)
mv baseml basemlg codeml pamp evolver yn00 chi2/箱子
光盘。。
ls-lF箱
箱子/底座ml
二进制代码
bin/进化器
设置本地程序的文件夹并更改shell的初始化文件。您只需要为您的用户帐户执行一次此操作。首先检查您的帐户中是否有一个bin/文件夹。如果不是,请创建一个。
光盘
mkdir站

然后修改路径,以便在shell的初始化文件中包含bin/文件夹。您可以使用more/etc/passwd查看运行的shell。以下是C shell和bash shell的注意事项。还有其他壳,但这两个壳是常用的。

(1) 如果在/etc/passwd文件中看到帐户的/bin/csh,则说明您正在运行C shell,初始化文件是根文件夹中的.cshrc。您可以使用more.cshrc查看其内容(如果有)。使用文本编辑器(如emacs、vi、SimpleText等)编辑(或创建,如果不存在)文件,方法如下
电子邮件.cshrc
并插入以下行
设置路径=($path.~/bin)

不同的字段用空格隔开。这里“。”表示当前文件夹,~/表示根文件夹,~/bin表示您创建的bin文件夹$path是路径中已经存在的文件夹。

(2) 如果您在/etc/passwd文件中看到帐户的/bin/bash,那么您正在运行bash shell,初始化文件是.bashrc。使用文本编辑器打开.bashrc并插入以下行

路径=$路径:./:~/垃圾桶/
这将更改环境变量PATH。不同的字段用冒号分隔,而不是空格。如果文件不存在,请创建一个。

更改并保存初始化文件后当您启动一个新的shell时,路径会自动为您设置。然后,您可以cd到包含数据文件的文件夹并运行那里有paml程序。下面将移动到paml文件夹(假设您已将存档解压缩到帐户上的Programs/paml4.9j/中)并使用默认文件运行程序。

光盘
cd程序/paml4.9j
代码ml

由于路径设置正确,这相当于

~/bin/codeml

请注意,Windows使用\而Unix使用/,Windows区分大小写,而Unix区分大小写。

MAC操作系统. 如果你有G5或者你想编译程序你自己,请按照这里的注释。我知道苹果XCODE现在自动安装在您的mac上。否则你会必须下载并安装mac XCODE系统,其中包括C编译器。如果没有C编译器,您将得到“找不到命令”在命令终端键入gcc或cc时出错。

下载Windows存档。打开命令终端(Applications-Utilities-terminal),编译并运行来自终端的程序。删除bin/文件夹中的.exe文件。

更具体地说,在src/文件夹中打开文件Makefile。添加#在下一行的开头将其注释掉。CFLAGS=-O4-funroll-loops-fomit-frame-pointer-finline-函数

删除G5或intel行开头的#,根据您的机器,取消注释行。

#MAC OSX G5:
#CFLAGS=-mcpu=G5-O4-funroll-loops-fomit-帧指针-finline-函数

#MAC OSX英特尔:
#CFLAGS=-march=pentium-m-O4-funroll-lops-fomit-frame-pointer-finline-functions(CFLAGS=-march=奔腾-m-O4-漏斗-指针-鳍线-功能)

保存文件。在命令行中,键入make并按Enter键。之后程序编译成功,删除.o文件并移动可执行文件到bin/文件夹。

rm(确认)*。o(o)
mv baseml basemlg codeml pamp evolver yn00 chi2/箱子

您可能希望将可执行文件mv到您的而不是paml主文件夹。最后,如果您的当前文件夹不在搜索路径中,您必须添加。/在里面可执行文件名的前面;也就是说,使用/codeml代替codeml运行codeml。请参阅上面关于unix系统的说明。

关于在PAML中运行程序的一些注意事项

该软件包中包括许多示例数据集。它们通常是在中分析的数据集描述方法的原始论文。我建议你拿一份报纸,然后运行在分析您自己的数据之前,先用示例数据集重现我们的结果。这应该有助于识别错误在程序中,帮助您熟悉数据文件的格式和结果的解释。

PAML包中的大多数程序都有控件指定序列数据文件、树的名称的文件结构文件,以及用于分析的模型和选项。默认值控制文件是基本.ctl对于基本mlbasemlg(基本),代码ml.ctl对于代码ml,pamp.ctl手册对于潘普,mcmctree.ctl公司对于mcmctree.程序进化者不会有一个控制文件,并使用简单的用户界面。你所做的就是到类型进化论者然后选择选项。对于其他程序,您应该准备序列数据文件和树结构文件,并在运行程序。文档中详细介绍了这些文件的格式。

网上的PAML资源

问题和错误报告

(a)如果你发现了一个bug,请在或者给我发个消息。我将尝试访问每周或每两周举行一次讨论小组。在描述问题,请说明版本号,你做了什么以及做了什么发生了。特别是将屏幕上的任何错误消息复制到消息。请尽量让我轻松复制我自己电脑上的问题。

(b)如果您对使用程序有疑问,请尝试要通过阅读手册(doc/pamlDOC.pdf)找到答案常见问题页面(doc/pamlFAQ.pdf),或在谷歌讨论网站.使用包中包含的示例数据文件了解程序的正常行为。通常你应该能够分辨程序是否读取序列和树文件正确。

如果这些都没有帮助,请在讨论组,供我或paml的其他用户回答。这个设立讨论小组是为了减少我必须花费的时间花在回答用户问题上。请不要给我发消息。我很可能会忽略询问如何使用的电子邮件程序。我为支持不足而道歉。


站长:杨子恒