source: branches/items/GDE/MrBAYES/mrbayes_3.2.1/tree.h

Last change on this file was 10416, checked in by aboeckma, 11 years ago

Added mr bayes (no menu yet)

File size: 5.4 KB
Line 
1#define         TREEBUFINCREASE   200
2
3/* tree utility functions */
4int       AddToTreeList (TreeList *treeList, Tree *tree);
5Tree     *AllocateTree (int numTaxa);
6Tree     *AllocateFixedTree (int numTaxa, int isRooted);
7int       AllocateTreePartitions (Tree *t);
8PolyTree *AllocatePolyTree (int numTaxa);
9int       AllocatePolyTreePartitions (PolyTree *pt);
10int       AllocatePolyTreeRelClockParams (PolyTree *pt, int nBSets, int nESets);
11int               AreTopologiesSame(Tree *t1, Tree *t2);
12int               AreTreesSame (Tree *t1, Tree *t2);
13int       BuildConstraintTree (Tree *t, PolyTree *pt, char **localTaxonNames);
14int       BuildRandomRTopology (Tree *t, SafeLong *seed);
15int       BuildRandomUTopology (Tree *t, SafeLong *seed);
16int       CheckConstraints (Tree *t);
17int       CheckSetConstraints (Tree *t);
18void      ColorClusters (TreeNode *p, int *index);
19void      CopySubtreeToTree (Tree *subtree, Tree *t);
20int       CopyToPolyTreeFromPolyTree (PolyTree *to, PolyTree *from);
21int       CopyToSpeciesTreeFromPolyTree (Tree *to, PolyTree *from);
22int       CopyToTreeFromPolyTree (Tree *to, PolyTree *from);
23void      CopyPolyNodes (PolyNode *p, PolyNode *q, int nLongsNeeded);
24int       CopyToTreeFromTree (Tree *to, Tree *from);
25void      CopyTreeNodes (TreeNode *p, TreeNode *q, int nLongsNeeded);
26void      CopyTreeToSubtree (Tree *t, Tree *subtree);
27int       Deroot(PolyTree *pt);
28void      EraseTreeList (TreeList *treeList);
29void      findAllowedClockrate (Tree *t, MrBFlt *minClockRate, MrBFlt *maxClockRate );
30void      FreePolyTree (PolyTree *pt);
31void      FreePolyTreePartitions (PolyTree *pt);
32void      FreePolyTreePopSizeParams (PolyTree *pt);
33void      FreePolyTreeRelClockParams (PolyTree *pt);
34void      FreeTree (Tree *t);
35void      FreeTreePartitions (Tree *pt);
36void      GetDatedNodeDepths (TreeNode *p, MrBFlt *nodeDepths);
37void      GetDatedNodes (TreeNode *p, TreeNode **datedNodes);
38void      GetDownPass (Tree *t);
39void      GetNodeDownPass (Tree *t, TreeNode *p, int *i, int *j);
40void      GetPolyAges (PolyTree *t);
41void      GetPolyDepths (PolyTree *t);
42void      GetPolyDownPass (PolyTree *t);
43void      GetPolyNodeDownPass (PolyTree *t, PolyNode *p, int *i, int *j);
44int       GetRandomEmbeddedSubtree (Tree *t, int nTerminals, SafeLong *seed, int *nEmbeddedTrees);
45int       GetFromTreeList (TreeList *treeList, Tree *tree);
46int       InitBrlens (Tree *t, MrBFlt v);
47int       InitCalibratedBrlens (Tree *t, MrBFlt minLength, SafeLong *seed);
48int       InitClockBrlens (Tree *t);
49int       IsCalibratedClockSatisfied (Tree *t,MrBFlt *minClockRate,MrBFlt *maxClockRate , MrBFlt tol);
50int       IsClockSatisfied (Tree *t, MrBFlt tol);
51int       IsTreeConsistent (Param *param, int chain, int state);
52int       LabelTree (Tree *t, char **taxonNames);
53void      Mark (TreeNode *p);
54void      MarkDatedSubtree (TreeNode *p);
55int           MoveCalculationRoot (Tree *t, int outgroup);
56int           MovePolyCalculationRoot (PolyTree *t, int outgroup);
57int       NumConstrainedTips (TreeNode *p);
58int       NumDatedTips (TreeNode *p);
59void      OrderTips (PolyTree *t);
60void      PrintNewick (char **s, int *len, Tree *t);
61void      PrintNodes (Tree *t);
62void      PrintPolyNodes (PolyTree *pt);
63int       PrunePolyTree (PolyTree *pt);
64int       RandPerturb (Tree *t, int nPert, SafeLong *seed);
65int       RandResolve (Tree *tt, PolyTree *t, SafeLong *seed, int destinationIsRooted);
66int       ResetBrlensFromTree (Tree *tree, Tree *vTree);
67void      ResetIntNodeIndices(PolyTree *t);
68void      ResetPolyTree (PolyTree *t);
69void      ResetPolyTreePartitions (PolyTree *pt);
70void      ResetPolyTreeRelClockParams (PolyTree *pt);
71int       ResetRootHeight (Tree *t, MrBFlt rootHeight);
72void      ResetTipIndices (PolyTree *pt);
73int       ResetTopology (Tree *t, char *s);
74int       ResetTopologyFromTree (Tree *tree, Tree *top);
75int       ResetTopologyFromPolyTree (Tree *tree, PolyTree *top);
76void      ResetTreePartitions (Tree *t);
77int       RetrieveRTopology (Tree *t, int *order);
78int       RetrieveRTree (Tree *t, int *order, MrBFlt *brlens);
79int       RetrieveRTreeWithIndices (Tree *t, int *order, MrBFlt *brlens);
80int       RetrieveUTopology (Tree *t, int *order);
81int       RetrieveUTree (Tree *t, int *order, MrBFlt *brlens);
82void      SetDatedNodeAges(Param* param, int chain, int state);
83void      SetNodeDepths (Tree *t);
84int       SetTreeNodeAges (Param *param, int chain, int state);
85int               ShowPolyNodes (PolyTree *pt);
86int       ShowTree (Tree *t);
87int       StoreRPolyTopology (PolyTree *t, int *order);
88int       StoreRPolyTree (PolyTree *t, int *order, MrBFlt *brlens);
89int       StoreRTopology (Tree *t, int *order);
90int       StoreRTree (Tree *t, int *order, MrBFlt *brlens);
91int       StoreRTreeWithIndices (Tree *t, int *order, MrBFlt *brlens);
92int       StoreUPolyTopology (PolyTree *t, int *order);
93int       StoreUPolyTree (PolyTree *t, int *order, MrBFlt *brlens);
94int       StoreUTopology (Tree *t, int *order);
95int       StoreUTree (Tree *t, int *order, MrBFlt *brlens);
96MrBFlt    TreeLen (Tree *t);
97void      Unmark (TreeNode *p);
98void      UpdateTreeWithClockrate (Tree *t, MrBFlt clockRate);
99void      WriteEventTree (TreeNode *p, int chain, Param *param);
100void      WriteEventTreeToPrintString (TreeNode *p, int chain, Param *param, int printAll);
101void      WriteEvolTree (TreeNode *p, int chain, Param *param);
102void      WriteTopologyToFile (FILE *fp, TreeNode *p, int isRooted);
103void      WriteTreeToPrintString (Param *param, int chain, TreeNode *p, int showBrlens, int isRooted);
Note: See TracBrowser for help on using the repository browser.