§
    µ³Ùgg  ã                   ó„   — d dl Zd dlmZmZmZ d dlmZmZm	Z	  G d„ d¦  «        Z
 G d„ d¦  «        Z G d„ d	¦  «        ZdS )
é    N)Úassert_equalÚassert_almost_equalÚassert_allclose)ÚlogitÚexpitÚ	log_expitc                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú	TestLogitc                 ó¾   — t          |¦  «        }t          |j        |j        ¦  «         dt          j        |j        ¦  «        j        z  }t          |||¬¦  «         d S )Né   ©Úrtol)r   r   ÚdtypeÚnpÚfinfoÚepsr   )ÚselfÚaÚexpectedÚactualr   s        úT/granary/edev/quantum/lib/python3.11/site-packages/scipy/special/tests/test_logit.pyÚcheck_logit_outzTestLogit.check_logit_out	   sU   € Ý�q‘”ˆÝ�V”\ 1¤7Ñ+Ô+Ð+Ø•"”(˜1œ7Ñ#Ô#Ô'Ñ'ˆÝ˜ ¨tÐ4Ñ4Ô4Ð4Ð4Ð4ó    c                 ó”  — t          j        t          j        dddt           j        ¬¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        gf¦  «        }t          j        t           j         dd	d
dddddt           j        dddgt           j        ¬¦  «        }|                      ||¦  «         d S )Nr   é   é
   ©r   g-Cëâ6?g9î”Öÿß?gãˆµø à?g½�£9²¢ ÀgFRQô¿gIîvÞB.æ¿gÉýÔ™÷�Ì¿gc°‡›ø�Ì?gðšãC.æ?g¹8*7Qô?g½�£9²¢ @gŽ˜4¡¤k"ÀgÐuýÿÿ¿gÐuýÿÿ?)r   ÚconcatenateÚlinspaceÚfloat32ÚarrayÚinfr   ©r   r   r   s      r   Útest_float32zTestLogit.test_float32   sÀ   € ÝŒN�BœK¨¨1¨b½¼
ÐCÑCÔCÝœZ¨Ñ/Ô/µ´¸GÑ1DÔ1DÝœZ¨Ñ0Ô0ð2ð3ñ 4ô 4ˆõ ”8�bœf˜W j°*¸nØ+¨m¸mØ&¨	µ2´6Ø'¨¸ðHõ #%¤*ð	.ñ .ô .ˆð
 	×Ò˜Q Ñ)Ô)Ð)Ð)Ð)r   c                 ó  — t          j        t          j        dddt           j        ¬¦  «        g d¢f¦  «        }t          j        t           j         dddd	d
dddt           j        dddg¦  «        }|                      ||¦  «         d S )Nr   r   r   r   )g:Œ0âŽyE>g÷øÿÿÿÿß?gØ_   à?gt«;?²¢ Àg`=µ.Qô¿gð9úþB.æ¿g%ššÇ÷�Ì¿g%ššÇ÷�Ì?gî9úþB.æ?g]=µ.Qô?gr«;?²¢ @gøaŠ»±k2Àg     $\½g    €ýÅ=)r   r   r   Úfloat64r!   r"   r   r#   s      r   Útest_float64zTestLogit.test_float64    s�   € ÝŒN�BœK¨¨1¨b½¼
ÐCÑCÔCØBÐBÐBðDñ Eô Eˆõ ”8�bœf˜WØ/Ø/Ø0Ø1Ø0Ø/Ø/Ø/ÝœVØ0Ø3Ø2ð4ñ 5ô 5ˆð 	×Ò˜Q Ñ)Ô)Ð)Ð)Ð)r   c                 ó
  — t          j        t           j        gdz  ¦  «        }t          j        d¬¦  «        5  t	          t          j        g d¢¦  «        ¦  «        }d d d ¦  «         n# 1 swxY w Y   t          ||¦  «         d S )Né   Úignore)Úinvalid)g      Àg       Àg       @g      @)r   r!   ÚnanÚerrstater   r   )r   r   r   s      r   Útest_nanzTestLogit.test_nan3   s·   € Ý”8�RœV˜H Q™JÑ'Ô'ˆÝŒ[ Ð*Ñ*Ô*ð 	9ð 	9Ý�2œ8Ð$6Ð$6Ð$6Ñ7Ô7Ñ8Ô8ˆFð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9õ 	�X˜vÑ&Ô&Ð&Ð&Ð&s   ¸$A(Á(A,Á/A,N)Ú__name__Ú
__module__Ú__qualname__r   r$   r'   r.   © r   r   r
   r
      sP   € € € € € ð5ð 5ð 5ð*ð *ð *ð"*ð *ð *ð&'ð 'ð 'ð 'ð 'r   r
   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú	TestExpitc                 óê   — t          j        ddd¦  «        }t          j        ||¬¦  «        }t          |¦  «        }t	          ||¦  «         t          |j        t          j        |¦  «        ¦  «         d S )Néüÿÿÿr)   r   r   )r   r   r!   r   r   r   r   )r   r   r   r   r   s        r   Úcheck_expit_outzTestExpit.check_expit_out<   sd   € ÝŒK˜˜A˜rÑ"Ô"ˆÝŒH�Q˜eÐ$Ñ$Ô$ˆÝ�q‘”ˆÝ˜F HÑ-Ô-Ð-Ý�V”\¥2¤8¨E¡?¤?Ñ3Ô3Ð3Ð3Ð3r   c                 óv   — t          j        g d¢t           j        ¬¦  «        }|                      d|¦  «         d S )N)
çß{êúj’?ç¼\ÄwbÖ¥?g…Æ~ÜŸ¹?g5’ˆ¯³Ê?çsˆ4ñ Ù?çÇ»e‡ã?g+?ü>Sé?çwÃÿßì?gíâÝ™¢î?g÷€í¨lï?r   Úf4)r   r!   r    r7   ©r   r   s     r   r$   zTestExpit.test_float32C   sO   € Ý”8ð 4ð 4ð 4õ <>¼:ð	Gñ Gô Gˆð
 	×Ò˜T 8Ñ,Ô,Ð,Ð,Ð,r   c                 ó^   — t          j        g d¢¦  «        }|                      d|¦  «         d S )N)
r9   r:   gIäq ¹?g!/¯³Ê?r;   r<   gºw?4Sé?r=   g4ºƒØ™¢î?g!¬/¨lï?Úf8)r   r!   r7   r?   s     r   r'   zTestExpit.test_float64K   s@   € Ý”8ð 4ð 4ð 4ñ 5ô 5ˆð
 	×Ò˜T 8Ñ,Ô,Ð,Ð,Ð,r   c                 ó�  — t           j        t           j        t           j        fD ]¡}dD ]œ}t          j        ||¬¦  «        }t          t          |¦  «        dd¬¦  «         t          t          | ¦  «        dd¬¦  «         t          t          |¦  «        j        |¦  «         t          t          | ¦  «        j        |¦  «         Œ�Œ¢d S )N)éX   éY   iÅ  éÆ  i\,  i],  r   g      ð?g#B’¡œÇ;)Úatolg        )	r   r    r&   Ú
longdoubler!   r   r   r   r   )r   r   Úns      r   Ú
test_largezTestExpit.test_largeS   s½   € Ý”j¥"¤*­b¬mÐ<ð 	5ð 	5ˆEØ5ð 5ð 5�Ý”H˜Q eÐ,Ñ,Ô,�Ý¥ a¡¤¨#°EÐ:Ñ:Ô:Ð:Ý¥ q b¡	¤	¨3°UÐ;Ñ;Ô;Ð;Ý�U 1™XœXœ^¨UÑ3Ô3Ð3Ý�U A 2™YœYœ_¨eÑ4Ô4Ð4Ð4ð5ð	5ð 	5r   N)r/   r0   r1   r7   r$   r'   rI   r2   r   r   r4   r4   ;   sP   € € € € € ð4ð 4ð 4ð-ð -ð -ð-ð -ð -ð5ð 5ð 5ð 5ð 5r   r4   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestLogExpitc                 óp   — t          j        g d¢¦  «        }t          |¦  «        }t          ||¦  «         d S )N)g     ˆÃÀg     p‡Àg     @Àg     €AÀ©r   r!   r   r   ©r   ÚxÚys      r   Útest_large_negativez TestLogExpit.test_large_negative_   s9   € ÝŒHÐ6Ð6Ð6Ñ7Ô7ˆÝ�a‰LŒLˆÝ�Q˜ÑÔÐÐÐr   c                 ó˜   — t          j        g d¢¦  «        }t          |¦  «        }t          |t          j        g d¢¦  «        ¦  «         d S )N)g     p‡@g     @�@g     ˆÃ@)ç       €rS   rS   rM   rN   s      r   Útest_large_positivez TestLogExpit.test_large_positived   sL   € ÝŒHÐ-Ð-Ð-Ñ.Ô.ˆÝ�a‰LŒLˆõ
 	�Q�œÐ!3Ð!3Ð!3Ñ4Ô4Ñ5Ô5Ð5Ð5Ð5r   c                 ó|   — t          j        g d¢¦  «        }t          |¦  «        }g d¢}t          ||d¬¦  «         d S )N)éàÿÿÿéìÿÿÿéöÿÿÿéýÿÿÿéÿÿÿÿçš™™™™™¹¿ç•Ö&è.¾r   ç•Ö&è.>çš™™™™™¹?r   r   éd   iô  rE   iÕ  iß  )g     @ÀgCÚ   4Àg(“Uó $Àg\ðÃ�cÀgI°ï¯õ¿gO�ÈñÒç¿gò>ÿB.æ¿gï9úþB.æ¿gÀ�µþB.æ¿g]•¾åžä¿g$Á¾¿zÔ¿gžLVÍ¿g]¯âŒê¶g�CÔx^&Ù’gÃ³(ý8€gáû„   €g'1     €gVçž¯Ò<r   )r   r!   r   r   ©r   rO   rP   r   s       r   Útest_basic_float64zTestLogExpit.test_basic_float64m   s`   € ÝŒHð Dð Dð Dñ Eô Eˆå�a‰LŒLˆð!ð !ð !ˆõ 	˜˜8¨%Ð0Ñ0Ô0Ð0Ð0Ð0r   c                 óÐ   — t          j        g d¢t           j        ¬¦  «        }t          |¦  «        }t          j        g d¢t           j        ¬¦  «        }t	          ||d¬¦  «         d S )N)rV   rW   rX   rY   rZ   r[   r\   r   r]   r^   r   r   r_   r   )g      @Àg      4ÀgÁý€ $Àgí½�cÀgm{q˜õ¿g¦8Òç¿çj	C.æ¿rc   rc   g�@‹¾åžä¿g ¸%ÍzÔ¿gcêéAVÍ¿g¼Î±ý!ë¶g�íµ ÷Æ >r   )r   r!   r    r   r   r`   s       r   Útest_basic_float32zTestLogExpit.test_basic_float32Œ   sˆ   € ÝŒHð 0ð 0ð 0Ý79´zðCñ Cô Cˆå�a‰LŒLˆõ ”8ð Cð Cð Cõ #%¤*ð	.ñ .ô .ˆõ 	˜˜8¨$Ð/Ñ/Ô/Ð/Ð/Ð/r   N)r/   r0   r1   rQ   rT   ra   rd   r2   r   r   rK   rK   ]   sP   € € € € € ðð ð ð
6ð 6ð 6ð1ð 1ð 1ð>0ð 0ð 0ð 0ð 0r   rK   )Únumpyr   Únumpy.testingr   r   r   Úscipy.specialr   r   r   r
   r4   rK   r2   r   r   ú<module>rh      sï   ðØ Ð Ð Ð ð,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,à 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1ð1'ð 1'ð 1'ð 1'ð 1'ñ 1'ô 1'ð 1'ðh5ð 5ð 5ð 5ð 5ñ 5ô 5ð 5ðDE0ð E0ð E0ð E0ð E0ñ E0ô E0ð E0ð E0ð E0r   