public final class GridDescriptiveStatistics extends Object
Modifier and Type | Method and Description |
---|---|
static double |
averageFigureOfMerit(Iterable<? extends CoverageGridPointWithResults> gridPoints,
FigureOfMerit<Double> function)
Computes the average of a given figure of merit over the grid (ignoring grid weighting).
|
static double |
averageWeightedFigureOfMerit(Iterable<? extends CoverageGridPointWithResults> gridPoints,
FigureOfMerit<Double> function)
|
static JulianDate |
completeSatisfactionTime(Iterable<? extends CoverageGridPointWithResults> gridPoints)
Gets the earliest time at which satisfaction has been achieved (not necessarily concurrently) for all the
grid points, or
null if one or more grid points are never satisfied. |
static GridTimeSampledValues |
computeFigureOfMeritData(CoverageResults grid,
IFigureOfMeritDefinition figureOfMerit,
TimeInterval interval,
Duration stepSize)
Compute the given figure of merit over the coverage grid.
|
static List<GridTimeSampledValues> |
computeFigureOfMeritData(CoverageResults grid,
List<IFigureOfMeritDefinition> figuresOfMerit,
TimeInterval interval,
Duration stepSize)
Compute the given figure of merit over the coverage grid.
|
static double |
instantaneousPercentCovered(Iterable<? extends CoverageGridPointWithResults> gridPoints,
JulianDate time)
Computes the percentage of the grid that is covered at the given time
based on whether each individual grid point representing a given area is covered.
|
static double |
instantaneousWeightCovered(Iterable<? extends CoverageGridPointWithResults> gridPoints,
JulianDate time)
Computes the total weight of the points on the grid that are covered at a given time.
|
static <T extends Comparable<T>> |
maximumFigureOfMerit(Iterable<? extends CoverageGridPointWithResults> gridPoints,
FigureOfMerit<T> function)
Computes the maximum of a given figure of merit over the grid, based on the grid
point weights (usually area).
|
static <T extends Comparable<T>> |
minimumFigureOfMerit(Iterable<? extends CoverageGridPointWithResults> gridPoints,
FigureOfMerit<T> function)
Computes the minimum of a given figure of merit over the grid.
|
static double[] |
percentAccumulated(Iterable<? extends CoverageGridPointWithResults> gridPoints,
JulianDate start,
JulianDate stop,
Duration step)
Given a time after a start time, computes the highest percentage of the grid
which has been covered at any one time after the start and before the time of interest.
|
static double |
percentCovered(Iterable<? extends CoverageGridPointWithResults> gridPoints)
Computes the percentage of the grid that is covered based on whether each
individual grid point representing a given area is covered at any time.
|
static TimeIntervalCollection |
satisfactionIntervals(Iterable<? extends CoverageGridPointWithResults> gridPoints)
Returns the set of intervals where the entire set of grid points is satisfied.
|
static TimeIntervalCollection |
unknownIntervals(Iterable<? extends CoverageGridPointWithResults> gridPoints)
Returns the set of intervals where coverage is unknown on any of the grid points.
|
static double |
weightOfCoveredPoints(Iterable<? extends CoverageGridPointWithResults> gridPoints)
Computes the total weight of the points on the grid which have been covered.
|
@Nonnull public static TimeIntervalCollection satisfactionIntervals(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints)
gridPoints
- The set of grid points to analyze.@Nonnull public static TimeIntervalCollection unknownIntervals(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints)
gridPoints
- The set of grid points to analyze.public static double percentCovered(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints)
This method only works with static grids.
gridPoints
- The data on the coverage intervals to analyze.IllegalStateException
- Thrown if any of the weight scalars for the input grid points varies in time.public static double instantaneousPercentCovered(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, @Nonnull JulianDate time)
gridPoints
- The data on the coverage intervals to analyze.time
- The time of interest.@Nonnull public static double[] percentAccumulated(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, @Nonnull JulianDate start, @Nonnull JulianDate stop, @Nonnull Duration step)
gridPoints
- The coverage grid which must contain the coverage intervals
on each of the grid points.start
- The start of the coverage accumulation.stop
- The time of interest at which to report the accumulated percent coverage.step
- The time step at which to sample the coverage intervals.public static double weightOfCoveredPoints(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints)
This method only works with static grids. For grids that use geometric values for the statistical weight this value could be area or volume covered, for example.
gridPoints
- The coverage grid points. These points must contain results.IllegalStateException
- Thrown if any of the weight scalars for the input grid points varies in time.public static double instantaneousWeightCovered(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, @Nonnull JulianDate time)
For grids that use geometric values for the statistical weight this value could be area or volume covered, for example.
gridPoints
- The coverage grid points. These points must contain results.time
- The time of interest at which to compute the coverage area.public static double averageFigureOfMerit(Iterable<? extends CoverageGridPointWithResults> gridPoints, FigureOfMerit<Double> function)
gridPoints
- The coverage grid points. These points must contain results.function
- The figure of merit to average.public static double averageWeightedFigureOfMerit(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, FigureOfMerit<Double> function)
Weight
(get
/ set
).
This method only works with static grids.
gridPoints
- The coverage grid points. These points must contain results.function
- The figure of merit to average.IllegalStateException
- Thrown if any of the weight scalars for the input grid points varies in time.public static <T extends Comparable<T>> T minimumFigureOfMerit(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, FigureOfMerit<T> function)
T
- The type of value produced by the figure of merit.gridPoints
- The coverage grid points. These points must contain results.function
- The figure of merit.public static <T extends Comparable<T>> T maximumFigureOfMerit(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints, FigureOfMerit<T> function)
T
- The type of value produced by the figure of merit.gridPoints
- The coverage grid points. These points must contain results.function
- The figure of merit.public static GridTimeSampledValues computeFigureOfMeritData(CoverageResults grid, IFigureOfMeritDefinition figureOfMerit, TimeInterval interval, @Nonnull Duration stepSize)
Calls GridTimeSampledValues.computeData(CoverageResults,IFigureOfMeritDefinition,TimeInterval,Duration)
on GridTimeSampledValues
.
grid
- The coverage grid results.figureOfMerit
- The figure of merit to compute.interval
- The time interval over which to compute.stepSize
- The step size at which to compute.public static List<GridTimeSampledValues> computeFigureOfMeritData(CoverageResults grid, List<IFigureOfMeritDefinition> figuresOfMerit, TimeInterval interval, @Nonnull Duration stepSize)
Calls GridTimeSampledValues.computeData(CoverageResults,List,TimeInterval,Duration)
on GridTimeSampledValues
.
grid
- The coverage grid results.figuresOfMerit
- The list of figures of merit to compute.interval
- The time interval over which to compute.stepSize
- The step size at which to compute.figuresOfMerit
containing the
data for each grid point sampled over time.@Nullable public static JulianDate completeSatisfactionTime(@Nonnull Iterable<? extends CoverageGridPointWithResults> gridPoints)
null
if one or more grid points are never satisfied.gridPoints
- The grid points and their coverage results.