A Quick Guide to the Commands

The following is intended to provide a quick overview of the most commonly used commands for the phylogenetic analysis program Nona. A more complete guide is available in the document Piwe.doc that is distributed with the program and with Piwe.

In the columns below, you will find the command, the abbreviation for the command, frequently used arguments (if any exist) that can be added to the command to make it more specific, and the purpose of the command and its arguments. For users that are more familiar with other programs, the equivalent command in Hennig86 or PAUP* are given.

CommandAbrv.ArgumentsPurposeHennig86 PAUP *

On-line list of the commands

- lists all commands
-list of commands by topic
-describes command "xxx"

zExit the programy

Searching for Trees

whennig wh

Creates a wagner tree. It is fast but remember - a more parsimonious tree may be found later by branch swapping

N stands for the number of trees to be generated. If this
is specified, the order for the taxa is randomized N times
keeping only the best trees.



Creates a weighted wagner tree and then branch swaps using subtree pruning regrafting (SPR)

the order of the taxa is randomized



Branch-swapping using subtree pruning regrafting (SPR) on initial trees (trees generated using wh or e), searching for shortest trees.

trees are swapped more exhaustively
using tree bissection-reconnection



Randomizes the order of the taxa, creates a weighted wagner tree, and submitts it to branch-swapping, storing in memory as many trees as had been set with hold.

trees are swapped more exhaustively using tree
bissection-reconnection (TBR).

By adding a number, this command can be repeated
many times (e.g., mult*100).

Heuristic search with random addition sequence
bound N1 N2bo

Same as mult but instead of swapping on all trees it can find, it swaps until it finds a tree of fit N2 (the "bound"), and then starts the new replication with a new random order. This lets you constrain the search to trees you know are present and not bother with longer trees. The first replication swaps exhaustively (keeping the maximum number of initial trees specified with hold), in an attempt to improve the bound. If no number is provided as bound, it uses the best available or the one resulting from first replication.If there are trees in memory before issuing this command and the bound provided is inferior to those trees, the best bound is used. If the bound is improved in one of the replications, a new bound is used for subsequent replications.

For messy data sets, this may execute faster than mult, but if provided with a suboptimal initial bound it may produce suboptimal trees.

trees are swapped more exhaustively using tree
bissection-reconnection (TBR).

jump j

To find multiple islands of trees by branch swapping on suboptimal trees.

Number of jumps to make

Tree Search Options
(Note: most have a default setting; to change the default the command must be set before a tree is searched for)

CommandAbrv.ArgumentsPurposeHennig86PAUP *


To collapse internal branches under various rules

(default)if any possible states are shared between ancestor and descendant node, the branch is considered unsupported.

Collapse only if ancestor and descendant have identical states



Keep in memory up to N trees (The default is 50). If * is used instead of a number the program will retain all trees for which memory has been allocated.

makes space for N additional trees (useful for "jumps").

determines the maximum number of initial trees, i.e.,
the maximum number of trees to keep in each
replication of mult or bound.

Try this trick to add to the capacity of the tree buffer: before loading the data file enter the command h*, then enter h* again after loading the data.

While Searching
(Note: If default, set automatically, otherwise must be set before a tree is searched for)

CommandAbrv.ArgumentsPurposeHennig8 6 PAUP*

(default) enables breaks during tree searches (press ".")

produces a report of time status of the search

pausepapauses the program until a key is pressed

Tree Output

CommandAbrv.ArgumentsPurposeHennig86 PAUP *

show tree

show all trees


Calculate bremer supports

TBR swapping on available trees saving up to N/10 less
fit than the best found

sv*Save trees to a file in parenthetical notation (with "*" as an argument, saves every tree in memory; with no argument, saves current tree).

send output of commands to file XXX

closes the output file


Moleculoid Stuff

CommandAbrv.ArgumentsPurposeHennig86 PAUP *
packmerges characters with identical distribution into one character of higher weight. For most morphological data, which include few uninformative characters, this is seldom necessary, but for molecular data sets (where as little as a fourth of the sites may be informative) the packed matrices may run much faster.



Read DNA (IUPAC) code for characters

gaps are treated as missing data

gaps are treated as a fifth character

Running Nona

When setting up your data file, remember that the outgroup is always the first taxon.

1. Double click on the Nona icon

2. After the program loads, load a data set using the command "p ;" (just as in Hennig86).

3. Set the number of trees to be kept in memory (hold command).

4. Enter commands for search options.

5. Enter commands for analyzing trees.

6. Enter commands for saving output.

Most programs go through a long slow procedure in which much time is spent collecting and swapping on large islands of trees that differ by minor rearrangements of a few taxa. What strategies can be used to avoid this problem?

1. Maximize the number of distinct starting trees (e.g., have a high number of replications)
2. Reduce the number of trees kept during each replication (e.g., starting trees per rep low).
3. Collect the results and then branch swap for more complete results.

This search strategy, as well as tree evaluation, can most easily be implemented with Winclada!