ARB
DNAml_rates_1_0.h
Go to the documentation of this file.
1 // DNAml_rates.h
2 
3 /* Compile time switches for various updates to program:
4  * 0 gives original version
5  * 1 gives new version
6  */
7 
8 #ifndef CXXFORWARD_H
9 #include <cxxforward.h>
10 #endif
11 #ifndef ARBDBT_H
12 #include <arbdbt.h>
13 #endif
14 
15 #define Debug 1
16 
17 // Program constants and parameters
18 
19 #define maxsp 10000 // maximum number of species
20 #define maxsites 8000 // maximum number of sites
21 #define maxpatterns 8000 // max number of different site patterns
22 #define maxcategories 35 // maximum number of site types
23 #define nmlngth 10 // max. number of characters in species name
24 #define KI_MAX 256.0 // largest rate possible
25 #define RATE_STEP sqrt(sqrt(2.0)) // initial step size for rate search
26 #define MAX_ERROR 0.01 // max fractional error in rate calculation
27 #define MIN_INFO 4 // minimum number of informative sequences
28 #define UNDEF_CATEGORY 1 // category number to output for undefined rate
29 #define zmin 1.0E-15 // max branch prop. to -log(zmin) (= 34)
30 #define zmax (1.0 - 1.0E-6) // min branch prop. to 1.0-zmax (= 1.0E-6)
31 #define unlikely -1.0E300 // low likelihood for initialization
32 #define decimal_point '.'
33 
34 // the following macros are already defined in gmacros.h:
35 // #define ABS(x) (((x)< 0) ? -(x) : (x))
36 // #define MIN(x, y) (((x)<(y)) ? (x) : (y))
37 // #define MAX(x, y) (((x)>(y)) ? (x) : (y))
38 #define LOG(x) (((x)> 0) ? log(x) : hang("log domain error"))
39 #define nint(x) ((int) ((x)>0 ? ((x)+0.5) : ((x)-0.5)))
40 #define aint(x) ((double) ((int) (x)))
41 
42 
43 typedef double xtype;
44 struct node;
45 typedef node *nodeptr;
46 
47 #if defined(Cxx11)
49 #else // !defined(Cxx11)
50 const int MAXNODES = 2*maxsp+1;
51 #endif
52 
53 struct xarray {
57  xtype *a, *c, *g, *t;
58 };
59 
60 struct node {
61  double z;
64  int number;
67  char name[nmlngth+1]; // Space for null termination
68  char *tip; // Pointer to sequence data
69 };
70 
71 
72 struct tree {
73  double likelihood;
74  double log_f[maxpatterns];
77  int mxtips;
78  int ntips;
79  int nextnode;
80  int opt_level;
81  bool smoothed;
82  bool rooted;
83 };
84 
85 struct drawdata {
86  double tipmax;
87  int tipy;
88 };
89 
90 
91 
92 
int number
Definition: arbdbt.h:48
double likelihood
double z
nodeptr back
int ymax
char name[nmlngth+1]
xtype * t
double xtype
int xcoord
#define maxsp
xarray * next
xarray * x
nodeptr nodep[MAXNODES]
int mxtips
CONSTEXPR_INLINE int leafs_2_nodes(int leafs, TreeModel model)
Definition: arbdbt.h:53
char * tip
bool rooted
bool smoothed
node * nodeptr
xarray * prev
const int MAXNODES
int opt_level
nodeptr owner
int ntips
xtype * g
xtype * a
int ymin
xtype * c
double tipmax
nodeptr next
nodeptr start
int nextnode
double log_f[maxpatterns]
#define maxpatterns
#define CONSTEXPR
Definition: cxxforward.h:89
#define nmlngth
int ycoord