
    tKg*                         d dl Zd dlmZmZmZ d dlmZmZm	Z	m
Z
 d dlZd Zd Zd Zd Zd Zd	 Zd
 Zd Zej(                  j+                  dddgddgg      d        Zy)    N)assert_equalassert_almost_equalassert_allclose)boxcoxboxcox1p
inv_boxcoxinv_boxcox1pc                  d   t        j                  g d      } t        | d      }t        |t        j                  |              t        | d      }t        || dz
         t        | d      }t        |d| dz  dz
  z         t        j                  g d      }t        d|      }t        |d|z         y )N)      ?         r   r   r   r   r   r   r         )nparrayr   r   logxylams      c/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/special/tests/test_boxcox.pytest_boxcox_basicr   	   s    
 A 	q!A266!9% 	q!A1q5! 	q!A31q>* ((;
Cq#A4#:&    c                  f    d} d}t        | |      }t        |t        j                  |       d       y )Ng     ?P7xf +=rtol)r   r   r   r   r   lmbdar   s      r   test_boxcox_underflowr"      s,    AEq%AArvvayu-r   c                     t        j                  g d      } t        | g d      }t        |t        j                  t         j                  t         j                  t         j                  g             d} t        | ddg      }t        |t        j                  t         j
                   t         j
                   g             y )N)r$   g      ࿩r          @      r         )r   r   r   r   naninfr   r   s     r   test_boxcox_nonfiniter,   $   s~    
 Aq"#ABHHbffbffbff567 	
Aq4)ABHHrvvgw/01r   c                  ^   t        j                  g d      } t        | d      }t        |t        j                  |              t        | d      }t        ||        t        | d      }t        |d| z  d| z   z         t        j                  g d      }t        d|      }t        |d|z         y )	N)g      пg#Bǻr   g#B;g      ?r      r   r   r   r   r   r$   r   )r   r   r   r   log1pr   s      r   test_boxcox1p_basicr0   0   s    
67A 	AA288A;' 	AA1 	AA3q5!a%=) ((;
CSA4#:&r   c                      t        j                  ddg      } t        j                  ddg      }t        | |      }t        |t        j                  |       d       y )NV瞯<r   gC]r2<r   r   )r   r   r   r   r/   r    s      r   test_boxcox1p_underflowr3   E   sF    
%!AHHfe_%EEAArxx{/r   c                     t        j                  g d      } t        | g d      }t        |t        j                  t         j                  t         j                  t         j                  g             d} t        | ddg      }t        |t        j                  t         j
                   t         j
                   g             y )N)r5   r'   r%   r$   r(   r   )r   r   r   r   r)   r*   r+   s     r   test_boxcox1p_nonfiniter6   L   s~    
 A$%ABHHbffbffbff567 	AT1IABHHrvvgw/01r   c                  L   t        j                  g d      } t        j                  g d      }t        | |      }t        ||      }t	        | |       t        j                  g d      } t        j                  g d      }t        | |      }t        ||      }t	        | |       y )N)g        g      ?r&   )r   r   r   r   r   r   r	   )r   r   r   x2s       r   test_inv_boxcoxr9   X   s}    
A
((<
 Cq#A	As	B2
A
((<
 CCA	a	B2r   c                  @    d} d}t        | |      }t        || d       y )Nr2   r   r   r   )r	   r   )r   r   r   s      r   test_inv_boxcox1p_underflowr;   f   s$    A
CQAAqu%r   zx, lmbd      g{Gz?iec                     t        | |      }t        j                  |      sJ t        ||      }t	        | |       t        | dz
  |      }t        j                  |      sJ t        ||      }t	        | dz
  |       y )Nr   )r   r   isfiniter   r   r   r	   )r   lmbr   x_invy1px1p_invs         r   test_boxcox_premature_overflowrD   m   ss     	q#A;;q>>q#EAu 1Q3
C;;s3$GAaC!r   )numpyr   numpy.testingr   r   r   scipy.specialr   r   r   r	   pytestr   r"   r,   r0   r3   r6   r9   r;   markparametrizerD    r   r   <module>rL      sx     L L D D 
'(.	2'*0	2& 	3Z
D\
"
"r   