* of the spline function (less than the smallest knot point or greater
* than the largest knot point)
*/
public double value(double v) throws ArgumentOutsideDomainException {
if (v < knots[0] || v > knots[n]) {
throw new ArgumentOutsideDomainException(v, knots[0], knots[n]);
}
int i = Arrays.binarySearch(knots, v);
if (i < 0) {
i = -i - 2;
}