'Derivatives with respect to the coefficients.
This is an array with Hermite polynomials:
.. math::
H_{x_0}H_{y_0}, H_{x_1}H_{y_0}...H_{x_n}H_{y_0}...H_{x_n}H_{y_m}
Parameters
x : ndarray
input
y : ndarray
input
params : throw away parameter
parameter list returned by non-linear fitters
Returns
result : ndarray
The Vandermonde matrix'

def fit_deriv(self, x, y, *params):

    if (x.shape != y.shape):
        raise ValueError(u'x    and    y    must    have    the    same    shape')
    x = x.flatten()
    y = y.flatten()
    x_deriv = self._hermderiv1d(x, (self.x_degree + 1)).T
    y_deriv = self._hermderiv1d(y, (self.y_degree + 1)).T
    ij = []
    for i in range((self.y_degree + 1)):
        for j in range((self.x_degree + 1)):
            ij.append((x_deriv[j] * y_deriv[i]))
    v = np.array(ij)
    return v.T
