docs: protected double computeNNForUniformData(final KNNQuery<NumberVector> knnQuery, final double[] min, final double[] extend) {
      final Random rand = random.getSingleThreadedRandom();
      final int dim = min.length;
  
      double[] buf = new double[dim];
  
      double u = 0.;
      for(int i = 0; i < sampleSize; i++) {
        // New random vector
        for(int d = 0; d < buf.length; d++) {
          buf[d] = min[d] + (rand.nextDouble() * extend[d]);
        }
        double kdist = knnQuery.getKNNForObject(DoubleVector.wrap(buf), k).getKNNDistance();
        u += MathUtil.powi(kdist, dim);
      }
      return u;
    }