/* Joel Heinrich 30 Jun 2004 Bayesian limit calculator: Returns su such that beta == postint(su,n,e0,esig,b0,bsig,alpha); */ #include #include #include "bayesianlimit.h" double blimit(double beta,int n,double e0,double esig, double b0,double bsig,double alpha) { const double kappa = (esig!=0) ? e0/(esig*esig) : 1; double x0=0, x1=1, dx=1, dxp=2; assert(beta>=0);assert(beta<1); if(beta==0) return 0; while( (dx=x1-x0)>DBL_EPSILON && dx=0);assert(beta<1); if(beta==0) return 0; while( (dx=x1-x0)>DBL_EPSILON && dx=0);assert(beta<1); if(beta==0) return 0; while( (dx=x1-x0)>DBL_EPSILON && dx