def hermder(c, m=<NUM_LIT:1>, scl=<NUM_LIT:1>, axis=<NUM_LIT:0>):
c = np.array(c, ndmin=<NUM_LIT:1>, copy=<NUM_LIT:1>)<EOL>if c.dtype.char in '<STR_LIT>':<EOL><INDENT>c = c.astype(np.double)<EOL><DEDENT>cnt, iaxis = [int(t) for t in [m, axis]]<EOL>if cnt != m:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>if cnt < <NUM_LIT:0>:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>if iaxis != axis:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>if not -c.ndim <= iaxis < c.ndim:<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>if iaxis < <NUM_LIT:0>:<EOL><INDENT>iaxis += c.ndim<EOL><DEDENT>if cnt == <NUM_LIT:0>:<EOL><INDENT>return c<EOL><DEDENT>c = np.rollaxis(c, iaxis)<EOL>n = len(c)<EOL>if cnt >= n:<EOL><INDENT>c = c[:<NUM_LIT:1>]*<NUM_LIT:0><EOL><DEDENT>else:<EOL><INDENT>for i in range(cnt):<EOL><INDENT>n = n - <NUM_LIT:1><EOL>c *= scl<EOL>der = np.empty((n,) + c.shape[<NUM_LIT:1>:], dtype=c.dtype)<EOL>for j in range(n, <NUM_LIT:0>, -<NUM_LIT:1>):<EOL><INDENT>der[j - <NUM_LIT:1>] = (<NUM_LIT:2>*j)*c[j]<EOL><DEDENT>c = der<EOL><DEDENT><DEDENT>c = np.rollaxis(c, <NUM_LIT:0>, iaxis + <NUM_LIT:1>)<EOL>return c<EOL>
Differentiate a Hermite series.

Returns the Hermite series coefficients `c` differentiated `m` times
along `axis`.  At each iteration the result is multiplied by `scl` (the
scaling factor is for use in a linear change of variable). The argument
`c` is an array of coefficients from low to high degree along each
axis, e.g., [1,2,3] represents the series ``1*H_0 + 2*H_1 + 3*H_2``
while [[1,2],[1,2]] represents ``1*H_0(x)*H_0(y) + 1*H_1(x)*H_0(y) +
2*H_0(x)*H_1(y) + 2*H_1(x)*H_1(y)`` if axis=0 is ``x`` and axis=1 is
``y``.

Parameters
----------
c : array_like
    Array of Hermite series coefficients. If `c` is multidimensional the
    different axis correspond to different variables with the degree in
    each axis given by the corresponding index.
m : int, optional
    Number of derivatives taken, must be non-negative. (Default: 1)
scl : scalar, optional
    Each differentiation is multiplied by `scl`.  The end result is
    multiplication by ``scl**m``.  This is for use in a linear change of
    variable. (Default: 1)
axis : int, optional
    Axis over which the derivative is taken. (Default: 0).

    .. versionadded:: 1.7.0

Returns
-------
der : ndarray
    Hermite series of the derivative.

See Also
--------
hermint

Notes
-----
In general, the result of differentiating a Hermite series does not
resemble the same operation on a power series. Thus the result of this
function may be "unintuitive," albeit correct; see Examples section
below.

Examples
--------
>>> from numpy.polynomial.hermite import hermder
>>> hermder([ 1. ,  0.5,  0.5,  0.5])
array([ 1.,  2.,  3.])
>>> hermder([-0.5,  1./2.,  1./8.,  1./12.,  1./16.], m=2)
array([ 1.,  2.,  3.])