
    S_fp
                     h    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 Zd Zd Zd Zd Zd	 Zd
 Z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      ?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   /   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   D   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   K   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   W   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;   e   s$    A
CQAAqu%r   )numpyr   numpy.testingr   r   r   scipy.specialr   r   r   r	   r   r"   r,   r0   r3   r6   r9   r;    r   r   <module>r@      s<     L L D D
'(.	2'*0	2&r   