Legofit
infers population history from nucleotide site patterns.
gptree.h
1#ifndef ARR_GPTREE_H
2# define ARR_GPTREE_H
3
4# include "typedefs.h"
5# include <stdio.h>
6# include <gsl/gsl_rng.h>
7
8void *GPTree_dup(const void *old);
9int GPTree_feasible(const void * vself, int verbose);
10void GPTree_free(void * vself);
11LblNdx GPTree_getLblNdx(void *vself);
12const char *GPTree_getNameFree(void * vself, int i);
13void GPTree_getParams(void *vself, int n, double x[n]);
14void *GPTree_new(const char *fname, Bounds bnd);
15unsigned GPTree_nsamples(const void *vself);
16int GPTree_nFree(const void *vself);
17void GPTree_brlen(void * vself, BranchTab * branchtab, gsl_rng * rng,
18 unsigned long nreps, int doSing,
19 long unsigned *event_counter);
20void GPTree_patprob(void *vself, BranchTab *branchtab,
21 gsl_rng *rng, unsigned long nreps,
22 int doSing);
23void GPTree_print(void *vself, FILE *fp);
24void GPTree_printParStore(void *vself, FILE *fp);
25void GPTree_printParStoreFree(void *vself, FILE *fp);
26void GPTree_randomize(void *vself, gsl_rng *rng);
27void GPTree_sanityCheck(void *vself, const char *file, int line);
28int GPTree_setParams(void *vself, int n, double x[n]);
29void GPTree_initStateVec(void *gpt, int ndx, int n, double x[n],
30 gsl_rng *rng);
31unsigned GPTree_nSamples(void *vself);
32#endif
33
34
void GPTree_getParams(void *self, int n, double x[n])
Copy free parameters from GPTree into an array.
Definition: gptree.c:139
void GPTree_free(void *vself)
GPTree destructor.
Definition: gptree.c:228
const char * GPTree_getNameFree(void *self, int i)
Return pointer to name of i'th free parameter.
Definition: gptree.c:86
void GPTree_initStateVec(void *gpt, int ndx, int n, double x[n], gsl_rng *rng)
Initialize vector x.
Definition: gptree.c:60
void * GPTree_dup(const void *vold)
Duplicate a GPTree object.
Definition: gptree.c:239
void GPTree_printParStoreFree(void *vself, FILE *fp)
Print a description of free parameters.
Definition: gptree.c:79
int GPTree_feasible(const void *vself, int verbose)
Are parameters within the feasible region?
Definition: gptree.c:356
void GPTree_randomize(void *vself, gsl_rng *rng)
Randomly perturb all free parameters while maintaining inequality constraints.
Definition: gptree.c:92
void * GPTree_new(const char *fname, Bounds bnd)
GPTree constructor.
Definition: gptree.c:197
LblNdx GPTree_getLblNdx(void *vself)
Get the LblNdx object from a GPTree.
Definition: gptree.c:346
void GPTree_printParStore(void *vself, FILE *fp)
Print a description of parameters.
Definition: gptree.c:73
int GPTree_nFree(const void *self)
Return number of free parameters.
Definition: gptree.c:144
void GPTree_brlen(void *vself, BranchTab *branchtab, gsl_rng *rng, unsigned long nreps, int doSing, long unsigned *event_counter)
Use coalescent simulation to estimate the mean branch length associated with each site pattern.
Definition: gptree.c:157
int GPTree_setParams(void *vself, int n, double x[n])
Set free parameters from an array.
Definition: gptree.c:125
Definition: parstore.h:10
Definition: branchtab.c:20
Definition: lblndx.h:8