Current File : //usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyo
�
E�`Qc@ s�dZddlmZddlZddljjZddl	m
Z
ddlmZm
Z
mZmZmZmZejdg�Zejddg�Zejd	dd
g�Zejddddg�Zejd
ddddg�Zejddddddg�Zejdddddddg�Zejddddddddg�Zejdddddddddg	�Zejdd dd!dd"dd#dd$g
�Zeeeeeeeeeeg
Zd%�Zd&efd'��YZd(efd)��YZ d*efd+��YZ!d,efd-��YZ"d.efd/��YZ#d0efd1��YZ$d2efd3��YZ%d4efd5��YZ&d6efd7��YZ'e(d8kr�e�ndS(9sTests for hermite module.

i����(tdivisionN(tpolyval(tTestCasetassert_almost_equalt
assert_raisestassert_equaltassert_trun_module_suiteiiii����ii�iii���iixi`���i i����i�i ���i@ip���i 
i����i�i�i���i�4i�ii vi��i�i��icC stj|dd�S(Nttolg���ư>(thermthermtrim(tx((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttrimst
TestConstantscB s,eZd�Zd�Zd�Zd�ZRS(cC sttjddg�dS(Ni����i(RR	t
hermdomain(tself((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermdomain!scC sttjdg�dS(Ni(RR	thermzero(R((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt
test_hermzero$scC sttjdg�dS(Ni(RR	thermone(R((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermone'scC sttjddg�dS(Nig�?(RR	thermx(R((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt
test_hermx*s(t__name__t
__module__RRRR(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR
s			tTestArithmeticcB sJeZejddd�Zd�Zd�Zd�Zd�Zd�Z	RS(i����iidcC s�x�td�D]�}x�td�D]�}d||f}tjt||�d�}||cd7<||cd7<tjdg|dgdg|dg�}tt|�t|�d|�q Wq
WdS(Nis
At i=%d, j=%diiterr_msg(trangetnptzerostmaxR	thermaddRR(Rtitjtmsgttgttres((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermadd1s.cC s�x�td�D]�}x�td�D]�}d||f}tjt||�d�}||cd7<||cd8<tjdg|dgdg|dg�}tt|�t|�d|�q Wq
WdS(Nis
At i=%d, j=%diiR(RRRRR	thermsubRR(RR R!R"R#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermsub;s.cC s�ttjdg�dg�ttjdg�ddg�x_tdd�D]N}dg|dg}dg|d|ddg}ttj|�|�qKWdS(Niig�?i(RR	thermmulxR(RR tserR#((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt
test_hermmulxEsc
C s�x�td�D]�}dg|dg}tj|j|�}x�td�D]�}d||f}dg|dg}tj|j|�}tj||�}tj|j|�}	tt|�||dk|�t|	||d|�qIWq
WdS(Niiis
At i=%d, j=%dR(RR	thermvalRthermmulRtlenR(
RR tpol1tval1R!R"tpol2tval2tpol3tval3((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermmulMs!c
C s�x�td�D]�}x�td�D]�}d||f}dg|dg}dg|dg}tj||�}tj||�\}}tjtj||�|�}	tt|	�t|�d|�q Wq
WdS(Nis
At i=%d, j=%diiR(RR	RthermdivR,RR(
RR R!R"tcitcjR#tquotremR$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermdiv[s(
RRRtlinspaceRR%R'R*R4R:(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR.s	
	
		tTestEvaluationcB s�eZejdddg�Zejdee�Zejdeee�Zejjd�ddZ	e
e	dd	d
g�Zd�Zd�Z
d
�Zd�Zd�ZRS(g@g�?g�?si,j->ijs
i,j,k->ijkiiiig@g@c
C sWttjgdg�jd�tjdd�}gtD]}t||�^q8}xdtd�D]V}d|}tj	}||}tj|dg|dg�}t
||d|�q`Wx�td�D]�}dg|}	tj	|	�}ttj|dg�j|	�ttj|ddg�j|	�ttj|dddg�j|	�q�WdS(	Niii����i
sAt i=%dRii(RR	R+tsizeRR;tHlistRRRRtshape(
RRtctyR R"R)R#R$tdims((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermvalrs"
	
 
"c
C s�|j\}}}|j\}}}tttj||d |j�||}tj|||j�}t||�tj	d�}	tj|	|	|j�}t
|jdk�dS(Nii(ii(ii(RRARt
ValueErrorR	t	hermval2dtc2dRRtonesRR?(
Rtx1tx2tx3ty1ty2ty3R#R$tz((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermval2d�s 

c
C s�|j\}}}|j\}}}tttj|||d |j�|||}tj||||j�}t||�tj	d�}	tj|	|	|	|j�}t
|jdk�dS(Nii(ii(ii(RRARRDR	t	hermval3dtc3dRRRGRR?(
RRHRIRJRKRLRMR#R$RN((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermval3d�s#
c
C s�|j\}}}|j\}}}tjd||�}tj|||j�}t||�tjd�}	tj|	|	|j�}t	|j
dk�dS(Nsi,j->ijii(ii(ii(iiii(RRARteinsumR	t
hermgrid2dRFRRGRR?(
RRHRIRJRKRLRMR#R$RN((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermgrid2d�s
c
C s�|j\}}}|j\}}}tjd|||�}tj||||j�}t||�tjd�}	tj|	|	|	|j�}t	|j
dk�dS(Ns
i,j,k->ijkii(ii(ii(iiiiii(RRARRSR	t
hermgrid3dRQRRGRR?(
RRHRIRJRKRLRMR#R$RN((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermgrid3d�s
(ii(RRRtarraytc1dRSRFRQtrandomRRRARCRORRRURW(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR<gs				tTestIntegralcB seZd�Zd�ZRS(c
C s�tttjdgd�tttjdgd�tttjdgdddg�x`tdd�D]O}dg|ddg}tjdgd|d|�}t|ddg�qdWx�td�D]�}|d}dg|dg}|gdg|d|g}tj|�}tj|ddd|g�}tj|�}tt|�t|��q�Wx~td�D]p}|d}dg|dg}tj|�}tj|ddd|gd	d�}ttj	d|�|�qmWx�td�D]�}|d}dg|dg}|gdg|d|g}tj|�}tj|ddd|gd
d�}tj|�}tt|�t|��q�Wx�td�D]�}x�tdd�D]{}	dg|dg}|}x)t|	�D]}tj|dd�}q�Wtj|d|	�}tt|�t|��q�Wq�Wx�td�D]�}x�tdd�D]�}	dg|dg}|}x2t|	�D]$}tj|ddd|g�}q�Wtj|d|	dt|	��}tt|�t|��qYWqCWx�td�D]�}x�tdd�D]�}	dg|dg}|}x8t|	�D]*}tj|ddd|gd	d�}qBWtj|d|	dt|	�d	d�}tt|�t|��qWq�Wx�td�D]�}x�tdd�D]�}	dg|dg}|}x8t|	�D]*}tj|ddd|gd
d�}q	Wtj|d|	dt|	�d
d�}tt|�t|��q�Wq�WdS(Nig�?i����iiitmtktlbndtscl(
RRDR	thermintRRt	poly2hermt	herm2polyRR+(
RR R]R$R_tpolR#thermpolR`R!((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermint�sz"

$
$!"!!('!('cC stjjd�}tjg|jD]}tj|�^q"�j}tj|dd�}t||�tjg|D]}tj|�^qr�}tj|dd�}t||�tjg|D]}tj|dd�^q��}tj|dddd�}t||�dS(NiitaxisiiR](ii(RRZtvstacktTR	R`R(RRFR@R#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermint_axiss1
+
1(RRReRi(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR[�s	PtTestDerivativecB seZd�Zd�ZRS(c	C s�tttjdgd�tttjdgd�xVtd�D]H}dg|dg}tj|dd�}tt|�t|��q?Wxtd�D]q}xhtdd�D]W}dg|dg}tjtj|d|�d|�}tt|�t|��q�Wq�Wx�td�D]}}xttdd�D]c}dg|dg}tjtj|d|dd�d|dd�}tt|�t|��q0WqWdS(	Nig�?i����iiR\iR_(	RRDR	thermderRRRR`R(RR R#R$R!((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermder,s $!0cC s�tjjd�}tjg|jD]}tj|�^q"�j}tj|dd�}t||�tjg|D]}tj|�^qr�}tj|dd�}t||�dS(NiiRfii(ii(RRZRgRhR	RkR(RRFR@R#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermder_axisEs1
+(RRRlRm(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyRj*s	t
TestVandercB s=eZejjd�ddZd�Zd�Zd�ZRS(iiiicC s#tjd�}tj|d�}t|jd	k�xKtd�D]=}dg|dg}t|d|ftj||��qAWtj	ddgddgddgg�}tj|d�}t|jd
k�xKtd�D]=}dg|dg}t|d|ftj||��q�WdS(Niiii.iii(ii(iii(
RtarangeR	t
hermvanderRR?RRR+RX(RRtvR tcoef((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermvanderWs'*cC s�|j\}}}tjjd�}tj||ddg�}tj|||�}tj||j�}t||�tj|g|gddg�}t	|j
dk�dS(Niiiii(ii(iii(RRRZR	thermvander2dREtdottflatRRR?(RRHRIRJR@tvanR#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermvander2dhs
!cC s�|j\}}}tjjd�}tj|||dddg�}tj||||�}tj||j�}t||�tj|g|g|gdddg�}t	|j
dk�dS(	Niiiiii(iii(iii(RRRZR	thermvander3dRPRuRvRRR?(RRHRIRJR@RwR#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermvander3dvs!
*(ii(RRRRZRRsRxRz(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyRnRs		tTestFittingcB seZd�ZRS(c	C s�d�}tttjdgdgd�tttjdggdgd�tttjgdgd�tttjdgdgggd�tttjddgdgd�tttjdgddgd�tttjdgdgdddgg�tttjdgdgddddg�tjdd�}||�}tj||d�}tt|�d�t	tj
||�|�tj||d�}tt|�d	�t	tj
||�|�tj|tj||g�jd�}t	|tj||g�j�tj
|�}|j�}d|ddd�<d|ddd�<tj||dd|�}	t	|	|�tj|tj||g�jdd|�}
t	|
tj||g�j�dd
ddg}t	tj||d�ddg�dS(
NcS s||d|dS(Nii((R((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pytf�sii����iitwiiiy�?y�g�?(RRDR	thermfitt	TypeErrorRR;RR-RR+RXRht
zeros_liketcopy(RR|RRAtcoef3tcoef4tcoef2dR}tywtwcoef3twcoef2d((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermfit�s:	"%""++'
-(RRR�(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR{�st	TestGausscB seZd�ZRS(cC s�tjd�\}}tj|d�}tj|j||�}dtj|j��}|dd�df||}t	|tj
d��tjtj�}t	|j�|�dS(Nidici(
R	t	hermgaussRpRRuRhtsqrttdiagonaltNoneRteyetpitsum(RRR}RqtvvtvdR#((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_100�s(RRR�(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR��stTestMisccB sGeZd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cC s�tjg�}tt|�dg�x�tdd�D]�}tjtjtjdd|d�ddd��}tj|�}tj	||�}d}t
t|�|dk�ttj|�dd�t||�q5WdS(Niiiii����(
R	t
hermfromrootsRRRRtcosR;R�R+RR-Rb(RR$R trootsRcR#((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermfromroots�s7cC s�ttjdg�g�ttjddg�dg�x]tdd�D]L}tjdd|�}tjtj|��}tt|�t|��qHWdS(Nig�iii����(RR	t	hermrootsRRR;R�R(RR R#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_hermroots�scC sddddg}tttj|d�ttj|�|d �ttj|d�|d �ttj|d�dg�dS(Nii����iii����(RRDR	R
R(RRr((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt
test_hermtrim�s
cC s#ttjdd�ddg�dS(Niii(RR	thermline(R((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt
test_hermline�scC sCx<td�D].}ttjdg|dg�t|�q
WdS(Ni
ii(RRR	RbR>(RR ((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_herm2poly�scC sCx<td�D].}ttjt|�dg|dg�q
WdS(Ni
ii(RRR	RaR>(RR ((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_poly2herm�scC sItjddd�}tj|d�}tj|�}t||�dS(Ni����iii(RR;texpR	t
hermweightR(RRR#R$((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyttest_weight�s(	RRR�R�R�R�R�R�R�(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyR��s						t__main__()t__doc__t
__future__RtnumpyRtnumpy.polynomial.hermitet
polynomialthermiteR	tnumpy.polynomial.polynomialRt
numpy.testingRRRRRRRXtH0tH1tH2tH3tH4tH5tH6tH7tH8tH9R>RR
RR<R[RjRnR{R�R�R(((sI/usr/lib64/python2.7/site-packages/numpy/polynomial/tests/test_hermite.pyt<module>s8.!$'*-$	9`c(2-3