public double doTrial()

in src/main/java/org/apache/datasketches/characterization/quantiles/DoublesSketchAccuracyProfile.java [68:96]


  public double doTrial() {
    shuffle(inputValues);

    // build sketch
    final UpdateDoublesSketch updateSketch = builder.build();
    for (int i = 0; i < inputValues.length; i++) {
      updateSketch.update(inputValues[i]);
    }

    final DoublesSketch sketch = useCompact ? updateSketch.compact() : updateSketch;

    // query sketch and gather results
    double maxRankError = 0;
    if (useBulk) {
      final double[] estRanks = sketch.getCDF(queryValues);
      for (int i = 0; i < inputValues.length; i++) {
        final double trueRank = (double) i / inputValues.length;
        maxRankError = Math.max(maxRankError, Math.abs(trueRank - estRanks[i]));
      }
    } else {
      for (int i = 0; i < inputValues.length; i++) {
        final double trueRank = (double) i / inputValues.length;
        //final double estRank = sketch.getRank(i); // this was not released yet
        final double estRank = sketch.getCDF(new double[] {i})[0];
        maxRankError = Math.max(maxRankError, Math.abs(trueRank - estRank));
      }
    }
    return maxRankError;
  }