a
    ˆù»j  ã                   @   sl   d dl Zd dlmZmZ d dlmZ d dlmZm	Z	m
Z
 dd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Zdd„ ZdS )é    N)Úassert_allcloseÚassert_)ÚFuncData)ÚgammaÚgammalnÚloggammac                  C   sn   t  g d¢¡} |  ¡ }t  | |¡\} }| d|   ¡ }t  |t|ƒf¡j}dd„ }t||ddddd� 	¡  d S )	N©g     àXÀg      #Àg      à¿ç      à?g      #@g     àX@ù              ð?c                 S   s   t  t| ƒ¡S )N)ÚnpÚexpr   ©Úz© r   úGE:\soccer\ml_env\Lib\site-packages\scipy/special/tests/test_loggamma.pyÚf   s    ztest_identities1.<locals>.fr   é   ç›+¡†›„=©ZrtolZatol)
r   ÚarrayÚcopyÚmeshgridÚflattenÚvstackr   ÚTr   Úcheck©ÚxÚyr   Údatasetr   r   r   r   Útest_identities1   s    r    c                  C   sx   t  g d¢¡} |  ¡ }t  | |¡\} }| d|   ¡ }t  |t  |¡t|ƒ f¡j}dd„ }t	||ddddd� 
¡  d S )	Nr   r
   c                 S   s   t | d ƒS )Nr   )r   r   r   r   r   r      s    ztest_identities2.<locals>.fr   r   r   r   )r   r   r   r   r   r   Úlogr   r   r   r   r   r   r   r   Útest_identities2   s    r"   c                  C   s\   t jt  dd¡ t  dd¡f d } t  | t| ƒf¡j}dd„ }t||ddddd	� ¡  d S )
Né
   éöÿÿÿr	   c                 S   s   t j| dd�} t| ƒjS )NZ
complex128)Zdtype)r   r   r   Úrealr   r   r   r   r   +   s    z)test_complex_dispatch_realpart.<locals>.fr   r   r   r   )r   Zr_Úlogspacer   r   r   r   r   )r   r   r   r   r   r   Útest_complex_dispatch_realpart$   s    $r'   c                  C   sd   t  dd¡d } t  | t| ƒf¡j}tt|ddddd� ¡  ttdƒt j	kƒ tt  
tdƒ¡ƒ d S )	Nr$   r#   r	   r   r   r   r   éÿÿÿÿ)r   r&   r   r   r   r   r   r   r   ÚinfÚisnan)r   r   r   r   r   Útest_real_dispatch2   s
    r+   c                  C   s4   t tddƒƒ} t tddƒƒ}t| | ¡ ddd� d S )Ng333333Àç        ç       €çVçž¯Ò<r   r   )r   Úcomplexr   Ú	conjugate)r   Úzbarr   r   r   Útest_gh_6536;   s    r2   c                  C   sP   t  ddd¡ } t  dd„ | D ƒ¡}t  dd„ | D ƒ¡}t|| ¡ ddd	� d S )
Ni,  iâÿÿÿéd   c                 S   s   g | ]}t |d ƒ‘qS )r,   ©r/   ©Ú.0Zx0r   r   r   Ú
<listcomp>D   ó    z#test_branch_cut.<locals>.<listcomp>c                 S   s   g | ]}t |d ƒ‘qS )r-   r4   r5   r   r   r   r7   E   r8   r.   r   r   )r   r&   Zasarrayr   r0   )r   r   r1   r   r   r   Útest_branch_cutA   s    r9   )Únumpyr   Znumpy.testingr   r   Zscipy.special._testutilsr   Zscipy.specialr   r   r   r    r"   r'   r+   r2   r9   r   r   r   r   Ú<module>   s   	