public class DurationFunctionExtremumIndicated extends DurationFunctionFinding
DurationFunctionExplorer that a function has a local extremum
 indicated by three samples.| Constructor and Description | 
|---|
DurationFunctionExtremumIndicated(DurationFunctionExplorer explorer,
                                 DurationFunctionDetails function,
                                 Duration leftDuration,
                                 double leftValue,
                                 Duration middleDuration,
                                 double middleValue,
                                 Duration rightDuration,
                                 double rightValue)
Initializes a new instance. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
DurationFunctionExtremumFound | 
exploreExtremumForCrossing(DurationFunctionThresholdDetails closestThreshold,
                          DurationFunctionThresholdDetails furthestThreshold,
                          boolean[] converged)
Searches an extremum until either the precise date at which the function reaches its extremum is found, or it is
    determined that this extremum will not result in a crossing. 
 | 
DurationFunctionExtremumFound | 
findPreciseExtremum()
Finds the precise date at which the function reaches its extremum. 
 | 
DurationFunctionExplorer | 
getExplorer()
Gets the  
DurationFunctionExplorer that found this indicated extremum. | 
ExtremumType | 
getExtremumType()
Gets a value indicating whether the extremum is a minimum or maximum. 
 | 
DurationFunctionDetails | 
getFunction()
Gets the function for which the extremum is indicated. 
 | 
boolean | 
getIsEndpointExtremum()
Gets a value indicating whether or not this extremum occurred at one of the endpoints
    of an interval explored with  
DurationFunctionExplorer.explore(Duration,Duration). | 
Duration | 
getLeftDuration()
Gets the left date. 
 | 
FunctionSegmentSlope | 
getLeftSegmentSlope()
Gets the slope between the left and middle samples. 
 | 
double | 
getLeftValue()
Gets the left function value. 
 | 
Duration | 
getMiddleDuration()
Gets the middle date. 
 | 
double | 
getMiddleValue()
Gets the middle function value. 
 | 
Duration | 
getRightDuration()
Gets the right date. 
 | 
FunctionSegmentSlope | 
getRightSegmentSlope()
Gets the slope between the middle and right samples. 
 | 
double | 
getRightValue()
Gets the right function value. 
 | 
public DurationFunctionExtremumIndicated(DurationFunctionExplorer explorer, DurationFunctionDetails function, @Nonnull Duration leftDuration, double leftValue, @Nonnull Duration middleDuration, double middleValue, @Nonnull Duration rightDuration, double rightValue)
explorer - The explorer that found the indicated extremum.function - The function for which an extremum was identified.leftDuration - The left duration.leftValue - The left function value.middleDuration - The middle duration.middleValue - The middle function value.rightDuration - The right duration.rightValue - The right function value.public final DurationFunctionExplorer getExplorer()
DurationFunctionExplorer that found this indicated extremum.public final DurationFunctionDetails getFunction()
public final double getLeftValue()
public final double getMiddleValue()
public final double getRightValue()
@Nonnull public final FunctionSegmentSlope getLeftSegmentSlope()
@Nonnull public final FunctionSegmentSlope getRightSegmentSlope()
@Nonnull public final ExtremumType getExtremumType()
public final boolean getIsEndpointExtremum()
DurationFunctionExplorer.explore(Duration,Duration).
    Endpoint extrema do not necessarily indicate places in the function have a derivative of zero,
    but they can still be global minima or maxima over the evaluation interval.@Nonnull public final DurationFunctionExtremumFound findPreciseExtremum()
@Nonnull public final DurationFunctionExtremumFound exploreExtremumForCrossing(DurationFunctionThresholdDetails closestThreshold, DurationFunctionThresholdDetails furthestThreshold, @Nonnull boolean[] converged)
Note that if the precise location of the extremum is not found due to it not being a candidate for a threshold crossing
    then a LocalExtremumFound (add / remove) event will not be fired.
closestThreshold - The threshold which is most likely to be crossed by this extremum, such that if this threshold is not crossed
    by the extremum no other threshold will be crossed.furthestThreshold - The threshold which is least likely to be crossed by this extremum, such that if this threshold is crossed
    by the extremum all other thresholds will be crossed.converged - This parameter will be set to true if returned extremum has converged, either because it resulted in a crossing or because
    it converged before it could be definitely determined to not be likely to cross the threshold.