<p dir="auto">It would be very convenient if <code class="notranslate">UnivariateSpline.__call__()</code> would support evaluation on a grid. The following example illustrates the use case. With scipy-0.12.1 and current git master (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/scipy/scipy/commit/4a5d2ae012e97af7ac07ce4cf5b4666c05dd0044/hovercard" href="https://github.com/scipy/scipy/commit/4a5d2ae012e97af7ac07ce4cf5b4666c05dd0044"><tt>4a5d2ae</tt></a>) it fails on the last line:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="#!/usr/bin/env python
import numpy as np
from scipy.interpolate import UnivariateSpline

x = np.linspace(-3, 3, 100)
y = np.exp(-x**2)
s = UnivariateSpline(x, y)

# But in my case x is a function of x1 and x2:
x1 = np.linspace(-3, 3, 1000)
x2 = np.linspace(-3, 3, 1000)
xx1, xx2 = np.meshgrid(x1, x2)
xx = np.sqrt(4.2 * xx1**2 + xx2**2)

yy = s(xx)  # bang!"><pre class="notranslate"><code class="notranslate">#!/usr/bin/env python
import numpy as np
from scipy.interpolate import UnivariateSpline

x = np.linspace(-3, 3, 100)
y = np.exp(-x**2)
s = UnivariateSpline(x, y)

# But in my case x is a function of x1 and x2:
x1 = np.linspace(-3, 3, 1000)
x2 = np.linspace(-3, 3, 1000)
xx1, xx2 = np.meshgrid(x1, x2)
xx = np.sqrt(4.2 * xx1**2 + xx2**2)

yy = s(xx)  # bang!
</code></pre></div>
<p dir="auto">The <a href="http://docs.scipy.org/doc/scipy-dev/reference/generated/scipy.interpolate.UnivariateSpline.html" rel="nofollow"><code class="notranslate">scipy.interpolate.UnivariateSpline</code></a> class and its subclasses only support one-dimensional univariate spline-curves like <a href="http://docs.scipy.org/doc/scipy-dev/reference/generated/scipy.interpolate.splrep.html" rel="nofollow"><code class="notranslate">scipy.interpolate.splrep</code></a> does, but not multidimensional univariate splines like <a href="http://docs.scipy.org/doc/scipy-dev/reference/generated/scipy.interpolate.splprep.html" rel="nofollow"><code class="notranslate">scipy.interpolate.splprep</code></a>.</p>
<p dir="auto">I would be nice to have an object-oriented model for multidimensional univariate splines, even if not all features of the <code class="notranslate">scipy.interpolate.UnivariateSpline</code> class might be available. As far as I can see, at least evaluation and derivation should be available.</p>