TNT:S

Malacology留言 | 贡献2023年8月7日 (一) 09:53的版本 (创建页面,内容为“= save = 将树保存到文件中(之前使用<code>tsave</code>打开) <code>N</code> 将树<code>N</code>保存下来 <code>/</code> 保存内存中的最后一个树 <code>*</code> 在括号符号表示中保存树标记(树文件必须是括号符号表示) <code>-</code> 仅保存活跃分类单元编号的树(与<code>xread-</code>结合使用,可保存缩减过的树)。 = screen = <code>NxL</code> 使用N行和L列的屏幕S = scor…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

save

将树保存到文件中(之前使用tsave打开)

N 将树N保存下来

/ 保存内存中的最后一个树

* 在括号符号表示中保存树标记(树文件必须是括号符号表示)

- 仅保存活跃分类单元编号的树(与xread-结合使用,可保存缩减过的树)。

screen

NxL 使用N行和L列的屏幕S

scores

N 计算树的分数(长度或拟合度),对树N

!N 进行相同操作,优化多度分支作为“软分岔”。

sectsch

从现有树开始进行部分搜索。选项包括:

确定部分选择的选择:

rss 进行随机部分选择

css 进行约束基础部分选择

[no] xss N+R 进行N个独占选择(即非重叠) 扇区选择,涵盖所有树,并分析每个; 重复过程R次或回合(在最后一个之后,进行全局TBR)。如果R后面跟着-G,则全局TBR将每G轮(以及最后一个之后)完成一次。使用B-E而不是N分区从B开始,以E结束(扇区根据E>BB>E而增加或减少)

dss N D 选择围绕节点N、距离N D(=直径)个支离破碎的节点,并分析扇区。这需要具体指定一棵树; 它在最后不会交换(如果不全局)

[no]xeven 对于专有扇区,[不要]使用尽可能均匀大小的扇区(如果使用多轮,不均匀的扇区使得更有可能找到更好的树。

minsize N 随机选择的最小大小

maxsize N 随机选择的最大大小

minfork N 基于限制的选择的最小分支

maxfork N 基于限制的选择的最大分支

increase N 因子N,以增加当前大小的选择数达到要求。新尺寸为 S = S + ((S * N) / 100)

selfact N 系数用于确定(在随机选择下)大小为S的最大选择数量,对于T(活跃)分类群。最大数量M确定为M =(T * 100)/(N * S)。或者,使用Selfact = XYZ使用X作为第一个选择,Y作为第二个选择,依此类推(最多可以定义30个值)。

moveon N 如果N个选择未能产生更好的得分,继续

rounds N 限制性选择,循环N次以覆盖群组

对于确定分析:

global NN个替换进行全局TBR

noglobal 从不全局 TBR

[no]equals 接受同样好的子树

[no]fuse N 在分析小领域(低于drift大小)时,请保留所有树木并合并(N轮)。注意:对于超过漂移大小的部门,漂移的自动融合选项适用。

godrift N 超出该大小的扇形使用树漂移(而不是RAS + TBR)

drift N 用于漂移的扇区,使用N个漂移周期

gocomb N 对于大小为N或更大的扇区,使用综合分析(RAS + drift + fuse)。如果N小于使用漂移的大小,则不进行漂移。对于每个起点的漂移周期数Cdrift C确定,融合数量Ffuse F确定。

starts N 对于小于minsize的扇区,随机添加序列的数量加上TBR

combstarts N 对于大于大小的扇区的综合分析,使用N个起始值(如果前N个产生相同的得分,则停止,否则继续N个起始值)

findscore N 找到得分N时在树上停止漂移

[no]keepall 仅保留最优树

一般选项:

[no]safesank 对于Sankoff性状,使用严格检查(=默认值)来识别无信息的性状,以减少数据集的收缩(宽松的检查可能会产生小的速度提升,但可能会错过复杂转换成本更好的树)。

slack N N% 的额外内存用于搜索(防止运行时出现内存错误)

[no]xbuf 如果内存可用,使用独立矩阵缓冲区分析扇区(=更快的更新,在大数据集中可为小扇区节省大量时间)。

recurse N 允许扇区搜索递归到 N 级。

tree N 选择树 N 的扇区(而不是所有树)。

track 允许在大树和简化树之间跟踪节点(仅对用户指导的扇区搜索有效)。这与宏表达式nodtosectbiginsect结合使用。

chkroot 仅用于 XSS 搜索的 chkroot,请确保将树(通常可能未选定)基础也包含在内;这实际上可能比请求的选择多使用一个选择。

bignotsect。运行扇区的从机(=salve)(请参阅ptnt下)始终允许跟踪。

选项使用 sectsch:options;sectsch=options;设置(只使用:更改设置;=也可以运行)。使用sect:;显示当前设置。

还可以确定如何针对每个生成的扇区进行搜索,包括在方括号内搜索的命令(包括 sectsch 本身,可能还带有用户说明)。在阅读数据集之前,必须确定递归的最大级别为sectsch:recurse N;。当为每个扇区使用用户指令时,在分析子问题时更改的任何设置都将在分析完该扇区后保持不变(sectsch 本身的设置是唯一的例外)。

shortread

xxx 从文件 xxx 读取 compact tree file 格式的树。

=N 与 xxx 相同,但将它们放在组 N 中

>N 相同,但将它们添加到组 N 中

shpcomp

比较两个树之间的树形状。它重新标记了其中一个树的分类单元,以最大化树的相似度而不改变树形状。重新标记算法是一种启发式算法,因此用不同的随机种子重复这个过程可能会产生不同的结果。它适用于最多50-60个分类单元的树,对于更大的问题它开始失效(产生次优的重命名)。

请注意!此命令是实验性的且效率不高,它可能会被更好的算法取代。它只是作为概念验证的实现。

X Y xJ K L 重新标记树XY,从J个起始点开始,进行K次循环,每次循环做L轮。它试图优化将每棵树的MRP映射到另一棵树上的步骤总和。

+X Y xJ K L 与上面相同,但是尝试优化Robinson-Foulds距离。

= 保存优化MRP或RF的标签(即更改树).

X *N 在树X中随机切换两个分类单元的标签,进行N次。

silent

控制输出为xxx:

=xxx; 无输出为xxx。

-xxx; 输出为xxx。

xxx 可以是 allfileconsole或者buffer

slfwt

自动加权优化设置参数(默认值在方括号中):

exops N 适用于状态超过 N 的性状,预检转换并禁止线性优化下未发生的性状。[5]

timeout N 计算任何给定性状的优化不超过 N 秒。[3600]

tolerance N 接受与最优解相差 N 个得分单位的重构。[0.0000001]

[no]polymorph [不要]将多态分类单元视为缺少条目(=更快)。

errmargin N 在搜索过程中,重新检查得分高于最佳得分的 N 个单位的树。[0.5]

[no]autotune N 在搜索过程中,比较新树的预估得分与实际得分,更新误差边界,当 N = 1(=1 级)时,误差边界仅在给定交换周期内更改;当 N = 2 时,在交换后仍保留误差边界[级别 1]。

maxtbr N 在使用 TBR 进行搜索时,将裁剪的 clade 重新根据距离原始根节点不超过 N 个节点的距离(maxtbr 0 = SPR)。[5]

setlim N 限制具有N个或更多状态的性状在优化期间可能的状态集。[4]

maxdist N M 当限制可能的状态集时,使用节点向上N个节点所在分支的联合状态,以及节点向下M个节点所在的联合状态。

[no]useminset 当限制可能的状态集时,使用对先前成本进行优化的集合(非常快速,但很容易出现错误)。

maxrepeat N 当N个连续分支具有相同(唯一)状态时,将其视为固定状态。

[no]quickrat 在此标准下,产生非常少的最优树,缓冲和漂移趋向于多次找到并交换相同的树;使用此选项时,当缓冲/漂移的扰动阶段生成的树与迄今为止找到的最佳树的分数相同时,不会交换该树(仅在自动加权打开时应用)。[是]

backbuf N 在交换期间备份现有N个树; 如果重新发现一棵树,则会中断交换(防止由于得分计算错误而导致循环; 0表示不缓冲)。[0]

[no]verbose 优化性状时,报告进度。

slaveproc

在并行 TNT 保留给父进程使用

smatrix

=N (name) [cost] 定义了一个步骤矩阵。语法和cost一样,N 必须是 0-31 , name 可选

+name N 将指定名称的步骤矩阵应用于性状 N

; 显示定义的步骤矩阵

* 保存它们(要阅读,必须设置nstates / num;

& 产生对不适用的 Sankoff 的近似。

        注意,现在已经推出了比`xlink`选项更灵活的`smatrix&`选项。该选项保留了向后兼容性。如果在读取数据集之前启用`xlinks=2`(或更高版本)的链接,则`smatrix&`将内部将subordination转换为`xlink`格式,这也可以保存以供后续使用(参见`help xlinks`)。

        使用`smatrix&`选项(并且禁用`xlinks`),名为`sub_xxx`的性状被视为从属于名为`sup_xxx`的性状(从属性状的名称可以比`xxx`长,但必须以`xxx`开头 来建立身份)。 `sup_`性状中的矩阵条目(必须仅包含“存在”和“不存在”状态)已更改为现在具有质量组合; 转换成本发生了变化(因此,“当前”状态之间的变化成本与质量之间的差异一样多,考虑到成本(如果Sankoff)或可加性)。 `sup_`性状的状态名称以及转换成本也发生了变化。 可以生成的状态数量有限(最多为 32),并且上位性状和下位性状必须一致(例如,上位性状评分为“不存在”或“缺失”的分类单元不能与其他任何性状一起评分) 而不是下属的“失踪”)。 从属性状中的歧义得到了妥善处理。 有关处理未观察到的状态组合的选项,请参阅`usminmax`命令。 考虑角色权重; 如果上级/下级性状之间的权重比不准确,则可以通过适当的转换成本而不是权重来完成(请注意,这会影响隐含权重!)。 一个性状对于其他性状来说是`sub_`,反过来又可以是第三个性状的`_sup_`,从而创建多个级别的依赖关系,在重新编码时要考虑到这一点。

示例名称

sup_post_legs absent present 

sub_post_legs armed unarmed  

sub_post_legs scaly hairy 

sub_post_legs_sup_apophysis absent present 

sub_apophysis spinose aspinose

定义如下结构

              post_legs                     absent  

                /     \                    /  

              absent   present -- apophysis  

                         /   \            \  

              scaly,hairy  armed,unarmed    present   

                                                \  

                                             spinose,aspinose

这个等级制度已经被自动纳入了主要角色(post_legs)的成本中。

成本被设定为,对重新编码的“状态”进行独立转换所花费的代价,与不以同源性为解释的相似性的数量相同;这是使结果最接近“anagallis”的方法。在多个等级依赖的情况下,这意味着一些主要角色需付出的代价比其他角色更高,在上面的例子中,获得具有apophysis的post_legs将花费5步;而获得没有apophysis的post_legs只需花费4步(因为“apophysis”本身的特征不适用)。请注意,在Sankoff/加性依赖性特征的情况下,重新编码的结果将比最大同源性的结果(例如anagallis)更加偏离;生成的重新编码只是一个近似值。

当所有特征都是二元/非加性特征时,对应关系最为接近。

请记住,组合特征不能超过32个状态(超过32个状态会触发错误消息)。

在这种情况下,可以减少组合的特征,或尝试使用专门设计用于处理无法应用特征的算法的程序(例如De Laet的“anagallis”程序,或Brazeau的“Morphy”(在www.anagallis.be/anagallis、www.morphyproject.org中可找到)。

&+ 与前一个类似,但使用搜索计算可能的最小步数,而不是对依赖特征之间的冲突进行最小化求和(仅在依赖特征间不存在冲突时才可行!)

&< 与前一个类似,但如果存在依赖加性性状,则不要像anagallis(=默认)那样对待它们,而是将增益成本设置为保持三角形不等式的最小可能值

| 如果下级和上级性状已用&修改,则将矩阵(和成本)设置回原始值。

< 在祖先节点上禁止考虑不可观察的状态(通过将从它们到/从它们的转换成本设置为1000,即“不可能”)。

sort

在RAM中对树进行排序,从最好到最差。

=nodes 按节点数排序,而不是按得分排序

=size 按分类单元数排序

=mono 按违反约束的数量排序

sprdiff

J K NxS 估计将树J转换为树K所需的SPR交换数量。使用启发式方法,取决于随机种子进行N次重复,并报告最佳估计(如果未指定N,则N = 10)。每次复制使用最多S级的“分层”(默认值为S = 0)。根据树拓扑结构,分层程序(更耗时)产生更好的估计。使用N+S而非NxS,交替使用分层和常规程序(最终保留最佳整体值)。如果一个或两个树有多分枝,则通过在最接近的二分辨率之间计算距离(默认情况下,请参见下面内容)。“相似性”是移动次数除以物种数减3(即最大移动次数)。

*J K NxS S估计SPR - 展示树图上的移动

[K 将移动作为带权的计算,一个到离D节点距离的移动花费D/(K+D)。当K接近0时,所有移动的成本相同;当K变大时,较长的移动成本更高。对于报告的值,它们被重新调整,以便最远的可能移动(nt-3)具有成本为1。请注意,[K;只设置比较的值和类型,在对sprdiff进行后续调用(或对相关宏表达式进行调用)时进行,而不运行。相似性也是通过将分类单元数减3(即最远可能移动的最大数量,每个移动的成本为1)来获得的。移动的距离D等于共识移动前后树所创建的聚合度减去2。

] 在后续对sprdiff的调用中,计算原始移动。

还可以搜索SPR路径,使得没有一个移动具有连接到其祖先之一的节点(如果SPR路径被解释为指示水平基因转移,则这些移动构成了一个物理上的不可能)。为此,使用:noviol;作为参数(viol将允许这些移动)。

如果您希望计算必要的移动以解决/折叠树的聚合度(如果有),则使用:poly;(请记住,这个计数是近似的!);默认为:nopoly;

subopt

NxR 将亚优解设置为N,相对亚优解设置为R(注意,相对亚优解是针对交换的树而不是针对找到的最佳树而测量的)。用于后续搜索的次优值,或者在使用SPR或TBR折叠树时使用。

:T/Pbsupport相同

svtxt

J K 将文本缓冲区行J到K保存到输出文件中(默认=全部)

system

xxx<enter> 在系统中运行xxx