| 
    barry: Your go-to motif accountant
    0.0-1
    
   Full enumeration of sample space and fast count of sufficient statistics for binary arrays 
   | 
 

Go to the source code of this file.
Functions | |
| void | rule_leafs (PhyloSupport *support) | 
| void | rule_dyn_limit_changes (PhyloSupport *support, size_t pos, size_t lb, size_t ub, size_t duplication=Geese::etype_default) | 
| Overall functional gains.  More... | |
| #define | MAKE_DUPL_VARS() | 
| #define | IS_EITHER() (DATA_AT == Geese::etype_either) | 
| #define | IS_DUPLICATION() ((DATA_AT == Geese::etype_duplication) & (DPL)) | 
| #define | IS_SPECIATION() ((DATA_AT == Geese::etype_speciation) & (!DPL)) | 
| #define | IF_MATCHES() | 
| #define | IF_NOTMATCHES() | 
| #define | PHYLO_RULE_LAMBDA(a) | 
| Extension of a simple counter.  More... | |
| #define | PHYLO_COUNTER_LAMBDA(a) | 
| #define | PHYLO_RULE_DYN_LAMBDA(a) | 
| #define | PHYLO_CHECK_MISSING() | 
| std::string | get_last_name (size_t d) | 
| void | counter_overall_gains (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Overall functional gains.  More... | |
| void | counter_gains (PhyloCounters *counters, std::vector< size_t > nfun, size_t duplication=Geese::etype_default) | 
Functional gains for a specific function (nfun).  More... | |
| void | counter_gains_k_offspring (PhyloCounters *counters, std::vector< size_t > nfun, size_t k=1u, size_t duplication=Geese::etype_default) | 
| k genes gain function nfun  More... | |
| void | counter_genes_changing (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Keeps track of how many genes are changing (either 0, 1, or 2 if dealing with regular trees.)  More... | |
| void | counter_preserve_pseudogene (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Keeps track of how many pairs of genes preserve pseudostate.  More... | |
| void | counter_prop_genes_changing (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Keeps track of how many genes are changing (either 0, 1, or 2 if dealing with regular trees.)  More... | |
| void | counter_overall_loss (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Overall functional loss.  More... | |
| void | counter_maxfuns (PhyloCounters *counters, size_t lb, size_t ub, size_t duplication=Geese::etype_default) | 
| Cap the number of functions per gene.  More... | |
| void | counter_loss (PhyloCounters *counters, std::vector< size_t > nfun, size_t duplication=Geese::etype_default) | 
| Total count of losses for an specific function.  More... | |
| void | counter_overall_changes (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Total number of changes. Use this statistic to account for "preservation".  More... | |
| void | counter_subfun (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Total count of Sub-functionalization events.  More... | |
| void | counter_cogain (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Co-evolution (joint gain or loss)  More... | |
| void | counter_longest (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Longest branch mutates (either by gain or by loss)  More... | |
| void | counter_neofun (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Total number of neofunctionalization events.  More... | |
| void | counter_pairwise_neofun_singlefun (PhyloCounters *counters, size_t nfunA, size_t duplication=Geese::etype_default) | 
| Total number of neofunctionalization events sum_u sum_{w < u} [x(u,a)*(1 - x(w,a)) + (1 - x(u,a)) * x(w,a)] change stat: delta{x(u,a): 0->1} = 1 - 2 * x(w,a)  More... | |
| void | counter_neofun_a2b (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Total number of neofunctionalization events.  More... | |
| void | counter_co_opt (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Function co-opting.  More... | |
| void | counter_k_genes_changing (PhyloCounters *counters, size_t k, size_t duplication=Geese::etype_default) | 
| Indicator function. Equals to one if \(k\) genes changed and zero otherwise.  More... | |
| void | counter_less_than_p_prop_genes_changing (PhyloCounters *counters, double p, size_t duplication=Geese::etype_default) | 
| Indicator function. Equals to one if \(k\) genes changed and zero otherwise.  More... | |
| void | counter_gains_from_0 (PhyloCounters *counters, std::vector< size_t > nfun, size_t duplication=Geese::etype_default) | 
| Used when all the functions are in 0 (like the root node prob.)  More... | |
| void | counter_overall_gains_from_0 (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Used when all the functions are in 0 (like the root node prob.)  More... | |
| void | counter_pairwise_overall_change (PhyloCounters *counters, size_t duplication=Geese::etype_default) | 
| Used when all the functions are in 0 (like the root node prob.)  More... | |
| void | counter_pairwise_preserving (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Used when all the functions are in 0 (like the root node prob.)  More... | |
| void | counter_pairwise_first_gain (PhyloCounters *counters, size_t nfunA, size_t nfunB, size_t duplication=Geese::etype_default) | 
| Used when all the functions are in 0 (like the root node prob.)  More... | |