distribution_experiment(UnaryFunction probability , unsigned int classes) : equidistribution_experiment(classes), limit(classes) { for(unsigned int i = 0; i < classes-1; ++i) limit[i] = invert_monotone_inc(probability, (i+1)*0.05, 0, 1000); limit[classes-1] = std::numeric_limits<double>::infinity(); if(limit[classes-1] < std::numeric_limits<double>::max()) limit[classes-1] = std::numeric_limits<double>::max(); #if 0 std::cout << __PRETTY_FUNCTION__ << ": "; for(unsigned int i = 0; i < classes; ++i) std::cout << limit[i] << " "; std::cout << std::endl; #endif }
inline double quantile(const kolmogorov_smirnov_probability& dist, double val) { return invert_monotone_inc(boost::bind(&cdf, dist, _1), val, 0.0, 1000.0); }