protected Double getMaxDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double max = Double.NEGATIVE_INFINITY; for (int i = 0; i < intervals.length; i++) { double val = ((Number) getValue(intervals[i])).doubleValue(); max = Math.max(val, max); } return max; }
protected Double getMinDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double min = Double.POSITIVE_INFINITY; for (int i = 0; i < intervals.length; i++) { double val = ((Number) getValue(intervals[i])).doubleValue(); min = Math.min(val, min); } return min; }
protected Double getMaxDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double max = Double.NEGATIVE_INFINITY; for (int i = 0; i < intervals.length; i++) { double val = ((Number) getValue(intervals[i])).doubleValue(); max = Math.max(val, max); } return max; }
protected Double getMinDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double min = Double.POSITIVE_INFINITY; for (int i = 0; i < intervals.length; i++) { double val = ((Number) getValue(intervals[i])).doubleValue(); min = Math.min(val, min); } return min; }
protected BigDecimal getAverageBigDecimal(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double[] weights = getIntervalsWeight(interval.getLow(), interval.getHigh(), intervals); BigDecimal result = new BigDecimal(0.0); BigDecimal period = new BigDecimal(0.0); for (int i = 0; i < intervals.length; i++) { BigDecimal w = new BigDecimal(weights[i]); period = period.add(w); w = w.multiply(new BigDecimal(((Number) getValue(intervals[i])).doubleValue())); result = result.add(w); } return result.divide(period, 10, RoundingMode.HALF_EVEN); }
protected BigDecimal getAverageBigDecimal(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double[] weights = getIntervalsWeight(interval.getLow(), interval.getHigh(), intervals); BigDecimal result = new BigDecimal(0.0); BigDecimal period = new BigDecimal(0.0); for (int i = 0; i < intervals.length; i++) { BigDecimal w = new BigDecimal(weights[i]); period = period.add(w); w = w.multiply(new BigDecimal(((Number) getValue(intervals[i])).doubleValue())); result = result.add(w); } return result.divide(period, 10, RoundingMode.HALF_EVEN); }
protected Object getFirst(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } return getValue(intervals[0]); }
protected Object getLast(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } return getValue(intervals[intervals.length - 1]); }
protected Object getFirst(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } return getValue(intervals[0]); }
protected Object getLast(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } return getValue(intervals[intervals.length - 1]); }
protected Double getAverageDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double[] weights = getIntervalsWeight(interval.getLow(), interval.getHigh(), intervals); double result = 0.0, period = 0.0; for (int i = 0; i < intervals.length; i++) { double w = weights[i]; period += w; w *= ((Number) getValue(intervals[i])).doubleValue(); result += w; } return result / period; }
protected Double getAverageDouble(final Interval interval) { if (size == 0) { return null; } int[] intervals = getOverlappingIntervals(interval.getLow(), interval.getHigh()); if (intervals.length == 0) { return null; } double[] weights = getIntervalsWeight(interval.getLow(), interval.getHigh(), intervals); double result = 0.0, period = 0.0; for (int i = 0; i < intervals.length; i++) { double w = weights[i]; period += w; w *= ((Number) getValue(intervals[i])).doubleValue(); result += w; } return result / period; }