def hermvander(x, deg):
ideg = int(deg)<EOL>if ideg != deg:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>if ideg < <NUM_LIT:0>:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>x = np.array(x, copy=<NUM_LIT:0>, ndmin=<NUM_LIT:1>) + <NUM_LIT:0.0><EOL>dims = (ideg + <NUM_LIT:1>,) + x.shape<EOL>dtyp = x.dtype<EOL>v = np.empty(dims, dtype=dtyp)<EOL>v[<NUM_LIT:0>] = x*<NUM_LIT:0> + <NUM_LIT:1><EOL>if ideg > <NUM_LIT:0>:<EOL><INDENT>x2 = x*<NUM_LIT:2><EOL>v[<NUM_LIT:1>] = x2<EOL>for i in range(<NUM_LIT:2>, ideg + <NUM_LIT:1>):<EOL><INDENT>v[i] = (v[i-<NUM_LIT:1>]*x2 - v[i-<NUM_LIT:2>]*(<NUM_LIT:2>*(i - <NUM_LIT:1>)))<EOL><DEDENT><DEDENT>return np.rollaxis(v, <NUM_LIT:0>, v.ndim)<EOL>
Pseudo-Vandermonde matrix of given degree.

    Returns the pseudo-Vandermonde matrix of degree `deg` and sample points
    `x`. The pseudo-Vandermonde matrix is defined by

    .. math:: V[..., i] = H_i(x),

    where `0 <= i <= deg`. The leading indices of `V` index the elements of
    `x` and the last index is the degree of the Hermite polynomial.

    If `c` is a 1-D array of coefficients of length `n + 1` and `V` is the
    array ``V = hermvander(x, n)``, then ``np.dot(V, c)`` and
    ``hermval(x, c)`` are the same up to roundoff. This equivalence is
    useful both for least squares fitting and for the evaluation of a large
    number of Hermite series of the same degree and sample points.

    Parameters
    ----------
    x : array_like
        Array of points. The dtype is converted to float64 or complex128
        depending on whether any of the elements are complex. If `x` is
        scalar it is converted to a 1-D array.
    deg : int
        Degree of the resulting matrix.

    Returns
    -------
    vander : ndarray
        The pseudo-Vandermonde matrix. The shape of the returned matrix is
        ``x.shape + (deg + 1,)``, where The last index is the degree of the
        corresponding Hermite polynomial.  The dtype will be the same as
        the converted `x`.

    Examples
    --------
    >>> from numpy.polynomial.hermite import hermvander
    >>> x = np.array([-1, 0, 1])
    >>> hermvander(x, 3)
    array([[ 1., -2.,  2.,  4.],
           [ 1.,  0., -2., -0.],
           [ 1.,  2.,  2., -4.]])