1 /* Stretched exponential distributions. 2 * 3 * SRE, Fri Aug 19 13:51:14 2005 [St. Louis] [xref STL9/146] 4 */ 5 #ifndef eslSTRETCHEXP_INCLUDED 6 #define eslSTRETCHEXP_INCLUDED 7 #include "esl_config.h" 8 9 #include "esl_histogram.h" 10 #include "esl_random.h" 11 12 extern double esl_sxp_pdf (double x, double mu, double lambda, double tau); 13 extern double esl_sxp_logpdf (double x, double mu, double lambda, double tau); 14 extern double esl_sxp_cdf (double x, double mu, double lambda, double tau); 15 extern double esl_sxp_logcdf (double x, double mu, double lambda, double tau); 16 extern double esl_sxp_surv (double x, double mu, double lambda, double tau); 17 extern double esl_sxp_logsurv(double x, double mu, double lambda, double tau); 18 extern double esl_sxp_invcdf (double p, double mu, double lambda, double tau); 19 20 extern double esl_sxp_generic_pdf (double x, void *params); 21 extern double esl_sxp_generic_cdf (double x, void *params); 22 extern double esl_sxp_generic_surv (double x, void *params); 23 extern double esl_sxp_generic_invcdf(double p, void *params); 24 25 extern int esl_sxp_Plot(FILE *fp, double mu, double lambda, double tau, 26 double (*func)(double x, double mu, double lambda, double tau), 27 double xmin, double xmax, double xstep); 28 29 30 extern double esl_sxp_Sample(ESL_RANDOMNESS *r, double mu, double lambda, double tau); 31 32 extern int esl_sxp_FitComplete(double *x, int n, 33 double *ret_mu, double *ret_lambda, double *ret_tau); 34 35 extern int esl_sxp_FitCompleteBinned(ESL_HISTOGRAM *g, 36 double *ret_mu, double *ret_lambda, double *ret_tau); 37 38 39 #endif /*eslSTRETCHEXP_INCLUDED*/ 40