'Evaluate spline (or its nu-th derivative) at positions x.
Parameters
x : array_like
A 1-D array of points at which to return the value of the smoothed
spline or its derivatives. Note: x can be unordered but the
evaluation is more efficient if x is (partially) ordered.
nu  : int
The order of derivative of the spline to compute.
ext : int
Controls the value returned for elements of ``x`` not in the
interval defined by the knot sequence.
* if ext=0 or \'extrapolate\', return the extrapolated value.
* if ext=1 or \'zeros\', return 0
* if ext=2 or \'raise\', raise a ValueError
* if ext=3 or \'const\', return the boundary value.
The default value is 0, passed from the initialization of
UnivariateSpline.'

def __call__(self, x, nu=0, ext=None):

    x = np.asarray(x)
    if (x.size == 0):
        return array([])
    if (ext is None):
        ext = self.ext
    else:
        try:
            ext = _extrap_modes[ext]
        except KeyError:
            raise ValueError(('Unknown    extrapolation    mode    %s.' % ext))
    return fitpack.splev(x, self._eval_args, der=nu, ext=ext)
