4 个版本
0.6.4 | 2021 年 11 月 20 日 |
---|---|
0.6.3 | 2021 年 11 月 19 日 |
0.6.2 | 2021 年 11 月 18 日 |
0.5.6 | 2021 年 11 月 17 日 |
#937 in 科学
70KB
867 行
myte
该应用程序是 IQ-TREE 和 Astral 的包装器。它允许估计物种树、基因树、基因和位点一致性因子、MSC Astral 树,并使用单个命令组织结果文件
myte auto -d [gene-alignment-folder]
可以使用运行 GNU parallel 的 Bash 脚本实现类似功能。然而,我们的解决方案有一些优势
- 无需编程技能。该应用程序是一个单可执行命令行应用程序。其设计方式无需更改代码。
- 可重现。应用程序中所有代码更改都通过 git 跟踪。它还生成运行时的日志文件。
- 灵活。应用程序允许用户指定分析参数。应用程序设计允许 IQ-TREE 和 Astral 中的当前和未来参数。
- 低开销。它使用的是高性能编程语言,具有低内存和 CPU 使用率。
- 安全的并行处理。它利用 Rust 编程语言的并行计算算法,以避免数据竞争。
限制
该应用程序尚不支持 MPI。它设计用于在台式计算机上运行,并尽可能利用其所有可用核心。它应在集群计算机上运行良好,但将限制为单个节点上的单个 CPU。
安装
myte
是一个单可执行命令行应用程序。可执行文件将在发布 链接 中可用。将其复制到已在您的 PATH 变量中注册的文件夹。对于 Linux 用户,如果在尝试运行 myte
时遇到 GLIBC 错误,请尝试使用 ManyLinux
可执行文件。
您还可以使用 Rust 软件包管理器 cargo 安装应用程序
cargo install myte
操作系统支持
- MacOS
- Linux
- Windows-WSL
注意ARM Mac用户!
myte
可以在Apple Arm64 CPU(M1系列)上本地运行。我们在发布页面提供了Apple Arm64可执行文件。然而,由于IQ-TREE的限制,它只支持基于Intel的MacOS,当myte与IQ-TREE接口时,IQ-TREE将在Apple Rosetta仿真器上运行。在我们的测试中,所有myte
功能都在我们的默认ARM架构本地运行的MacOS终端上工作,并且与IQ-TREE接口良好。无需创建使用Rosetta打开的单独终端。
依赖项
检查应用程序是否可以检测依赖项
myte check
有关如何安装用Rust编写的命令行应用程序的更详细说明,请参阅segul的readme。
从源代码编译
在此处下载rust编译器,并遵循安装说明。
git clone https://github.com/hhandika/myte
cd myte
cargo build --release
您的可执行文件将位于/target/release/myte
。将其复制到已在您的PATH变量中注册的文件夹。
修复依赖项
程序从环境路径变量中检测iqtree2
的安装。如果程序无法检测到IQ-TREE,请确保可执行文件名为iqtree2
(无空格),并且放置IQ-TREE可执行文件的目录已注册到您的环境路径变量中。
对于Astral安装,要解决依赖项,请转到您安装Astral的文件夹。然后,使用以下命令解决它
myte deps astral -j [path-to-astral-jar-file]
它将生成一个名为astral.sh
的可执行文件。将astral.sh
文件放在已在您的环境变量中注册的目录中。
再次尝试检查依赖项
myte check
用法
USAGE:
myte <SUBCOMMAND>
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
SUBCOMMANDS:
auto Estimate species tree, gene trees, gene and site concordance factors, and MSC tree
check Check dependencies
deps Solves dependency issues
gene Batch gene tree estimation using IQ-Tree
help Prints this message or the help of the given subcommand(s)
自动估计物种、基因树和基因和位点一致性因子
此功能特别适用于在台式计算机上运行分析。如果您有权访问集群计算机,可能最好只使用此程序并行运行基因树分析(见下文),并将其余分析分别运行以减少等待时间。
myte auto -d [alignment-folder]
对于物种树估计,默认选项将使用此命令运行IQ-TREE
iqtree2 -s ../genes/ --prefix concat -T 1 -B 1000
对于基因树估计,默认选项将使用此命令运行IQ-TREE
iqtree2 -s [alignment-path] --prefix [gene-names] -T 1
应用程序允许使用IQ-TREE对物种树和基因树估计的当前和未来可用的参数。
您可以使用选项--opts-s=
指定物种树的IQ-TREE参数。
例如
myte auto -d genes/ opts-s="-T 4 -bnni -B 1000"
类似于物种树估计,您可以使用应用程序中的--opts-g=
选项指定任何IQ-TREE参数。
默认情况下,应用程序会在您的对齐目录中查找nexus文件。要指定文件格式,请使用--input-fmt
选项或简写选项-f
。除了nexus
格式外,应用程序还支持fasta
和phylip
。使用帮助命令查看所有选项
myte auto --help
从基因对齐目录估计基因树
程序将创建多个IQ-TREE实例以并行运行基因树估计。程序评估您的系统中的可用CPU资源,并合理地处理。
要生成基因树
myte gene -d [alignment-folder]
您还可以使用--opts-g=
选项指定IQ-TREE参数。类似于自动格式,默认情况下,应用程序将查找nexus文件。使用与自动子命令相同的选项指定输入格式。
贡献
我们欢迎任何形式的贡献,从问题报告、改进应用的创意到代码贡献。对于创意和问题报告,请发布在GitHub问题页面。对于代码贡献,请fork仓库并向此仓库发送pull请求。
依赖项
~8–18MB
~218K SLoC