The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

Bio::PhyloNetwork::TreeFactory - Module to sequentially generate Phylogenetic Trees

SYNOPSIS

use strict;
# Will generate sequentially all the 15 binary phylogetic
# trees with 4 leaves
my $factory=Bio::PhyloNetwork::TreeFactory->new(-numleaves=>4);
my @nets;
while (my $net=$factory->next_network()) {
push @nets,$net;
print "".(scalar @nets).": ".$net->eNewick()."\n";
}

DESCRIPTION

Sequentially builds a (binary) phylogenetic tree each time next_network is called.

AUTHOR

Gabriel Cardona, gabriel(dot)cardona(at)uib(dot)es

SEE ALSO

Bio::PhyloNetwork

APPENDIX

The rest of the documentation details each of the object methods.

new

Title : new
Usage : my $factory = new Bio::PhyloNetwork::TreeFactory();
Function: Creates a new Bio::PhyloNetwork::TreeFactory
Returns : Bio::PhyloNetwork::RandomFactory
Args : -numleaves => integer
OR
-leaves => reference to an array (of leaves names)

Returns a Bio::PhyloNetwork::TreeFactory object. Such an object will sequentially create binary phylogenetic trees each time next_network is called.

If the parameter -leaves=>\@leaves is given, then the set of leaves of these networks will be @leaves. If it is given the parameter -numleaves=>$numleaves, then the set of leaves will be "l1"..."l$numleaves".

next_network

Title : next_network
Usage : my $net=$factory->next_network()
Function: returns a tree
Returns : Bio::PhyloNetwork
Args : none