Ë
    âQ(hè  ã                   óþ   — d dl Z d dlZd dlmZmZmZ d dlmZ	 d dl
mZ d„ Zd„ Zd„ Zd„ Ze j                   j#                  dej$                   d fej$                  ej$                  fg«      d	„ «       Zd
„ Zd„ Zd„ Zd„ Zy)é    N)Úassert_Úassert_equalÚassert_allclose)Úassert_func_equalc                  óö  — t        t        j                  d«      t        dt        j                  «      t        t        j                  t        j                  «      t        t        j                  d«      t        dt        j                  «      g} | D ]g  }t        j                  |«      }t        t        j                  |j                  «      «       t        t        j                  |j                  «      «       Œi y )Nr   é   )	ÚcomplexÚnpÚnanÚscÚwrightomegar   ÚisnanÚrealÚimag©ÚptsÚpÚress      úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/special/tests/test_wrightomega.pyÚtest_wrightomega_nanr   	   sœ   € Ü”2—6‘6˜1ÓÜ�1”b—f‘fÓÜ”2—6‘6œ2Ÿ6™6Ó"Ü”2—6‘6˜1ÓÜ�1”b—f‘fÓð	€Cð
 ò $ˆÜ�n‰n˜QÓˆÜ”—‘˜Ÿ™Ó"Ô#Ü”—‘˜Ÿ™Ó"Õ#ñ$ó    c                  óœ  — t        t        j                   t        j                  dz  «      t        t        j                   t        j                   dz  «      t        t        j                   dt        j                  z  dz  «      t        t        j                   dt        j                  z  dz  «      g} t        dd«      t        dd«      t        dd«      t        dd«      g}t	        | |«      D ]Z  \  }}t        j                  |«      }t        |j                  |j                  «       t        |j                  |j                  «       Œ\ y )Né   é   éýÿÿÿg        g       €)
r	   r
   ÚinfÚpiÚzipr   r   r   r   r   )r   Úexpected_resultsr   Úexpectedr   s        r   Útest_wrightomega_inf_branchr!      sö   € Ü”B—F‘F�7œBŸE™E !™GÓ$Ü”B—F‘F�7œRŸU™U˜F 1™HÓ%Ü”B—F‘F�7˜AœbŸe™e™G A™IÓ&Ü”B—F‘F�7˜BœrŸu™u™H Q™JÓ'ð)€Cô    SÓ)Ü  TÓ*Ü  cÓ*Ü  dÓ+ð-Ðô ˜3Ð 0Ó1ò .‰ˆˆ8Ü�n‰n˜QÓˆô
 	�S—X‘X˜xŸ}™}Ô-Ü�S—X‘X˜xŸ}™}Õ-ñ.r   c                  ó   — t        t        j                  d«      t        t        j                   d«      t        dt        j                  «      t        dt        j                   «      g} | D ]!  }t        t	        j
                  |«      |«       Œ# y )Né
   )r	   r
   r   r   r   r   )r   r   s     r   Útest_wrightomega_infr$   (   si   € Ü”2—6‘6˜2ÓÜ”B—F‘F�7˜BÓÜ�2”r—v‘vÓÜ�2œŸ™�wÓð!€Cð ò +ˆÜ”R—^‘^ AÓ&¨Õ*ñ+r   c                  ó:  — t        dt        j                  «      t        dt        j                   «      g} | D ]a  }t        j                  |«      }t        |d«       t        t        j                  |j                  «      t        j                  d«      k(  «       Œc y )Ng      ð¿F)
r	   r
   r   r   r   r   r   Úsignbitr   Úbool_r   s      r   Útest_wrightomega_singularr(   1   sp   € Ü�4œŸ™ÓÜ�4œ"Ÿ%™%˜Ó ð"€Càò 9ˆÜ�n‰n˜QÓˆÜ�S˜$ÔÜ”—
‘
˜3Ÿ8™8Ó$¬¯©°«Ñ7Õ8ñ9r   z
x, desiredc                 ó8   — t        j                  | «      |k(  sJ ‚y ©N)r   r   )ÚxÚdesireds     r   Ú test_wrightomega_real_infinitiesr-   :   s   € ô
 �>‰>˜!Ó Ò'Ð'Ñ'r   c                  ót   — t        j                  t        j                  t         j                  «      «      sJ ‚y r*   )r
   r   r   r   r   © r   r   Útest_wrightomega_real_nanr0   B   s!   € Ü�8‰8”B—N‘N¤2§6¡6Ó*Ô+Ð+Ñ+r   c                  óv  — dt        j                  t        «      j                  z  } d}t        j                  |t         j
                   «      }t        j                  |t         j
                  «      }d}d}t        t        j                  |«      |d| ¬«       t        t        j                  |«      |d| ¬«       y )Né   g@Œµx¯Dg?Œµx¯DgAŒµx¯Dr   ©ÚatolÚrtol©	r
   ÚfinfoÚfloatÚepsÚ	nextafterr   r   r   r   ©Údesired_errorÚ	crossoverÚx_before_crossoverÚx_after_crossoverÚdesired_before_crossoverÚdesired_after_crossovers         r   Ú&test_wrightomega_real_series_crossoverrB   F   s•   € ØœŸ™¤›×+Ñ+Ñ+€MØ€IÜŸ™ i´"·&±&°Ó9ÐÜŸ™ Y´·±Ó7Ðà7ÐØ7ÐÜÜ
�‰Ð)Ó*Ø ØØõ	ô Ü
�‰Ð(Ó)ØØØö	r   c                  óv  — dt        j                  t        «      j                  z  } d}t        j                  |t         j
                  «      }t        j                  |t         j
                   «      }d}d}t        t        j                  |«      |d| ¬«       t        t        j                  |«      |d| ¬«       y )Nr2   iÎÿÿÿgy~T}%m;g~T}%m;r   r3   r6   r;   s         r   Ú,test_wrightomega_exp_approximation_crossoverrD   \   s•   € ØœŸ™¤›×+Ñ+Ñ+€MØ€IÜŸ™ i´·±Ó8ÐÜŸ™ Y´·±°Ó8Ðà8ÐØ7ÐÜÜ
�‰Ð)Ó*Ø ØØõ	ô Ü
�‰Ð(Ó)ØØØö	r   c                  ó²   — t        j                  ddd«      } t        j                  | dz   «      j                  }t        t        j                  || dd¬«       y )Niþÿÿiô  ié  y                r   g›+¡†›„=r3   )r
   Úlinspacer   r   r   r   )r+   Úresultss     r   Ú$test_wrightomega_real_versus_complexrH   r   s@   € Ü
�‰�D˜#˜tÓ$€AÜ�n‰n˜Q ™VÓ$×)Ñ)€GÜ”b—n‘n g¨q°q¸uÖEr   )ÚpytestÚnumpyr
   Únumpy.testingr   r   r   Úscipy.specialÚspecialr   Úscipy.special._testutilsr   r   r!   r$   r(   ÚmarkÚparametrizer   r-   r0   rB   rD   rH   r/   r   r   ú<module>rQ      s‡   ðÛ Û ß @Ñ @å Ý 6ò	$ò.ò&+ò9ð ‡�×Ñ˜Ø‡f�f€Wˆa€LØ‡V�VˆR�V‰VÐð(ó ñ(ó	ð(ò,òò,ó,Fr   