
    H/PhH              
          d Z ddlmZ ddlZddlmc mZ ddl	m
Z
 ddlmZmZmZmZ  ej        dg          Z ej        ddg          Z ej        g d          Z ej        g d	          Z ej        g d
          Z ej        g d          Z ej        g d          Z ej        g d          Z ej        g d          Z ej        g d          Zeeeeeeeeeeg
Zd Z G d d          Z G d d          Z G d d          Z G d d          Z  G d d          Z! G d d          Z" G d d          Z# G d d           Z$ G d! d"          Z% G d# d$          Z&dS )%zTests for hermite module.

    )reduceNpolyval)assert_almost_equalassert_raisesassert_equalassert_      )r      )r   ir      )   r   ir      )r   x   r   i`r       )ir   i  r   i r   @   )r   ipr   i   r   ir      )	i  r   ir   i4  r   i r      )
r   i v  r   i r   i   r   i r   i   c                 .    t          j        | d          S )Ngư>)tol)hermhermtrimxs    c/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numpy/polynomial/tests/test_hermite.pytrimr      s    =%%%%    c                   &    e Zd Zd Zd Zd Zd ZdS )TestConstantsc                 >    t          t          j        ddg           d S )Nr
   )r   r   
hermdomainselfs    r   test_hermdomainzTestConstants.test_hermdomain!   s    T_r1g.....r   c                 <    t          t          j        dg           d S )Nr   )r   r   hermzeror$   s    r   test_hermzerozTestConstants.test_hermzero$   s    T]QC(((((r   c                 <    t          t          j        dg           d S Nr
   )r   r   hermoner$   s    r   test_hermonezTestConstants.test_hermone'   s    T\A3'''''r   c                 >    t          t          j        ddg           d S )Nr         ?)r   r   hermxr$   s    r   
test_hermxzTestConstants.test_hermx*   s    TZ!R)))))r   N)__name__
__module____qualname__r&   r)   r-   r1    r   r   r    r       sP        / / /) ) )( ( (* * * * *r   r    c                   V    e Zd Z ej        ddd          Zd Zd Zd Zd Z	d Z
d	 Zd
S )TestArithmetic   d   c                    t          d          D ]}t          d          D ]}d| d| }t          j        t          ||          dz             }||xx         dz  cc<   ||xx         dz  cc<   t	          j        dg|z  dgz   dg|z  dgz             }t          t          |          t          |          |           d S N   At i=, j=r
   r   err_msg)rangenpzerosmaxr   hermaddr   r   r%   ijmsgtgtress         r   test_hermaddzTestArithmetic.test_hermadd1       q 	@ 	@A1XX @ @(a((Q((hs1ayy1}--A!A!lA3q5A3;A<<T#YYS		3?????@	@ 	@r   c                    t          d          D ]}t          d          D ]}d| d| }t          j        t          ||          dz             }||xx         dz  cc<   ||xx         dz  cc<   t	          j        dg|z  dgz   dg|z  dgz             }t          t          |          t          |          |           d S r<   )rB   rC   rD   rE   r   hermsubr   r   rG   s         r   test_hermsubzTestArithmetic.test_hermsub;   rN   r   c                 4   t          t          j        dg          dg           t          t          j        dg          ddg           t          dd          D ]=}dg|z  dgz   }dg|dz
  z  |ddgz   }t          t          j        |          |           >d S )Nr   r
   r/   r=   )r   r   hermmulxrB   )r%   rH   serrK   s       r   test_hermmulxzTestArithmetic.test_hermmulxE   s    T]A3''!---T]A3''!R111q! 	2 	2A#a%1#+C#q1u+Ar
*Cs++S1111	2 	2r   c                    t          d          D ]}dg|z  dgz   }t          j        | j        |          }t          d          D ]}d| d| }dg|z  dgz   }t          j        | j        |          }t          j        ||          }t          j        | j        |          }	t          t          |          ||z   dz   k    |           t          |	||z  |           d S )Nr=   r   r
   r>   r?   r@   )rB   r   hermvalr   hermmulr	   lenr   )
r%   rH   pol1val1rI   rJ   pol2val2pol3val3s
             r   test_hermmulzTestArithmetic.test_hermmulM   s   q 
	B 
	BA3q5A3;D<--D1XX B B(a((Q((s1us{|DFD11|D$//|DFD11D		QUQY.444#D$t)SAAAAAB
	B 
	Br   c                    t          d          D ]}t          d          D ]}d| d| }dg|z  dgz   }dg|z  dgz   }t          j        ||          }t          j        ||          \  }}t          j        t          j        ||          |          }	t          t          |	          t          |          |           d S )Nr=   r>   r?   r   r
   r@   )rB   r   rF   hermdivrX   r   r   )
r%   rH   rI   rJ   cicjrK   quoremrL   s
             r   test_hermdivzTestArithmetic.test_hermdiv[   s    q 	@ 	@A1XX @ @(a((Q((SUaS[SUaS[l2r**<R00Sl4<R#8#8#>>T#YYS		3?????@	@ 	@r   c           	      r   t          d          D ]}t          d          D ]}d| d| }t          j        |dz             }t          t          j        |g|z  t          j        dg                    }t	          j        ||          }t          t          |          t          |          |           d S )Nr=   r>   r?   r
   r@   )
rB   rC   aranger   r   rX   arrayhermpowr   r   )r%   rH   rI   rJ   crK   rL   s          r   test_hermpowzTestArithmetic.test_hermpowf   s    q 	@ 	@A1XX @ @(a((Q((Ia!e$$T\A3q5"(A3--@@l1a((T#YYS		3?????@	@ 	@r   N)r2   r3   r4   rC   linspacer   rM   rQ   rU   r`   rg   rm   r5   r   r   r7   r7   .   s        B3A@ @ @@ @ @2 2 2B B B	@ 	@ 	@@ @ @ @ @r   r7   c                       e Zd Z ej        g d          Z ej        dee          Z ej        deee          Zej	        	                    d          dz  dz
  Z
 ee
g d          Zd Zd	 Zd
 Zd Zd ZdS )TestEvaluation)g      @      ?g      ?i,j->ij
i,j,k->ijkr9   r=   r   r
   )rq   g       @g      @c                    t          t          j        g dg          j        d           t	          j        dd          fdt          D             }t          d          D ]>}d| }||         }t          j        dg|z  dgz             }t          |||           ?t          d          D ]}d	g|z  }t	          j	        |          t          t          j        dg          j
        |           t          t          j        ddg          j
        |           t          t          j        g d
          j
        |           d S )Nr
   r   r"   c                 0    g | ]}t          |          S r5   r   ).0rl   r   s     r   
<listcomp>z/TestEvaluation.test_hermval.<locals>.<listcomp>   s!    ***qWQ]]***r   
   r>   r@   r9   r   )r
   r   r   )r   r   rW   sizerC   rn   HlistrB   r   rD   shape)r%   yrH   rJ   rK   rL   dimsr   s          @r   test_hermvalzTestEvaluation.test_hermvalz   sU   T\"qc**/333 KA****E***r 	7 	7A!++CA$C,q1#a%1#+..CS#66666 q 	A 	AA3q5DAa!--3T:::a!Q006===a3394@@@@	A 	Ar   c                 ~   | j         \  }}}| j        \  }}}t          t          t          j        ||d d         | j                   ||z  }t	          j        ||| j                  }t          ||           t          j	        d          }	t	          j        |	|	| j                  }t          |j        dk               d S Nr   r   r9   )r   r}   r   
ValueErrorr   	hermval2dc2dr   rC   onesr	   r|   
r%   x1x2x3y1y2y3rK   rL   zs
             r   test_hermval2dzTestEvaluation.test_hermval2d   s    V
BV
B 	j$."b!fdhGGG enRTX..C%%% GFOOnQ48,,	V#$$$$$r   c           	         | j         \  }}}| j        \  }}}t          t          t          j        |||d d         | j                   ||z  |z  }t	          j        |||| j                  }t          ||           t          j	        d          }	t	          j        |	|	|	| j                  }t          |j        dk               d S r   )r   r}   r   r   r   	hermval3dc3dr   rC   r   r	   r|   r   s
             r   test_hermval3dzTestEvaluation.test_hermval3d   s    V
BV
B 	j$."b"RaR&$(KKK eBhnRR22C%%% GFOOnQ1dh//	V#$$$$$r   c                 B   | j         \  }}}| j        \  }}}t          j        d||          }t	          j        ||| j                  }t          ||           t          j        d          }	t	          j        |	|	| j                  }t          |j
        dk               d S )Nrr   r   )r   r9   r   r9   )r   r}   rC   einsumr   
hermgrid2dr   r   r   r	   r|   r   s
             r   test_hermgrid2dzTestEvaluation.test_hermgrid2d   s    V
BV
B i	2r**ob"dh//C%%% GFOOoaDH--	X%&&&&&r   c                 H   | j         \  }}}| j        \  }}}t          j        d|||          }t	          j        |||| j                  }t          ||           t          j        d          }	t	          j        |	|	|	| j                  }t          |j
        dk               d S )Nrs   r   )r   r9   r   r9   r   r9   )r   r}   rC   r   r   
hermgrid3dr   r   r   r	   r|   r   s
             r   test_hermgrid3dzTestEvaluation.test_hermgrid3d   s    V
BV
B ib"b11ob"b$(33C%%% GFOOoaAtx00	X%&&&&&r   N)r2   r3   r4   rC   rj   c1dr   r   r   randomr   r   r}   r   r   r   r   r   r5   r   r   rp   rp   p   s        
"(>>>
"
"C
")IsC
(
(C
")L#sC
0
0C 		  "Q&A<<<  AA A A*% % %"% % %"' ' '' ' ' ' 'r   rp   c                       e Zd Zd Zd ZdS )TestIntegralc                 T   t          t          t          j        dgd           t          t          t          j        dgd           t          t          t          j        dgdddg           t          t          t          j        dgdg           t          t          t          j        dgdg           t          t          t          j        dgd           t          dd	          D ]9}dg|dz
  z  dgz   }t          j        dg||
          }t          |ddg           :t          d	          D ]}|dz   }dg|z  dgz   }|gdg|z  z   d|z  gz   }t          j        |          }t          j        |d|g
          }t          j        |          }t          t          |          t          |                     t          d	          D ]a}|dz   }dg|z  dgz   }t          j        |          }t          j        |d|gd          }t          t          j
        d|          |           bt          d	          D ]}|dz   }dg|z  dgz   }|gdg|z  z   d|z  gz   }t          j        |          }t          j        |d|gd          }t          j        |          }t          t          |          t          |                     t          d	          D ]}t          dd	          D ]~}	dg|z  dgz   }|d d          }t          |	          D ]}t          j        |d          }t          j        ||	          }t          t          |          t          |                     t          d	          D ]}t          dd	          D ]}	dg|z  dgz   }|d d          }t          |	          D ]}t          j        |d|g
          }t          j        ||	t          t          |	                    
          }t          t          |          t          |                     t          d	          D ]}t          dd	          D ]}	dg|z  dgz   }|d d          }t          |	          D ]}t          j        |d|gd          }t          j        ||	t          t          |	                    d          }t          t          |          t          |                     t          d	          D ]}t          dd	          D ]}	dg|z  dgz   }|d d          }t          |	          D ]}t          j        |d|gd          }t          j        ||	t          t          |	                    d          }t          t          |          t          |                     d S )Nr   r/   r"   r
   )lbnd)sclaxisr   r=   )mk)r   r   r   )r   r   r   r   )r   	TypeErrorr   hermintr   rB   r   	poly2herm	herm2polyr   rW   list)
r%   rH   r   rL   r   polrK   hermpolr   rI   s
             r   test_hermintzTestIntegral.test_hermint   s   isB777j$,R888j$,QA???j$,1#>>>>j$,!====is<<<< q! 	. 	.AQUqc!A,sa1---CaW---- q 	6 	6Aa%C#a%1#+C#A+3'CnS))Gl7aA3777G.))CS		4995555 q 	> 	>Aa%C#a%1#+CnS))Gl7aA3R@@@GR 9 91==== q 	6 	6Aa%C#a%1#+C#A+3'CnS))Gl7aA3A>>>G.))CS		4995555 q 	: 	:A1a[[ : :c!eqck!!!fq 1 1A,sa000CCl3!,,,#DIItCyy9999: q 	: 	:A1a[[ : :c!eqck!!!fq 8 8A,saA3777CCl3!tE!HH~~>>>#DIItCyy9999: q 	: 	:A1a[[ : :c!eqck!!!fq A AA,saA3R@@@CCl3!tE!HH~~BGGG#DIItCyy9999: q 	: 	:A1a[[ : :c!eqck!!!fq ? ?A,saA3A>>>CCl3!tE!HH~~1EEE#DIItCyy9999:	: 	:r   c                    t           j                            d          }t          j        d |j        D                       j        }t	          j        |d          }t          ||           t          j        d |D                       }t	          j        |d          }t          ||           t          j        d |D                       }t	          j        |dd	          }t          ||           d S )
Nr9   r   c                 6    g | ]}t          j        |          S r5   r   r   rw   rl   s     r   rx   z2TestIntegral.test_hermint_axis.<locals>.<listcomp>'       888Qa888r   r   r   c                 6    g | ]}t          j        |          S r5   r   r   s     r   rx   z2TestIntegral.test_hermint_axis.<locals>.<listcomp>+       666Qa666r   r
   c                 :    g | ]}t          j        |d           S )r9   )r   r   r   s     r   rx   z2TestIntegral.test_hermint_axis.<locals>.<listcomp>/  s'    ;;;!a1---;;;r   r9   )r   r   )rC   r   vstackTr   r   r   r%   r   rK   rL   s       r   test_hermint_axiszTestIntegral.test_hermint_axis#  s    iv&&i88#%88899;l3Q'''C%%%i66#66677l3Q'''C%%%i;;s;;;<<l3!!,,,C%%%%%r   N)r2   r3   r4   r   r   r5   r   r   r   r      s6        Q: Q: Q:f& & & & &r   r   c                       e Zd Zd Zd ZdS )TestDerivativec           	      V   t          t          t          j        dgd           t          t          t          j        dgd           t          d          D ]L}dg|z  dgz   }t          j        |d          }t          t          |          t          |                     Mt          d          D ]s}t          dd          D ]`}dg|z  dgz   }t          j        t          j        ||          |          }t          t          |          t          |                     att          d          D ]u}t          dd          D ]b}dg|z  dgz   }t          j        t          j        ||d          |d          }t          t          |          t          |                     cvd S )	Nr   r/   r"   r=   r
   r   r   )r   r   )
r   r   r   hermderr   rB   r   r   r   r   )r%   rH   rK   rL   rI   s        r   test_hermderzTestDerivative.test_hermder6  s   isB777j$,R888 q 	/ 	/A#a%1#+C,sa(((CcDII.... q 	: 	:A1a[[ : :c!eqckl4<q#9#9#9Q???#DIItCyy9999: q 	: 	:A1a[[ : :c!eqckl4<qa#@#@#@A2NNN#DIItCyy9999:	: 	:r   c                 h   t           j                            d          }t          j        d |j        D                       j        }t	          j        |d          }t          ||           t          j        d |D                       }t	          j        |d          }t          ||           d S )Nr   c                 6    g | ]}t          j        |          S r5   r   r   r   s     r   rx   z4TestDerivative.test_hermder_axis.<locals>.<listcomp>S  r   r   r   r   c                 6    g | ]}t          j        |          S r5   r   r   s     r   rx   z4TestDerivative.test_hermder_axis.<locals>.<listcomp>W  r   r   r
   )rC   r   r   r   r   r   r   r   s       r   test_hermder_axisz TestDerivative.test_hermder_axisO  s    iv&&i88#%88899;l3Q'''C%%%i66#66677l3Q'''C%%%%%r   N)r2   r3   r4   r   r   r5   r   r   r   r   4  s2        : : :2
& 
& 
& 
& 
&r   r   c                   `    e Zd Zej                            d          dz  dz
  Zd Zd Zd ZdS )
TestVanderrt   r   r
   c                 8   t          j        d          }t          j        |d          }t	          |j        dk               t          d          D ]7}dg|z  dgz   }t          |d|f         t          j        ||                     8t          j	        ddgddgdd	gg          }t          j        |d          }t	          |j        d
k               t          d          D ]7}dg|z  dgz   }t          |d|f         t          j        ||                     8d S )Nr9   r   r   r   r
   .r   r=      )r9   r   r   )
rC   ri   r   
hermvanderr	   r|   rB   r   rW   rj   )r%   r   vrH   coefs        r   test_hermvanderzTestVander.test_hermvander`  s)   IaLLOAq!!6!"""q 	B 	BA3q5A3;D#q&	4<4+@+@AAAA Hq!fq!fq!f-..OAq!!9$%%%q 	B 	BA3q5A3;D#q&	4<4+@+@AAAA	B 	Br   c                 n   | j         \  }}}t          j                            d          }t          j        ||ddg          }t          j        |||          }t          j        ||j                  }t          ||           t          j        |g|gddg          }t          |j
        dk               d S )Nr   r
   r   )r
   r=   r   )r   rC   r   r   hermvander2dr   dotflatr   r	   r|   r%   r   r   r   rl   vanrK   rL   s           r   test_hermvander2dzTestVander.test_hermvander2dq  s    V
BIV$$BA//nRQ''fS!&!!C%%% rdQF33	Y&'''''r   c                 v   | j         \  }}}t          j                            d          }t          j        |||g d          }t          j        ||||          }t          j        ||j                  }t          ||           t          j        |g|g|gg d          }t          |j
        dk               d S )N)r   r9   r   )r
   r   r9   )r
   r=      )r   rC   r   r   hermvander3dr   r   r   r   r	   r|   r   s           r   test_hermvander3dzTestVander.test_hermvander3d~  s    V
BIY''BIII66nRR++fS!&!!C%%% rdRD)))<<	Z'(((((r   N)	r2   r3   r4   rC   r   r   r   r   r   r5   r   r   r   r   \  sc        
	  "Q&AB B B"( ( () ) ) ) )r   r   c                       e Zd Zd ZdS )TestFittingc           	         d }d }t          t          t          j        dgdgd           t          t          t          j        dggdgd           t          t          t          j        g dgd           t          t          t          j        dgdgggd           t          t          t          j        ddgdgd           t          t          t          j        dgddgd           t          t          t          j        dgdgddgg           t          t          t          j        dgdgdddg           t          t          t          j        dgdgdg           t          t          t          j        dgdgg d           t          t          t          j        dgdgg            t          j        dd          } ||          }t          j        ||d	          }t          t          |          d
           t          t          j
        ||          |           t          j        ||g d          }t          t          |          d
           t          t          j
        ||          |           t          j        ||d
          }t          t          |          d           t          t          j
        ||          |           t          j        ||g d          }t          t          |          d           t          t          j
        ||          |           t          j        ||g d          }t          t          |          d           t          t          j
        ||          |           t          j        |t          j        ||g          j        d	          }t          |t          j        ||g          j                   t          j        |t          j        ||g          j        g d          }t          |t          j        ||g          j                   t          j        |          }|                                }	d|dd d<   d|dd d<   t          j        ||	d	|          }
t          |
|           t          j        ||	g d|          }
t          |
|           t          j        |t          j        |	|	g          j        d	|          }t          |t          j        ||g          j                   t          j        |t          j        |	|	g          j        g d|          }t          |t          j        ||g          j                   g d}t          t          j        ||d          ddg           t          t          j        ||ddg          ddg           t          j        dd          } ||          }t          j        ||d
          }t          t          j
        ||          |           t          j        ||g d          }t          t          j
        ||          |           t          ||           d S )Nc                     | | dz
  z  | dz
  z  S )Nr
   r   r5   r   s    r   fz#TestFitting.test_hermfit.<locals>.f  s    a!e9a!e$$r   c                     | dz  | dz  z   dz   S )Nr   r   r
   r5   r   s    r   f2z$TestFitting.test_hermfit.<locals>.f2  s    a4!Q$;?"r   r
   r"   r   r   )w)r   r"   r   r9   r   )r   r
   r   r9   r=   )r   r
   r   r9   r   )r   r9   r   r
   r   )r
   y              ?r"   y             r/   )r   r   r   )r   r   r   hermfitr   rC   rn   r   rY   r   rW   rj   r   
zeros_likecopy)r%   r   r   r   r}   coef3coef4coef2dr   ywwcoef3wcoef2dcoef1coef2s                 r   test_hermfitzTestFitting.test_hermfit  s   	% 	% 	%	# 	# 	# 	j$,aS"===iuqc1===irA3:::isqcUGQ???i1vsA>>>isQFA>>>isQCseDDDDisQCq!fEEEEj$,aS2%@@@j$,aS***EEEisQC<<< K1AaDDQ1%%SZZ###DLE22A666Q<<<00SZZ###DLE22A666Q1%%SZZ###DLE22A666Q???33SZZ###DLE22A666Q???33SZZ###DLE22A666a1a&!1!1!3Q77FBHeU^$<$<$>???a1a&!1!1!3\\\BBFBHeU^$<$<$>???M!VVXX!$Q$!$Q$aQ!,,,FE***a\\\Q777FE***,q"(B8"4"4"6Q???GRXuen%=%=%?@@@,q"(B8"4"4"6JJJGRXuen%=%=%?@@@ DLAq11Ar7;;;DLA1v66B@@@KABqEEQ1%%DLE22A666Q999--DLE22A666E5)))))r   N)r2   r3   r4   r   r5   r   r   r   r     s(        H* H* H* H* H*r   r   c                        e Zd Zd Zd Zd ZdS )TestCompanionc                     t          t          t          j        g            t          t          t          j        dg           d S r+   )r   r   r   hermcompanionr$   s    r   test_raiseszTestCompanion.test_raises  s4    j$"4b999j$"4qc:::::r   c                     t          dd          D ]8}dg|z  dgz   }t          t          j        |          j        ||fk               9d S )Nr
   r=   r   )rB   r	   r   r   r|   )r%   rH   r   s      r   test_dimensionszTestCompanion.test_dimensions  s\    q! 	> 	>A3q5A3;DD&t,,2q!f<====	> 	>r   c                 `    t          t          j        ddg          d         dk               d S )Nr
   r   )r   r   g      п)r	   r   r   r$   s    r   test_linear_rootzTestCompanion.test_linear_root  s/    "Aq6**40D899999r   N)r2   r3   r4   r   r   r   r5   r   r   r   r     sA        ; ; ;> > >
: : : : :r   r   c                       e Zd Zd ZdS )	TestGaussc                    t          j        d          \  }}t          j        |d          }t          j        |j        |z  |          }dt          j        |                                          z  }|d d d f         |z  |z  }t          |t          j	        d                     t          j        t          j
                  }t          |                                |           d S )Nr:   c   r
   )r   	hermgaussr   rC   r   r   sqrtdiagonalr   eyepisum)r%   r   r   r   vvvdrK   s          r   test_100zTestGauss.test_100  s    ~c""1
 OAr""VAC!GQrwr{{}}%%%4[2"Bs,,, gbennAEEGGS)))))r   N)r2   r3   r4   r  r5   r   r   r   r     s#        * * * * *r   r   c                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	TestMiscc           	          t          j        g           }t          t          |          dg           t	          dd          D ]}t          j        t          j        t
          j         dd|z  dz             dd d                   }t          j        |          }t          j	        ||          }d}t          t          |          |dz   k               t          t          j        |          d         d           t          ||           d S )Nr
   r=   r   r   r"   )r   hermfromrootsr   r   rB   rC   cosrn   r   rW   r	   rY   r   )r%   rL   rH   rootsr   rK   s         r   test_hermfromrootszTestMisc.test_hermfromroots  s     $$DIIs+++q! 	* 	*AF2;vq!A#'::14a4@AAE$U++C,uc**CCCHHA%&&&s 3 3B 7;;;S))))	* 	*r   c                    t          t          j        dg          g            t          t          j        ddg          dg           t          dd          D ]h}t	          j        dd|          }t          j        t          j        |                    }t          t          |          t          |                     id S )Nr
   g      r   r=   r"   )r   r   	hermrootsrB   rC   rn   r  r   )r%   rH   rK   rL   s       r   test_hermrootszTestMisc.test_hermroots	  s    DNA3//444DNAq622SE:::q! 	6 	6A+b!Q''C.!3C!8!899CS		4995555	6 	6r   c                 B   g d}t          t          t          j        |d           t	          t          j        |          |d d                    t	          t          j        |d          |d d                    t	          t          j        |d          dg           d S )N)r   r"   r
   r   r"   r
   r8   r   r   )r   r   r   r   r   )r%   r   s     r   test_hermtrimzTestMisc.test_hermtrim  s    }} 	j$-r::: 	T]4(($ss)444T]4++T#2#Y777T]4++aS11111r   c                 P    t          t          j        dd          ddg           d S )Nr9   r   r   )r   r   hermliner$   s    r   test_hermlinezTestMisc.test_hermline  s(    T]1a((1a&11111r   c                     t          d          D ]7}t          t          j        dg|z  dgz             t          |                    8d S Nry   r   r
   )rB   r   r   r   r{   r%   rH   s     r   test_herm2polyzTestMisc.test_herm2poly  sR    r 	G 	GAs1us{ ; ;U1XFFFF	G 	Gr   c                     t          d          D ]7}t          t          j        t          |                   dg|z  dgz              8d S r  )rB   r   r   r   r{   r  s     r   test_poly2hermzTestMisc.test_poly2herm#  sR    r 	G 	GAuQx 8 81#a%1#+FFFF	G 	Gr   c                     t          j        ddd          }t          j        |dz             }t          j        |          }t          ||           d S )Nr=      r   )rC   rn   expr   
hermweightr   )r%   r   rK   rL   s       r   test_weightzTestMisc.test_weight'  sM    KAr""fadUmmoa  C%%%%%r   N)
r2   r3   r4   r	  r  r  r  r  r  r  r5   r   r   r  r    s        
* 
* 
*6 6 6	2 	2 	22 2 2G G GG G G& & & & &r   r  )'__doc__	functoolsr   numpyrC   numpy.polynomial.hermite
polynomialhermiter   numpy.polynomial.polynomialr   numpy.testingr   r   r   r	   rj   H0H1H2H3H4H5H6H7H8H9r{   r   r    r7   rp   r   r   r   r   r   r   r  r5   r   r   <module>r0     sc              ' ' ' ' ' ' ' ' ' / / / / / /            RXqc]]RXq!fRXjjjRXnnnRX!!!""RX&&&''RX,,,--RX33344RX;;;<<RX???@@	RRRRR0& & &* * * * * * * *?@ ?@ ?@ ?@ ?@ ?@ ?@ ?@D[' [' [' [' [' [' [' ['|c& c& c& c& c& c& c& c&L%& %& %& %& %& %& %& %&P-) -) -) -) -) -) -) -)`J* J* J* J* J* J* J* J*Z: : : : : : : :* * * * * * * *&0& 0& 0& 0& 0& 0& 0& 0& 0& 0&r   