NAME

Bio::Phylo::Forest::Tree - Phylogenetic tree

SYNOPSIS

# some way to get a tree
use Bio::Phylo::IO;
my $string = '((A,B),C);';
my $forest = Bio::Phylo::IO->parse(
   -format => 'newick',
   -string => $string
);
my $tree = $forest->first;

# do something:
print $tree->calc_imbalance;

# prints "1"

DESCRIPTION

The package has the getters and setters that alter the internal state of a tree object. Additional tree-related behaviours (which are available also) are defined in the package Bio::Phylo::Forest::TreeRole.

METHODS

MUTATORS

set_as_unrooted()

Sets tree to be interpreted as unrooted.

Type    : Mutator
Title   : set_as_unrooted
Usage   : $tree->set_as_unrooted;
Function: Sets tree to be interpreted as unrooted.
Returns : $tree
Args    : NONE
Comments: This is a flag to indicate that the invocant
          is interpreted to be unrooted (regardless of
          topology). The object is otherwise unaltered,
          this method is only here to capture things such
          as the [&U] token in nexus files.
set_as_default()

Sets tree to be the default tree in a forest

Type    : Mutator
Title   : set_as_default
Usage   : $tree->set_as_default;
Function: Sets tree to be default tree in forest
Returns : $tree
Args    : NONE
Comments: This is a flag to indicate that the invocant
          is the default tree in a forest, i.e. to
          capture the '*' token in nexus files.
set_not_default()

Sets tree to NOT be the default tree in a forest

Type    : Mutator
Title   : set_not_default
Usage   : $tree->set_not_default;
Function: Sets tree to not be default tree in forest
Returns : $tree
Args    : NONE
Comments: This is a flag to indicate that the invocant
          is the default tree in a forest, i.e. to
          capture the '*' token in nexus files.

TESTS

is_default()

Test if tree is default tree.

Type    : Test
Title   : is_default
Usage   : if ( $tree->is_default ) {
             # do something
          }
Function: Tests whether the invocant 
          object is the default tree in the forest.
Returns : BOOLEAN
Args    : NONE
is_rooted()

Test if tree is rooted.

Type    : Test
Title   : is_rooted
Usage   : if ( $tree->is_rooted ) {
             # do something
          }
Function: Tests whether the invocant 
          object is rooted.
Returns : BOOLEAN
Args    : NONE
Comments: A tree is considered unrooted if:
          - set_as_unrooted has been set, or
          - the basal split is a polytomy

SERIALIZERS

SEE ALSO

There is a mailing list at https://groups.google.com/forum/#!forum/bio-phylo for any user or developer questions and discussions.

Bio::Phylo::Forest::TreeRole

The Bio::Phylo::Forest::Tree package inherits from the Bio::Phylo::Forest::TreeRole package, so the methods defined therein also apply to trees.

Bio::Phylo::Manual

Also see the manual: Bio::Phylo::Manual and http://rutgervos.blogspot.com.

CITATION

If you use Bio::Phylo in published research, please cite it:

Rutger A Vos, Jason Caravas, Klaas Hartmann, Mark A Jensen and Chase Miller, 2011. Bio::Phylo - phyloinformatic analysis using Perl. BMC Bioinformatics 12:63. http://dx.doi.org/10.1186/1471-2105-12-63