o
    ?Hh                     @   s>   d dl Zd dlmZmZ d dlZd dlmZ G dd dZ	dS )    N)assert_allcloseassert_equalc                   @   s   e Zd Zdd Zdd Zejjdej	de
j fej	ddfej	de
jfej	d	e
jfej	d
e
jfejde
jfejddfejde
j fejd	e
jfejd
e
jfg
g dddd Zdd ZdS )TestInverseErrorFunctionc                 C   s2   t ddd}ttd| t|ddd d S )N   e   r   V瞯<rtolatol)nplinspacer   scerfcinverfinv)selfx r   _/home/air/sanwanet/gpt-api/venv/lib/python3.10/site-packages/scipy/special/tests/test_erfinv.pytest_compliment	   s   $z(TestInverseErrorFunction.test_complimentc                 C   s4   t g d}t|}g d}t||ddd d S )N)
r   g?g?g333333?g?g      ?g333333?gffffff?g?g?)
g        gt9%D?gE	r7,?g^Htp?gM?g
$?gEd0?gOBکs?g)%?gQwF?r   r   r	   )r   arrayr   r   r   )r   yactualexpectedr   r   r   test_literal_values   s   	
z,TestInverseErrorFunction.test_literal_valueszf, x, yr   r   r   id   g          )
zerfinv at lower boundzerfinv at midpointzerfinv at upper boundzerfinv below lower boundzerfinv above upper boundzerfcinv at lower boundzerfcinv at midpointzerfcinv at upper boundzerfcinv below lower boundzerfcinv above upper bound)idsc                 C   s   t ||| d S )N)r   )r   fr   r   r   r   r   test_domain_bounds'   s   z+TestInverseErrorFunction.test_domain_boundsc                 C   sN   t g d}t g d}tt||dd ttt||dd d S )N)g#B;r   g+=g|=g:0yE>gv(x>gw$}>gư>)g_;g* <gfQ=g6^ D\=gIC>gr4iu>gKŢ+z>gg>r   )r
   g+<)r   r   r   r   r   erf)r   r   r   r   r   r   test_erfinv_asymptE   s   
z+TestInverseErrorFunction.test_erfinv_asymptN)__name__
__module____qualname__r   r   pytestmarkparametrizer   r   r   infnanr   r   r!   r   r   r   r   r      s(    


r   )
numpyr   numpy.testingr   r   r%   scipy.specialspecialr   r   r   r   r   r   <module>   s
    