U
    »mœd
  ã                   @   sF   d dl Z d dlZd dlmZ d dlmZ d dlm	Z	 G dd„ dƒZ
dS )é    N)Úassert_allclose)ÚFuncDatac                   @   sê   e Zd Zej dejddfdejdfddejfdejdfejddfddejfejddfejddfg¡dd„ ƒZej dej	 dfej	dfg¡dd„ ƒZ
d	d
„ Zdd„ Zej ddddej	fdg¡dd„ ƒZej ddddg¡dd„ ƒZdS )ÚTestVoigtProfilezx, sigma, gammaé   r   c                 C   s   t  t |||¡¡st‚d S ©N)ÚnpÚisnanÚscÚvoigt_profileÚAssertionError)ÚselfÚxÚsigmaÚgamma© r   úZ/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/scipy/special/tests/test_faddeeva.pyÚtest_nan   s    zTestVoigtProfile.test_nanz
x, desiredc                 C   s   t  |dd¡|kst‚d S )Nr   ©r	   r
   r   )r   r   Údesiredr   r   r   Útest_inf   s    zTestVoigtProfile.test_infc                 C   sŒ   t  ddddgddddgd	d
ddgddddgddddgddddgddddgdddd gd!d"d#d$gd%d&d'd(gg
¡}ttj|d)d*d+d,d-� ¡  d S ).Ng�Âõ(\�ÀgHáz®‡F@g¤p=
×£@gškÝä�ê?gš™™™™™©¿gìQ¸…ë@gáz®G!8@geÌ�9·ˆ?gö(\�Âõ+Àg®GázÔ0@g�Âõ(\/E@gù3ç‹“y?gR¸…ëQ)Àgáz®GáÊ?gHáz®G@g�,<ái–„?g®Gáz®&@g      @gö(\�Âõ5@gþÛI‡?g…ëQ¸'Àgffffff4@gHáz®‡>@gŒ‡xïD?g×£p=
W"Àg\�Âõ(œ9@g¤p=
×£ @g�é
Ú‡?g×£p=
—0@gÍÌÌÌÌ2@g      @gZA.Yî‹?g¸…ëQ8"@gö(\�Âõ @g
×£p=ªC@g|¾ëÍµd?g
×£p=ªEÀg333333Ó?g×£p=
×F@gÃÊhsn?)r   r   é   é   r   çVçž¯Ò<)ÚatolÚrtol)r   Úarrayr   r	   r
   Úcheck)r   Zpointsr   r   r   Útest_against_mathematica   s(    









öúz)TestVoigtProfile.test_against_mathematicac                 C   s8   t  ddd¡}tt |dd¡t | dd¡ddd� d S )Nr   é
   é   r   r   ©r   r   ©r   Zlinspacer   r	   r
   )r   r   r   r   r   Útest_symmetry9   s    üzTestVoigtProfile.test_symmetryzx, sigma, gamma, desired)r   r   r   r   c                 C   s   t  |||¡|kst‚d S r   r   )r   r   r   r   r   r   r   r   Útest_corner_casesB   s    z"TestVoigtProfile.test_corner_caseszsigma1, gamma1, sigma2, gamma2)r   r   ç¼‰Ø—²Òœ<r   )r   r   r   r$   )r   r   r$   r$   c                 C   s6   t  ddd¡}tt |||¡t |||¡ddd� d S )Nr   r   r   r$   r    r!   )r   Zsigma1Zgamma1Zsigma2Zgamma2r   r   r   r   Útest_continuityI   s    üz TestVoigtProfile.test_continuityN)Ú__name__Ú
__module__Ú__qualname__ÚpytestÚmarkZparametrizer   Únanr   Úinfr   r   r"   r#   r%   r   r   r   r   r   	   s:   







ø


þ
	þ
ýr   )r)   Únumpyr   Znumpy.testingr   Zscipy.specialÚspecialr	   Zscipy.special._testutilsr   r   r   r   r   r   Ú<module>   s
   