Example #1
0
  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);
}