File: //usr/local/lib/python3.10/dist-packages/numpy/polynomial/__pycache__/hermite_e.cpython-310.pyc
o
���g�� � @ sv d Z ddlZddlmZ ddlmZ ddlm Z
ddlmZ g d�Z
e
jZdd � Zd
d� Ze�ddg�Ze�dg�Ze�dg�Ze�ddg�Zd
d� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� ZdBdd�ZdCdd�Zdg dddfd d!�Z dDd#d$�Z!d%d&� Z"d'd(� Z#d)d*� Z$d+d,� Z%d-d.� Z&d/d0� Z'd1d2� Z(dEd4d5�Z)d6d7� Z*d8d9� Z+d:d;� Z,d<d=� Z-d>d?� Z.G d@dA� dAe�Z/dS )Fa.
===================================================================
HermiteE Series, "Probabilists" (:mod:`numpy.polynomial.hermite_e`)
===================================================================
This module provides a number of objects (mostly functions) useful for
dealing with Hermite_e series, including a `HermiteE` class that
encapsulates the usual arithmetic operations. (General information
on how this module represents and works with such polynomials is in the
docstring for its "parent" sub-package, `numpy.polynomial`).
Classes
-------
.. autosummary::
:toctree: generated/
HermiteE
Constants
---------
.. autosummary::
:toctree: generated/
hermedomain
hermezero
hermeone
hermex
Arithmetic
----------
.. autosummary::
:toctree: generated/
hermeadd
hermesub
hermemulx
hermemul
hermediv
hermepow
hermeval
hermeval2d
hermeval3d
hermegrid2d
hermegrid3d
Calculus
--------
.. autosummary::
:toctree: generated/
hermeder
hermeint
Misc Functions
--------------
.. autosummary::
:toctree: generated/
hermefromroots
hermeroots
hermevander
hermevander2d
hermevander3d
hermegauss
hermeweight
hermecompanion
hermefit
hermetrim
hermeline
herme2poly
poly2herme
See also
--------
`numpy.polynomial`
� N)�normalize_axis_index� )� polyutils)�ABCPolyBase)� hermezero�hermeone�hermex�hermedomain� hermeline�hermeadd�hermesub� hermemulx�hermemul�hermediv�hermepow�hermeval�hermeder�hermeint�
herme2poly�
poly2herme�hermefromroots�hermevander�hermefit� hermetrim�
hermeroots�HermiteE�
hermeval2d�
hermeval3d�hermegrid2d�hermegrid3d�
hermevander2d�
hermevander3d�hermecompanion�
hermegauss�hermeweightc C sF t �| g�\} t| �d }d}t|dd�D ]}tt|�| | �}q|S )a�
poly2herme(pol)
Convert a polynomial to a Hermite series.
Convert an array representing the coefficients of a polynomial (relative
to the "standard" basis) ordered from lowest degree to highest, to an
array of the coefficients of the equivalent Hermite series, ordered
from lowest to highest degree.
Parameters
----------
pol : array_like
1-D array containing the polynomial coefficients
Returns
-------
c : ndarray
1-D array containing the coefficients of the equivalent Hermite
series.
See Also
--------
herme2poly
Notes
-----
The easy way to do conversions between polynomial basis sets
is to use the convert method of a class instance.
Examples
--------
>>> from numpy.polynomial.hermite_e import poly2herme
>>> poly2herme(np.arange(4))
array([ 2., 10., 2., 3.])
r r ���)�pu� as_series�len�ranger r
)�pol�deg�res�i� r. �E/usr/local/lib/python3.10/dist-packages/numpy/polynomial/hermite_e.pyr a s &r c C s� ddl m}m}m} t�| g�\} t| �}|dkr| S |dkr!| S | d }| d }t|d dd�D ]}|}|| |d ||d �}||||��}q1||||��S )a
Convert a Hermite series to a polynomial.
Convert an array representing the coefficients of a Hermite series,
ordered from lowest degree to highest, to an array of the coefficients
of the equivalent polynomial (relative to the "standard" basis) ordered
from lowest to highest degree.
Parameters
----------
c : array_like
1-D array containing the Hermite series coefficients, ordered
from lowest order term to highest.
Returns
-------
pol : ndarray
1-D array containing the coefficients of the equivalent polynomial
(relative to the "standard" basis) ordered from lowest order term
to highest.
See Also
--------
poly2herme
Notes
-----
The easy way to do conversions between polynomial basis sets
is to use the convert method of a class instance.
Examples
--------
>>> from numpy.polynomial.hermite_e import herme2poly
>>> herme2poly([ 2., 10., 2., 3.])
array([0., 1., 2., 3.])
r )�polyadd�polysub�polymulx� ���r% )�
polynomialr0 r1 r2 r&