/** * Description not yet available. * \param */ df1b2variable beta_deviate(const df1b2variable& _a,const df1b2variable& _b, const df1b2variable& _x,double eps) { df1b2variable& x= (df1b2variable&)(_x); df1b2variable& a= (df1b2variable&)(_a); df1b2variable& b= (df1b2variable&)(_b); df1b2variable y=cumd_norm(x); y=.9999999*y+.00000005; df1b2variable z=inv_cumd_beta_stable(a,b,y,eps); return z; }
/** * Description not yet available. * \param */ double inv_cumd_t(double n,double u,double eps) { double v,sgn; if (u<0.5) { v=2.0*u; sgn=-1.0; } else { v=2.0*(1.0-u); sgn=1.0; } double w=inv_cumd_beta_stable(0.5*n,0.5,v,eps); return sgn*sqrt(n*(1.0/w-1.0)); }
/** * Description not yet available. * \param */ df1b2variable inv_cumd_t(const df1b2variable& n,const df1b2variable& u, double eps) { double sgn; df1b2variable v; if (value(u)<0.5) { v=2.0*u; sgn=-1.0; } else { v=2.0*(1.0-u); sgn=1.0; } df1b2variable pfive=0.5; df1b2variable w=inv_cumd_beta_stable(0.5*n,pfive,v,eps); return sgn*sqrt(n*(1.0/w-1.0)); }