Interface BoundCurveExtrapolator


  • public interface BoundCurveExtrapolator
    A curve extrapolator that has been bound to a specific curve.

    A bound extrapolator is created from a CurveExtrapolator. The bind process takes the definition of the extrapolator and combines it with the x-y values. This allows implementations to optimize extrapolation calculations.

    This interface is primarily used internally. Applications typically do not invoke these methods.

    • Method Detail

      • leftExtrapolate

        double leftExtrapolate​(double xValue)
        Left extrapolates the y-value from the specified x-value.

        This method is only intended to be invoked when the x-value is less than the x-value of the first node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the y-value cannot be calculated
      • leftExtrapolateFirstDerivative

        double leftExtrapolateFirstDerivative​(double xValue)
        Calculates the first derivative of the left extrapolated y-value at the specified x-value.

        This method is only intended to be invoked when the x-value is less than the x-value of the first node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the first derivative of the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the derivative cannot be calculated
      • leftExtrapolateParameterSensitivity

        DoubleArray leftExtrapolateParameterSensitivity​(double xValue)
        Calculates the parameter sensitivities of the left extrapolated y-value at the specified x-value.

        This method is only intended to be invoked when the x-value is less than the x-value of the first node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the parameter sensitivities of the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the sensitivity cannot be calculated
      • rightExtrapolate

        double rightExtrapolate​(double xValue)
        Right extrapolates the y-value from the specified x-value.

        This method is only intended to be invoked when the x-value is greater than the x-value of the last node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the y-value cannot be calculated
      • rightExtrapolateFirstDerivative

        double rightExtrapolateFirstDerivative​(double xValue)
        Calculates the first derivative of the right extrapolated y-value at the specified x-value.

        This method is only intended to be invoked when the x-value is greater than the x-value of the last node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the first derivative of the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the derivative cannot be calculated
      • rightExtrapolateParameterSensitivity

        DoubleArray rightExtrapolateParameterSensitivity​(double xValue)
        Calculates the parameter sensitivities of the right extrapolated y-value at the specified x-value.

        This method is only intended to be invoked when the x-value is greater than the x-value of the last node. The behavior is undefined if called with any other x-value.

        Parameters:
        xValue - the x-value to find the y-value for
        Returns:
        the parameter sensitivities of the extrapolated y-value for the specified x-value
        Throws:
        java.lang.RuntimeException - if the sensitivity cannot be calculated