
    bi&                     
   d dl Zd dlmZmZ d dlZd dlmZmZ ej                  j                  dej                  ej                  ej                  g      ej                  j                  dg d      d               Zej                  j                  dej                  ej                  ej                  g      ej                  j                  ddej                  d	fd
ej                   d	fd
ej                   d	fdej                   ej                   fdd	ej                   fg      d               Zd Zej                  j                  dej                  ej                  ej                  g      ej                  j                  dg d      d               Zej                  j                  dej                  ej                  ej                  g      ej                  j                  ddd
d
d
ej                   d	fd
ddej                   ej                   fd
dd
dej                   fd
ddej                  d	fdddej                  dfd
d
dej                   dfdddej                   ej                   fdg	      d               Zd Zy)    N)assert_allcloseassert_equal)_gen_harmonic_normalized_gen_harmonictypz	n, a, ref))   g      "@gc9?)  g      @gS@v?)
         ?gtv?)'        ?gʅ@)r   grZ|
 ?g/`	#@)P   g ?g@)K   g    ?g m@)d   -     ?gY߿@)r   g     ?g8Y߿@)r         ?gCY߿@)   r   g++@)@  r   g8y!#@)   ?gjPDDDD@)ia  r   gZ9ah%@)r	   gףp=
?gI3oWl@)r	         ?gc5 3@)r   g      ?gӨlGҔ@)r   g:0yE>g@)   gؗҜ<g-@)r           g      Y@)   g            $@)r         gǆX@c                 D    t         | |      |      }t        ||d       y )N+<)rtol)r   r   r   narefhs        `/home/cdr/jupyterlab/.venv/lib/python3.12/site-packages/scipy/special/tests/test_gen_harmonic.pytest_gen_harmonicr&      s     6 	c!fa AAs'    r
   r         c                 @    t         | |      |      }t        ||       y N)r   r   r    s        r%   test_gen_harmonic_exact_casesr-   *   s     	c!fa ACr'   c                  l    t        t        j                  d      } t        | t        j                         y )Nr   )r   npnanr   r$   s    r%   test_gen_harmonic_n_nanr2   8   s     bffd#ABFFr'   zj, k, n, a, ref)	)    r4   r   ge8ܐ:)r3   r4   r4   g      @gZ$=}>)r(      r)   r   gZ=?)i,    r6   r   gsZ?)i  i	  i  r   g0=W?)r
               ?g!ch?)r8   r8      g      ?gÌƅ+w?)r
   r7   r8   g      g_ﵗ?)r(   r   r   r   g]Q?c                 ^    t         | |       | |       | |      |      }t        ||d       y )Nr   )r   r   r   jkr!   r"   r#   r$   s          r%   test_normalized_gen_harmonicr?   =   s,     	!QQQ;AAsE"r'   )r(   r(   r(   r9   r   r5   r   r   r   r   )r)      r   r   r9   c                 \    t         | |       | |       | |      |      }t        ||       y r,   )r   r   r<   s          r%   (test_normalized_gen_harmonic_exact_casesrB   O   s*     	!QQQ;ACr'   c                  p    t        dt        j                  dd      } t        | t        j                         y )Nr   r   g?)r   r/   r0   r   r1   s    r%   &test_normalized_gen_harmonic_input_nanrD   a   s$     bffdD9ABFFr'   )numpyr/   numpy.testingr   r   pytestscipy.special._ufuncsr   r   markparametrizeint32int64float64r&   infr0   r-   r2   r?   rB   rD    r'   r%   <module>rP      sW    7  I 288RZZ @A$2(3 B4(
 288RZZ @A"&&#"&&##rvv	 B

 288RZZ @A1# B#
 288RZZ @AArvvsArvvrvvAtRVVArvvsArvvsBAw B
r'   