3
Od
                 @   sP   d dl Zd dlmZmZmZ d dlmZmZ G dd de	Z
G dd de	ZdS )    N)assert_equalassert_almost_equalassert_allclose)logitexpitc               @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
	TestLogitc             C   s\   t jddd}t j||d}t jdd t|}W d Q R X t|| t|jt j| d S )Nr      
   )dtypeignore)divide)nplinspacearrayerrstater   r   r   r
   )selfr
   expectedaactual r   R/var/www/html/virt/lib64/python3.6/site-packages/scipy/special/tests/test_logit.pycheck_logit_out   s    
zTestLogit.check_logit_outc             C   s:   t jt j d
dddddddt jg
t jd}| jd	| d S )NgcY@ @gwQ?gDB.?gԙ?gc?gC?C.?gN7?Q?)r
   f4gcY@ gwQgDB.gԙ̿)r   r   inffloat32r   )r   r   r   r   r   test_float32   s    zTestLogit.test_float32c             C   s4   t jt j dddd	ddddt jg
}| jd| d S )
Ngu? @g$/Q?gDB.?g?f8gu? g$/QgDB.g̿)r   r   r   r   )r   r   r   r   r   test_float64   s    zTestLogit.test_float64c             C   sN   t jt jgd }t jdd tt jddddg}W d Q R X t|| d S )N   r   )invalidg      @g       @g      g       )r   r   nanr   r   r   )r   r   r   r   r   r   test_nan"   s     zTestLogit.test_nanN)__name__
__module____qualname__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d Zd	S )
	TestExpitc             C   sD   t jddd}t j||d}t|}t|| t|jt j| d S )Nr   r	   )r
   )r   r   r   r   r   r   r
   )r   r
   r   r   r   r   r   r   check_expit_out+   s
    
zTestExpit.check_expit_outc             C   s4   t jddddddddd	d
g
t jd}| jd| d S )Ng{j?g\wb֥?g~ܟ?g5?gs4 ?gǻe?g+?>S?gw?gݙ?gl?)r
   r   )r   r   r   r'   )r   r   r   r   r   r   2   s    zTestExpit.test_float32c             C   s.   t jddddddddd	d
g
}| jd| d S )Ng{j?g\wb֥?gIq?g!/?gs4 ?gǻe?gw?4S?gw?g4ؙ?g!/l?r   )r   r   r'   )r   r   r   r   r   r   :   s    
zTestExpit.test_float64c             C   s   x|t jt jt jfD ]h}xbdD ]Z}t j||d}tt|dd	d
 tt| dd	d
 tt|j| tt| j| qW qW d S )NX   Y       \,  ],  )r
   g      ?g#B;)Zatolg        )r(   r)   r*   r+   r,   r-   )	r   r   Zfloat64Z
longdoubler   r   r   r   r
   )r   r
   nr   r   r   
test_largeB   s    
zTestExpit.test_largeN)r"   r#   r$   r'   r   r   r/   r   r   r   r   r%   *   s   r%   )Znumpyr   Znumpy.testingr   r   r   Zscipy.specialr   r   objectr   r%   r   r   r   r   <module>   s   #