biomcmc-lib  0.1
low level library for phylogenetic analysis
Data Fields
topology_struct Struct Reference

Binary unrooted topology (rooted at leaf with ID zero) More...

#include <topology_common.h>

Collaboration diagram for topology_struct:
Collaboration graph
[legend]

Data Fields

topol_nodenodelist
 
double * blength
 vector of nodes (the first $L$ are the leaves).
 
int id
 Branch lengths, with mean, min, max vectors for topology_space.
 
topol_node root
 topology ID (should be updated by hand, e.g. by functions in topology_space.c)
 
int nleaves
 Pointer to root node.
 
int nnodes
 Number of leaves $L$.
 
topol_node undo_prune
 Number of nodes, including leaves ( $ 2L-1$ for a binary rooted tree).
 
topol_node undo_regraft
 How to revert most recent SPR move (prune node).
 
bool undo_lca
 How to revert most recent SPR move (regraft node).
 
topol_nodepostorder
 revert SPR move is lca type or not
 
topol_nodeundone
 pointers to all internal nodes in postorder (from last to first is preorder)
 
int n_undone
 pointers to outdated nodes in postorder (from last to first is preorder)
 
uint32_t hashID1
 number of outdated nodes (which need likelihood calc etc) in topology_struct::undone.
 
uint32_t hashID2
 
bool traversal_updated
 hash values of tree, ideally a unique value for each tree (collisions happen...)
 
int ref_counter
 zero if postorder[] vector needs update, one if we can use postdorder[] to traverse tree
 
char_vector taxlabel
 number of references of topology (how many places are pointing to it)
 
int * index
 Taxon names (just a pointer; actual values are setup by newick_tree_struct or alignment_struct)
 
bool quasirandom
 sandbox vector used in spr moves / quasirandom tree shuffle just to avoid recurrent allocation
 

Detailed Description

Binary unrooted topology (rooted at leaf with ID zero)


The documentation for this struct was generated from the following file: