A toolkit for working with phylogenetic data.
v0.20.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SimulatorExtraPlacementDistribution Class Reference

#include <genesis/placement/simulator/distributions.hpp>

Detailed Description

Generate a certain number of additional PqueryPlacements around a given PlacementTreeEdge.

This class models both the distribution of the number of generated placements and their distribution around the given edge. It is easier to model it this way (both distributions in one class), because they have a dependency: Once the number of placements is drawn, they have to be distributed along the edges of the tree without repetition according to a distribution of distances (path lengths) from the central edge. Doing those two steps in one class is easier.

Definition at line 126 of file distributions.hpp.

Public Member Functions

 SimulatorExtraPlacementDistribution ()=default
 
 SimulatorExtraPlacementDistribution (SimulatorExtraPlacementDistribution const &)=default
 
 SimulatorExtraPlacementDistribution (SimulatorExtraPlacementDistribution &&)=default
 
 ~SimulatorExtraPlacementDistribution ()=default
 
std::string dump_edge_proximities () const
 
std::vector< size_t > edge_proximity_maxima () const
 
std::vector< size_t > generate (PlacementTreeEdge const &edge)
 
SimulatorExtraPlacementDistributionoperator= (SimulatorExtraPlacementDistribution const &)=default
 
SimulatorExtraPlacementDistributionoperator= (SimulatorExtraPlacementDistribution &&)=default
 
void prepare (Sample const &sample)
 Prepare the distribution for usage. Needs to be called before generate(). More...
 

Public Attributes

std::vector< double > placement_number_weights
 
std::vector< double > placement_path_length_weights
 

Classes

struct  EdgeProximity
 

Constructor & Destructor Documentation

Member Function Documentation

std::string dump_edge_proximities ( ) const

Definition at line 179 of file distributions.cpp.

std::vector< size_t > edge_proximity_maxima ( ) const

Definition at line 201 of file distributions.cpp.

std::vector< size_t > generate ( PlacementTreeEdge const &  edge)

Definition at line 119 of file distributions.cpp.

void prepare ( Sample const &  sample)

Prepare the distribution for usage. Needs to be called before generate().

It expects to be called with the Sample into which the generated (simulated) placements are inserted.

Definition at line 56 of file distributions.cpp.

Member Data Documentation

std::vector<double> placement_number_weights

Definition at line 170 of file distributions.hpp.

std::vector<double> placement_path_length_weights

Definition at line 171 of file distributions.hpp.


The documentation for this class was generated from the following files: