| Bio-Phylo documentation | view source | Contained in the Bio-Phylo distribution. |
Bio::Phylo::Generator - Generator of tree topologies
use Bio::Phylo::Factory;
my $fac = Bio::Phylo::Factory->new;
my $gen = $fac->create_generator;
my $trees = $gen->gen_rand_pure_birth(
'-tips' => 10,
'-model' => 'yule',
'-trees' => 10,
);
# prints 'Bio::Phylo::Forest'
print ref $trees;
The generator module is used to simulate trees under various models.
Generator constructor.
Type : Constructor Title : new Usage : my $gen = Bio::Phylo::Generator->new; Function: Initializes a Bio::Phylo::Generator object. Returns : A Bio::Phylo::Generator object. Args : NONE
This method generates a Bio::Phylo::Forest object populated with Yule/Hey trees.
Type : Generator
Title : gen_rand_pure_birth
Usage : my $trees = $gen->gen_rand_pure_birth(
'-tips' => 10,
'-model' => 'yule',
'-trees' => 10,
);
Function: Generates markov tree shapes,
with branch lengths sampled
from a user defined model of
clade growth, for a user defined
number of tips.
Returns : A Bio::Phylo::Forest object.
Args : -tips => number of terminal nodes (default: 10),
-model => either 'yule' or 'hey',
-trees => number of trees to generate (default: 10)
Optional: -factory => a Bio::Phylo::Factory object
This method generates a Bio::Phylo::Forest object populated under a birth/death model
Type : Generator
Title : gen_rand_birth_death
Usage : my $trees = $gen->gen_rand_birth_death(
'-tips' => 10,
'-killrate' => 0.2,
'-trees' => 10,
);
Function: Generates trees where any growing lineage is equally
likely to split at any one time, and is equally likely
to go extinct at '-killrate'
Returns : A Bio::Phylo::Forest object.
Args : -tips => number of terminal nodes (default: 10),
-killrate => extinction over speciation rate (default: 0.2)
-trees => number of trees to generate (default: 10)
Optional: -factory => a Bio::Phylo::Factory object
Comments: Past extinction events are retained as unbranched internal
nodes in the produced trees.
This method generates a Bio::Phylo::Forest object populated with Yule/Hey trees whose branch lengths are proportional to the expected waiting times (i.e. not sampled from a distribution).
Type : Generator
Title : gen_exp_pure_birth
Usage : my $trees = $gen->gen_exp_pure_birth(
'-tips' => 10,
'-model' => 'yule',
'-trees' => 10,
);
Function: Generates markov tree shapes,
with branch lengths following
the expectation under a user
defined model of clade growth,
for a user defined number of tips.
Returns : A Bio::Phylo::Forest object.
Args : -tips => number of terminal nodes (default: 10),
-model => either 'yule' or 'hey'
-trees => number of trees to generate (default: 10)
Optional: -factory => a Bio::Phylo::Factory object
This method generates coalescent trees for a given effective population size (popsize) and number of alleles (tips) such that the probability of coalescence in the previous generation for any pair of alleles is 1 / ( 2 * popsize ).
Type : Generator
Title : gen_coalescent
Usage : my $trees = $gen->gen_coalescent(
'-tips' => 10,
'-popsize' => 100,
'-trees' => 10,
);
Function: Generates coalescent trees.
Returns : A Bio::Phylo::Forest object.
Args : -tips => number of terminal nodes (default: 10)
-popsize => effective population size (default: 100)
-trees => number of trees to generate (default: 10)
Optional: -factory => a Bio::Phylo::Factory object
This method draws tree shapes at random, such that all shapes are equally probable.
Type : Generator
Title : gen_equiprobable
Usage : my $trees = $gen->gen_equiprobable( '-tips' => 10 );
Function: Generates an equiprobable tree
shape, with branch lengths = 1;
Returns : A Bio::Phylo::Forest object.
Args : Optional: -tips => number of terminal nodes (default: 10),
Optional: -trees => number of trees to generate (default: 1),
Optional: -factory => a Bio::Phylo::Factory object
This method creates the most balanced topology possible given the number of tips
Type : Generator
Title : gen_balanced
Usage : my $trees = $gen->gen_balanced( '-tips' => 10 );
Function: Generates the most balanced topology
possible, with branch lengths = 1;
Returns : A Bio::Phylo::Forest object.
Args : Optional: -tips => number of terminal nodes (default: 10),
Optional: -trees => number of trees to generate (default: 1),
Optional: -factory => a Bio::Phylo::Factory object
This method creates a ladder tree for the number of tips
Type : Generator
Title : gen_ladder
Usage : my $trees = $gen->gen_ladder( '-tips' => 10 );
Function: Generates the least balanced topology
(a ladder), with branch lengths = 1;
Returns : A Bio::Phylo::Forest object.
Args : Optional: -tips => number of terminal nodes (default: 10),
Optional: -trees => number of trees to generate (default: 1),
Optional: -factory => a Bio::Phylo::Factory object
Also see the manual: Bio::Phylo::Manual and http://rutgervos.blogspot.com.
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
$Id: Generator.pm 1660 2011-04-02 18:29:40Z rvos $
| Bio-Phylo documentation | view source | Contained in the Bio-Phylo distribution. |