UltraNest
draw.h
Go to the documentation of this file.
1 #ifndef ULTRANEST_DRAW
2 #define ULTRANEST_DRAW
3 
4 #include <gsl/gsl_randist.h>
5 #include <gsl/gsl_rng.h>
6 #include "common.h"
7 
16 typedef struct {
18  unsigned int ndim;
20  gsl_rng * rng;
24  unsigned int niter;
31  unsigned int phase;
32  /* direct sampling specific */
34  unsigned int ndirect;
36  unsigned int ndirect_accepts;
38  double * region_low;
40  double * region_high;
41  /* RadFriends specific */
43  unsigned int nfriends;
45  unsigned int nfriends_accepts;
47  double maxdistance;
48  /* MCMC specific */
50  unsigned int nsteps;
54  unsigned int mcmc_naccepts;
56  unsigned int mcmc_nrejects;
58  unsigned int mcmc_nskip;
60  unsigned int mcmc_naccepts_total;
62  unsigned int mcmc_nrejects_total;
64 
76  const unsigned int ndim, const unsigned int nsteps,
77  const double proposal_scale);
78 
89  point * current, const point ** members, const unsigned int nmembers);
90 
101 unsigned int ultranest_draw_next(ultranest_draw_state * state, point * current,
102  const point ** live_points, const unsigned int nlive_points);
103 
108 
109 #endif
110 
unsigned int ultranest_draw_generate_direct(ultranest_draw_state *state, point *current, const point **members, const unsigned int nmembers)
Definition: draw.c:83
double maxdistance
characteristic distance of RadFriends
Definition: draw.h:47
unsigned int ndirect
number of direct draws
Definition: draw.h:34
unsigned int phase
Definition: draw.h:31
unsigned int ultranest_draw_next(ultranest_draw_state *state, point *current, const point **live_points, const unsigned int nlive_points)
Definition: draw.c:297
unsigned int nfriends
number of RadFriends draws
Definition: draw.h:43
unsigned int ndim
dimensionality
Definition: draw.h:18
Definition: draw.h:16
unsigned int mcmc_nrejects_total
MCMC rejects (total)
Definition: draw.h:62
double * region_high
Bounding rectangle on sampling region: high.
Definition: draw.h:40
unsigned int nsteps
number of MCMC steps
Definition: draw.h:50
double * region_low
Bounding rectangle on sampling region: low.
Definition: draw.h:38
LikelihoodFunc
Likelihood function.
Definition: draw.h:22
double proposal_scale
scale of proposal (multiplied by maxdistance)
Definition: draw.h:52
Definition: common.h:8
unsigned int ndirect_accepts
number of accepts by RadFriends
Definition: draw.h:36
unsigned int mcmc_nrejects
MCMC rejects of current chain.
Definition: draw.h:56
unsigned int nfriends_accepts
number of accepts through likelihood constrain
Definition: draw.h:45
unsigned int niter
iteration counter
Definition: draw.h:24
unsigned int mcmc_naccepts_total
MCMC accepts (total)
Definition: draw.h:60
ultranest_draw_state * ultranest_draw_init(LikelihoodFunc, const unsigned int ndim, const unsigned int nsteps, const double proposal_scale)
Definition: draw.c:18
unsigned int mcmc_nskip
MCMC skips due to RadFriends.
Definition: draw.h:58
void ultranest_draw_print_stats(const ultranest_draw_state *state)
Definition: draw.c:286
unsigned int mcmc_naccepts
MCMC accepts of current chain.
Definition: draw.h:54
gsl_rng * rng
PRNG state.
Definition: draw.h:20