o
    ðT·jýU  ã                
   @   sp  d Z ddlmZ ddlmZ ddlZddlm  mZ	 ddl
m  mZ ddlZddlmZ ddlmZmZmZmZmZmZmZ dd„ Zd	gZdd	gZg d
¢Zg d¢Zg d¢Zg d¢Zg d¢Zg d¢Z g d¢Z!g d¢Z"eeeeeeee e!e"g
Z#G dd„ dƒZ$G dd„ dƒZ%G dd„ dƒZ&G dd„ dƒZ'G dd„ dƒZ(G dd„ dƒZ)G dd„ dƒZ*G d d!„ d!ƒZ+G d"d#„ d#ƒZ,dS )$zTests for polynomial module.

é    )Úreduce)ÚFractionN)Údeepcopy)Úassert_almost_equalÚassert_raisesÚassert_equalÚassert_Úassert_array_equalÚassert_raises_regexÚassert_warnsc                 C   s   t j| dd�S )Ng�íµ ÷Æ°>)Útol)ÚpolyÚpolytrim©Úx© r   úi/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/numpy/polynomial/tests/test_polynomial.pyÚtrim   s   r   é   )éÿÿÿÿr   é   )r   éýÿÿÿr   é   )r   r   iøÿÿÿr   é   )r   é   r   iìÿÿÿr   é   )r   r   é   r   iÐÿÿÿr   é    )r   iùÿÿÿr   é8   r   i�ÿÿÿr   é@   )	r   r   iàÿÿÿr   é    r   i ÿÿÿr   é€   )
r   é	   r   iˆÿÿÿr   i°  r   iÀýÿÿr   é   c                   @   ó<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )ÚTestConstantsc                 C   ó   t tjddgƒ d S )Nr   r   )r   r   Ú
polydomain©Úselfr   r   r   Útest_polydomain#   ó   zTestConstants.test_polydomainc                 C   ó   t tjdgƒ d S )Nr   )r   r   Úpolyzeror(   r   r   r   Útest_polyzero&   ó   zTestConstants.test_polyzeroc                 C   r,   ©Nr   )r   r   Úpolyoner(   r   r   r   Útest_polyone)   r/   zTestConstants.test_polyonec                 C   r&   )Nr   r   )r   r   Úpolyxr(   r   r   r   Ú
test_polyx,   r+   zTestConstants.test_polyxc                 C   s$   t  g d¢¡}t|ƒ}t||ƒ d S ©N©r   r   é   )r   Ú
Polynomialr   r   ©r)   r   Úyr   r   r   Ú	test_copy/   s   zTestConstants.test_copyc                 C   s,   t  g d¢¡}t t |¡¡}t||ƒ d S r5   )r   r8   ÚpickleÚloadsÚdumpsr   r9   r   r   r   Útest_pickle4   s   zTestConstants.test_pickleN)	Ú__name__Ú
__module__Ú__qualname__r*   r.   r2   r4   r;   r?   r   r   r   r   r%   !   s    r%   c                   @   r$   )ÚTestArithmeticc                 C   sž   t dƒD ]H}t dƒD ]A}d|› d|› �}t t||ƒd ¡}||  d7  < ||  d7  < t dg| dg dg| dg ¡}tt|ƒt|ƒ|d� q
qd S ©Nr   úAt i=ú, j=r   r   ©Úerr_msg)ÚrangeÚnpÚzerosÚmaxr   Úpolyaddr   r   ©r)   ÚiÚjÚmsgÚtgtÚresr   r   r   Útest_polyadd;   ó   $úÿzTestArithmetic.test_polyaddc                 C   sž   t dƒD ]H}t dƒD ]A}d|› d|› �}t t||ƒd ¡}||  d7  < ||  d8  < t dg| dg dg| dg ¡}tt|ƒt|ƒ|d� q
qd S rD   )rI   rJ   rK   rL   r   Úpolysubr   r   rN   r   r   r   Útest_polysubE   rU   zTestArithmetic.test_polysubc                 C   sr   t t dg¡dgƒ t t dg¡ddgƒ tddƒD ]}dg| dg }dg|d  dg }t t |¡|ƒ qd S )Nr   r   r   )r   r   ÚpolymulxrI   )r)   rO   ÚserrR   r   r   r   Útest_polymulxO   s   ýzTestArithmetic.test_polymulxc                 C   s�   t dƒD ]A}t dƒD ]:}d|› d|› �}t || d ¡}|||   d7  < t dg| dg dg| dg ¡}tt|ƒt|ƒ|d� q
qd S rD   )rI   rJ   rK   r   Úpolymulr   r   rN   r   r   r   Útest_polymulW   s   $ûÿzTestArithmetic.test_polymulc           
      C   sì   t ttjdgdgƒ t dgdg¡\}}t||fdƒ t ddgdg¡\}}t||fdƒ tdƒD ]B}tdƒD ];}d|› d|› �}dg| ddg }dg| ddg }t ||¡}t ||¡\}}t t ||¡|¡}	t|	||d	� q7q1d S )
Nr   r   r   )r   r   ))r   r   r   r   rE   rF   rG   )r   ÚZeroDivisionErrorr   Úpolydivr   rI   rM   r[   )
r)   ÚquoÚremrO   rP   rQ   ÚciÚcjrR   rS   r   r   r   Útest_polydiv`   s    ùÿzTestArithmetic.test_polydivc                 C   s|   t dƒD ]7}t dƒD ]0}d|› d|› �}t |d ¡}ttj|g| t dg¡ƒ}t ||¡}tt	|ƒt	|ƒ|d� q
qd S )Nr   rE   rF   r   rG   )
rI   rJ   Úaranger   r   r[   ÚarrayÚpolypowr   r   )r)   rO   rP   rQ   ÚcrR   rS   r   r   r   Útest_polypowu   s   ûÿzTestArithmetic.test_polypowN)	r@   rA   rB   rT   rW   rZ   r\   rc   rh   r   r   r   r   rC   9   s    

	rC   c                   @   s   e Zd Zdd„ ZdS )ÚTestFractionc                 C   sô   t ddƒ}t ddƒ}t ddƒ}tj||g||g||gd�}d| |d  }t|jtjt ddƒt ddƒt d	dƒgtd
�ƒ t|j||gƒ t|jj	tj
 ¡ ƒ tt||ƒt ƒƒ t||ƒt ddƒƒ tjt ddƒg||g||gd�}t| ¡ |ƒ d S )Nr   r7   r   r   ©ÚdomainÚwindowr   r"   é   r   ©Údtypeé
   )r   r   r8   r   ÚcoefrJ   re   Úobjectrk   ro   ÚdtypesÚObjectDTyper   Ú
isinstanceÚderiv)r)   ÚfÚoneÚzeroÚpr   Úp_derivr   r   r   Útest_Fraction€   s$   


ÿÿÿzTestFraction.test_FractionN)r@   rA   rB   r|   r   r   r   r   ri   ~   s    ri   c                   @   sŒ   e Zd Ze g d¢¡Ze dee¡Ze deee¡Zej	 	d¡d d Z
e e
g d¢¡Zdd„ Zd	d
„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS )ÚTestEvaluation)ç      ð?ç       @g      @úi,j->ijú
i,j,k->ijk©r7   r   r   r   c           
         s~  t t g dg¡jdƒ t dd¡‰ ‡ fdd„tdƒD ƒ}tdƒD ]}|| }t ˆ dg| dg ¡}t||ƒ q ˆ ˆ d d  }t ˆ g d¢¡}t||ƒ td	ƒD ]/}dg| }t |¡‰ t t ˆ dg¡j	|ƒ t t ˆ ddg¡j	|ƒ t t ˆ g d
¢¡j	|ƒ qQg d¢}tj
jg d¢|d�}t g d¢|¡}t|j|ƒ G dd„ dtjƒ}t g d¢¡ |¡}	t tt g d¢|	¡ƒ|ƒ d S )Nr   r   r   c                    ó   g | ]}ˆ | ‘qS r   r   ©Ú.0rO   r   r   r   Ú
<listcomp>¢   ó    z/TestEvaluation.test_polyval.<locals>.<listcomp>r   r   )r   r   r   r   r7   ©r   r   r   )FTFr6   )Úmask)é   r   r7   c                   @   s   e Zd ZdS )z&TestEvaluation.test_polyval.<locals>.CN)r@   rA   rB   r   r   r   r   ÚCº   s    r‹   ©r   r7   r   )r   r   ÚpolyvalÚsizerJ   ÚlinspacerI   r   rK   ÚshapeÚmare   r	   r‰   ÚndarrayÚviewÚtype)
r)   r:   rO   rR   rS   Údimsr‰   Úmxr‹   Úcxr   r   r   Útest_polyvalœ   s.   


zTestEvaluation.test_polyvalc                    sô  t ttjdgdgdd� tt g dg¡jdƒ tt g dg¡jdkƒ tt g dgd g¡jdƒ tt g dgd g¡jdkƒ tt dd¡dƒ tt dt 	d¡¡jd	kƒ t 
d
d¡‰ ‡ fdd„tdƒD ƒ}tddƒD ]}|| }t ˆ dg| ¡}t||ƒ qmˆ ˆ d  ˆ d  }t ˆ g d¢¡}t||ƒ tdƒD ]/}dg| }t |¡‰ tt ˆ dg¡j|ƒ tt ˆ ddg¡j|ƒ tt ˆ g d¢¡j|ƒ q�g d¢}t |¡}t 
d
d¡‰ tt ˆ |¡t ˆ |¡ƒ d}t dd¡‰ tjjdd|d�}tjˆ |dd�}t |jdd … ¡}t|jƒD ]}	t ˆ |	 |d d …|	f ¡||	< �qt||ƒ t ˆ dˆ  g¡‰ tjˆ |dd�}t |jdd … ˆ j ¡}t|jd ƒD ]#}	tˆ jd ƒD ]}
t ˆ |
 |d d …|	f ¡||	|
d d …f< �qX�qOt||ƒ d S )Nr   F)Útensorr   )r   r   )r   r   )r7   r7   )r7   r   c                    rƒ   r   r   r„   r   r   r   r†   Ô   r‡   z8TestEvaluation.test_polyvalfromroots.<locals>.<listcomp>)r   r   r   r7   r   rˆ   )é   r   iðÿÿÿéþÿÿÿr   r‚   r   éûÿÿÿ)rŽ   T)r   Ú
ValueErrorr   Úpolyvalfromrootsr   rŽ   r   r�   rJ   Úonesr�   rI   r   rK   Ú	polyrootsr�   rd   ÚrandomÚrandintÚemptyÚvstack)r)   r:   rO   rR   rS   r•   ÚptestÚrÚrshapeÚiiÚjjr   r   r   Útest_polyvalfromrootsÀ   s\   
ÿ




ÿ$
.ÿz$TestEvaluation.test_polyvalfromrootsc           
      C   s„   | j \}}}| j\}}}ttdtj||d d… | jƒ || }t ||| j¡}t||ƒ t 	d¡}	t |	|	| j¡}t
|jdkƒ d S ©NÚincompatibler   ©r   r7   )r   r:   r
   r�   r   Ú	polyval2dÚc2dr   rJ   rŸ   r   r�   ©
r)   Úx1Úx2Úx3Úy1Úy2Úy3rR   rS   Úzr   r   r   Útest_polyval2d   s   ÿ

zTestEvaluation.test_polyval2dc           
   	   C   sŽ   | j \}}}| j\}}}ttdtj|||d d… | jƒ || | }t |||| j¡}t||ƒ t 	d¡}	t |	|	|	| j¡}t
|jdkƒ d S r«   )r   r:   r
   r�   r   Ú	polyval3dÚc3dr   rJ   rŸ   r   r�   r°   r   r   r   Útest_polyval3d  s   ÿ

zTestEvaluation.test_polyval3dc           
      C   sl   | j \}}}| j\}}}t d||¡}t ||| j¡}t||ƒ t d¡}	t |	|	| j¡}t	|j
dkƒ d S )Nr€   r­   )r   r7   r   r7   )r   r:   rJ   Úeinsumr   Ú
polygrid2dr¯   r   rŸ   r   r�   r°   r   r   r   Útest_polygrid2d$  s   

zTestEvaluation.test_polygrid2dc           
      C   sr   | j \}}}| j\}}}t d|||¡}t |||| j¡}t||ƒ t d¡}	t |	|	|	| j¡}t	|j
dkƒ d S )Nr�   r­   )r   r7   r   r7   r   r7   )r   r:   rJ   r¼   r   Ú
polygrid3drº   r   rŸ   r   r�   r°   r   r   r   Útest_polygrid3d2  s   

zTestEvaluation.test_polygrid3dN)r@   rA   rB   rJ   re   Úc1dr¼   r¯   rº   r¡   r   r   r�   r:   r˜   rª   r¸   r»   r¾   rÀ   r   r   r   r   r}   ’   s    $@r}   c                   @   ó   e Zd Zdd„ Zdd„ ZdS )ÚTestIntegralc              	   C   s  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d� t ttjdgdgd� t ttjdgdd� t ttjddgdƒ td	d
ƒD ]}dg|d	  dg }tjdg||d�}t|ddgƒ qMtd
ƒD ]-}|d }dg| dg }|gdg|  d| g }tj|d|gd�}tt|ƒt|ƒƒ qntd
ƒD ]!}|d }dg| dg }tj|d|gdd�}tt d|¡|ƒ q td
ƒD ].}|d }dg| dg }|gdg|  d	| g }tj|d|gd	d�}tt|ƒt|ƒƒ qÆtd
ƒD ]8}td	d
ƒD ]0}dg| dg }|d d … }t|ƒD ]
}tj|dd�}�qtj||d�}tt|ƒt|ƒƒ �q qùtd
ƒD ]@}td	d
ƒD ]7}dg| dg }|d d … }t|ƒD ]}tj|d|gd�}�qQtj||t	t|ƒƒd�}tt|ƒt|ƒƒ �q=�q6td
ƒD ]B}td	d
ƒD ]9}dg| dg }|d d … }t|ƒD ]}tj|d|gdd�}�q–tj||t	t|ƒƒdd�}tt|ƒt|ƒƒ �q‚�q{td
ƒD ]B}td	d
ƒD ]9}dg| dg }|d d … }t|ƒD ]}tj|d|gd	d�}�qÝtj||t	t|ƒƒd	d�}tt|ƒt|ƒƒ �qÉ�qÂd S )Nr   ç      à?r   r   )Úlbnd)Úscl©Úaxisr~   r   r   )ÚmÚk)rÉ   rÊ   rÅ   )rÉ   rÊ   rÆ   ©rÉ   )
r   Ú	TypeErrorr   Úpolyintr�   rI   r   r   r�   Úlist)r)   rO   rÊ   rS   rÆ   ÚpolrR   rP   r   r   r   Útest_polyintC  s‚   ú	ú	ú	úÿzTestIntegral.test_polyintc                 C   sš   t j d¡}t  dd„ |jD ƒ¡j}tj|dd�}t||ƒ t  dd„ |D ƒ¡}tj|dd�}t||ƒ t  dd„ |D ƒ¡}tj|d	dd
�}t||ƒ d S )N©r7   r   c                 S   ó   g | ]}t  |¡‘qS r   ©r   rÍ   ©r…   rg   r   r   r   r†   –  ó    z2TestIntegral.test_polyint_axis.<locals>.<listcomp>r   rÇ   c                 S   rÒ   r   rÓ   rÔ   r   r   r   r†   š  rÕ   r   c                 S   s   g | ]	}t j|d d�‘qS )r7   )rÊ   rÓ   rÔ   r   r   r   r†   ž  s    r7   )rÊ   rÈ   )rJ   r¡   r¤   ÚTr   rÍ   r   ©r)   r¯   rR   rS   r   r   r   Útest_polyint_axis’  s   

zTestIntegral.test_polyint_axisN)r@   rA   rB   rÐ   rØ   r   r   r   r   rÃ   A  s    OrÃ   c                   @   rÂ   )ÚTestDerivativec                 C   s  t ttjdgdƒ t ttjdgdƒ tdƒD ]}dg| dg }tj|dd�}tt|ƒt|ƒƒ qtdƒD ]'}tddƒD ]}dg| dg }tjtj||d�|d�}t	t|ƒt|ƒƒ q<q5tdƒD ])}tddƒD ]!}dg| dg }tjtj||dd�|dd�}t	t|ƒt|ƒƒ qhqad S )	Nr   rÄ   r   r   r   rË   r   )rÉ   rÆ   )
r   rÌ   r   Úpolyderr�   rI   r   r   rÍ   r   )r)   rO   rR   rS   rP   r   r   r   Útest_polyder¥  s&   ýýÿzTestDerivative.test_polyderc                 C   sl   t j d¡}t  dd„ |jD ƒ¡j}tj|dd�}t||ƒ t  dd„ |D ƒ¡}tj|dd�}t||ƒ d S )NrÑ   c                 S   rÒ   r   ©r   rÚ   rÔ   r   r   r   r†   Â  rÕ   z4TestDerivative.test_polyder_axis.<locals>.<listcomp>r   rÇ   c                 S   rÒ   r   rÜ   rÔ   r   r   r   r†   Æ  rÕ   r   )rJ   r¡   r¤   rÖ   r   rÚ   r   r×   r   r   r   Útest_polyder_axis¾  s   
z TestDerivative.test_polyder_axisN)r@   rA   rB   rÛ   rÝ   r   r   r   r   rÙ   £  s    rÙ   c                   @   s@   e Zd Zej d¡d d Zdd„ Zdd„ Zdd	„ Zd
d„ Z	dS )Ú
TestVanderr‚   r   r   c                 C   sÎ   t  d¡}t |d¡}t|jdkƒ tdƒD ]}dg| dg }t|d|f t ||¡ƒ qt  	ddgddgdd	gg¡}t |d¡}t|jd
kƒ tdƒD ]}dg| dg }t|d|f t ||¡ƒ qMd S )Nr7   rÑ   r   r   r   .r   r   é   )r7   r   r   )
rJ   rd   r   Ú
polyvanderr   r�   rI   r   r�   re   )r)   r   ÚvrO   rq   r   r   r   Útest_polyvanderÏ  s   
þzTestVander.test_polyvanderc                 C   sx   | j \}}}tj d¡}t ||ddg¡}t |||¡}t ||j¡}t||ƒ t |g|gddg¡}t	|j
dkƒ d S )Nr­   r   r   )r   r   rß   )r   rJ   r¡   r   Úpolyvander2dr®   ÚdotÚflatr   r   r�   ©r)   r±   r²   r³   rg   ÚvanrR   rS   r   r   r   Útest_polyvander2dà  s   
zTestVander.test_polyvander2dc                 C   s€   | j \}}}tj d¡}t |||g d¢¡}t ||||¡}t ||j¡}t||ƒ t |g|g|gg d¢¡}t	|j
dkƒ d S )NrŒ   r6   )r   r   é   )r   rJ   r¡   r   Úpolyvander3dr¹   rä   rå   r   r   r�   ræ   r   r   r   Útest_polyvander3dí  s   
zTestVander.test_polyvander3dc                 C   s   t  d¡}tttj|dƒ d S )Nr7   r   )rJ   rd   r   r�   r   rà   )r)   r   r   r   r   Útest_polyvandernegdegú  s   
z TestVander.test_polyvandernegdegN)
r@   rA   rB   rJ   r¡   r   râ   rè   rë   rì   r   r   r   r   rÞ   Ë  s    rÞ   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚTestCompanionc                 C   s"   t ttjg ƒ t ttjdgƒ d S r0   )r   r�   r   Úpolycompanionr(   r   r   r   Útest_raises  s   zTestCompanion.test_raisesc                 C   s<   t ddƒD ]}dg| dg }tt |¡j||fkƒ qd S )Nr   r   r   )rI   r   r   rî   r�   )r)   rO   rq   r   r   r   Útest_dimensions  s   þzTestCompanion.test_dimensionsc                 C   s   t t ddg¡d dkƒ d S )Nr   r   )r   r   ç      à¿)r   r   rî   r(   r   r   r   Útest_linear_root
  s   zTestCompanion.test_linear_rootN)r@   rA   rB   rï   rð   rò   r   r   r   r   rí   ÿ  s    rí   c                   @   sL   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dS )ÚTestMiscc              	   C   sˆ   t  g ¡}tt|ƒdgƒ tddƒD ]/}t t tj dd| d ¡dd d… ¡}t	| }t  |¡d|d   }tt|ƒt|ƒƒ qd S )Nr   r   r   r   )
r   Úpolyfromrootsr   r   rI   rJ   Úcosr�   ÚpiÚTlist)r)   rS   rO   ÚrootsrR   r   r   r   Útest_polyfromroots  s   
*üzTestMisc.test_polyfromrootsc                 C   sl   t t dg¡g ƒ t t ddg¡dgƒ tddƒD ]}t dd|¡}t t |¡¡}t t|ƒt|ƒƒ qd S )Nr   r   rñ   r   r   )r   r   r    rI   rJ   r�   rô   r   )r)   rO   rR   rS   r   r   r   Útest_polyroots  s   ýzTestMisc.test_polyrootsc                 C   sÐ  dd„ }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d	� t ttjdgdgdddgd	� 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 dd¡}||ƒ}t ||d¡}tt|ƒdƒ t	t 
||¡|ƒ t ||g d¢¡}tt|ƒdƒ t	t 
||¡|ƒ t ||d¡}tt|ƒdƒ t	t 
||¡|ƒ t ||g d¢¡}tt|ƒdƒ t	t 
||¡|ƒ t |t ||g¡jd¡}t	|t ||g¡jƒ t |t ||g¡jg d¢¡}t	|t ||g¡jƒ t |¡}| ¡ }	d|dd d…< d|	dd d…< tj||	d|d	�}
t	|
|ƒ tj||	g d¢|d	�}
t	|
|ƒ tj|t |	|	g¡jd|d	�}t	|t ||g¡jƒ tj|t |	|	g¡jg d¢|d	�}t	|t ||g¡jƒ g d¢}t	t ||d¡ddgƒ t	t ||ddg¡ddgƒ t dd¡}||ƒ}t ||d¡}t	t 
||¡|ƒ t ||g d¢¡}t	t 
||¡|ƒ t	||ƒ d S )Nc                 S   s   | | d  | d  S )Nr   r   r   r   r   r   r   rw   "  r+   z TestMisc.test_polyfit.<locals>.fc                 S   s   | d | d  d S )Nr   r   r   r   r   r   r   r   Úf2%  r+   z!TestMisc.test_polyfit.<locals>.f2r   r   r   r   )Úw)r   r   rß   r7   r   )r   r   r   r7   r   )r   r   r   r7   r   )r   y              ð?r   y       €      ð¿)r   r   r   )r   r�   r   ÚpolyfitrÌ   rJ   r�   r   Úlenr   r�   re   rÖ   Ú
zeros_likeÚcopy)r)   rw   rû   r   r:   Úcoef3Úcoef4Úcoef2drü   ÚywÚwcoef3Úwcoef2dÚcoef1Úcoef2r   r   r   Útest_polyfit!  sj   


"zTestMisc.test_polyfitc                 C   sb   g d¢}t ttj|dƒ tt |¡|d d… ƒ tt |d¡|d d… ƒ tt |d¡dgƒ d S )N)r   r   r   r   r   r   r   r   r   )r   r�   r   r   r   )r)   rq   r   r   r   Útest_polytrimg  s
   zTestMisc.test_polytrimc                 C   s   t t dd¡ddgƒ d S )Nr7   r   ©r   r   Úpolyliner(   r   r   r   Útest_polyliner  s   zTestMisc.test_polylinec                 C   s   t t dd¡dgƒ d S )Nr7   r   r  r(   r   r   r   Útest_polyline_zerou  s   zTestMisc.test_polyline_zeroc                 C   s–   t jjdgdgdd�}t|jdgƒ t jjddgddgdd�}t|jdgƒ ttjƒ� t jjddgddgdd�}W d   ƒ d S 1 sDw   Y  d S )Nr   r   r   )Údegr   gÍÌÌÌÌÌ @gffffff @)	r   r8   Úfitr   rq   r   r   ÚpuÚRankWarning)r)   rz   r   r   r   Útest_fit_degenerate_domainx  s   "ÿz#TestMisc.test_fit_degenerate_domainc                 C   sd   t jddgt jd�}t jj|||d�}|dƒ}t|jt jƒ t  dt  d¡¡}t|d jt jƒ d S )Nr   r   rn   rj   r   r   )	rJ   re   Úfloat32Ú
polynomialr8   r   ro   r^   Úfloat64)r)   rü   rz   rá   Úarrr   r   r   Útest_result_type€  s   zTestMisc.test_result_typeN)r@   rA   rB   rù   rú   r	  r
  r  r  r  r  r   r   r   r   ró     s    	Fró   )-Ú__doc__Ú	functoolsr   Ú	fractionsr   ÚnumpyrJ   Únumpy.polynomial.polynomialr  r   Únumpy.polynomial.polyutilsÚ	polyutilsr  r<   r   r   Únumpy.testingr   r   r   r   r	   r
   r   r   ÚT0ÚT1ÚT2ÚT3ÚT4ÚT5ÚT6ÚT7ÚT8ÚT9r÷   r%   rC   ri   r}   rÃ   rÙ   rÞ   rí   ró   r   r   r   r   Ú<module>   s>    $E 0b(4