§
    fŠtjï  ã                   óª   — d dl Z d dlZd dlmZ d dlmZmZ d dlmZ d„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )é    N)Úexp)Úassert_Úassert_equal)Úrootc                  ó6  ‡‡‡— d} d}t          t          t          ddd¬¦  «        t          t          t          ddd¬¦  «        t          t          t          dd	d	¬¦  «        t          t          t          d
d	d	¬¦  «        t          t
          t          ddd¬¦  «        t          t          t          ddd¬¦  «        t          t          t          ddd¬¦  «        t          t          t          ddd¬¦  «        t          t          t          ddd¬¦  «        t          t          t          ddd¬¦  «        g
}t          j        g d¢g d¢ddg¦  «        D �]Ï\  ŠŠ}|D �]ÄŠ‰d         }ˆˆˆfd„}|f} ‰d         |¦  «        ‰z  }t          j        |¦  «        | z  ‰z  |t          j                              |||¦  «        ¦  «        z  z   }dt'          ‰‰z  ‰‰z  ¦  «        z  }	‰‰z  }
t          j        d¬¦  «        5  t+          |||t          d|‰d         dz   |
|	|¬¦  «        d ¬!¦  «        }d d d ¦  «         n# 1 swxY w Y   t-          ‰‰|‰t          j                              ||j        |¦  «        ¦  «        ||j        |j        |j        g	¦  «        }|j        s
J |¦   «         ‚|j        ‰d         dz   k    s
J |¦   «         ‚|j        ‰d"         k    s
J |¦   «         ‚t          j                              ||j        |¦  «        ¦  «        |k    s
J |¦   «         ‚�ŒÆ�ŒÑd S )#Ngñhãˆµøä>ç-Cëâ6?iè  é   )ÚFÚx0ÚnÚnitÚnfevi'  é   iô  é   iÐ  éd   é   éc   é   é   iç  é   é   )ç      ð?ç»½×Ùß|Û=g    _ BÚcruzÚchengr   c                 ó4   •— ‰ ‰d         | ‰z  |¦  «        z  S )Nr
   © )Úxr   ÚproblemÚxscaleÚyscales     €€€úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/optimize/tests/test__spectral.pyÚfuncztest_performance.<locals>.func0   s"   ø€ Ø  ¨¤¨Q°©Z¸Ñ ;Ô ;Ñ;Ð;ó    r   r   Úignore)Úoverr   r   é   )ÚftolÚfatolÚmaxfevÚsigma_0Ú	sigma_epsÚline_searchúDF-SANE)ÚargsÚoptionsÚmethodr   )ÚdictÚF_1Úx0_1ÚF_2Úx0_2ÚF_6Úx0_6ÚF_7Úx0_7ÚF_9Úx0_9ÚF_10Úx0_10Ú	itertoolsÚproductÚnpÚsqrtÚlinalgÚnormÚminÚerrstater   Úreprr   Úsuccessr   r   )Úe_aÚe_rÚtable_1r-   r   r#   r/   r   r)   r,   r+   ÚsolÚerr_msgr   r    r!   s                @@@r"   Útest_performancerN   
   s•  øøø€ ð €CØ
€Cõ 	�s•t˜t¨°Ð3Ñ3Ô3Ý�s•t˜u¨!°!Ð4Ñ4Ô4Ý�s•t˜s¨°Ð4Ñ4Ô4Ý�s•t˜t¨°"Ð5Ñ5Ô5õ 	�s•t˜s¨°Ð2Ñ2Ô2å�s•t˜r r°Ð3Ñ3Ô3å�s•t˜s¨°Ð4Ñ4Ô4å�s•t˜s¨°Ð4Ñ4Ô4Ý�s•t˜t¨°"Ð5Ñ5Ô5å�t� ¨1°1Ð5Ñ5Ô5ð#€Gõ* (1Ô'8ØÐÐÐ.Ð.Ð.°¸Ð0Añ(ô (ð Dñ DÑ#ˆ�˜ð ð 	Dñ 	DˆGØ˜”ˆAð<ð <ð <ð <ð <ð <ð <à�4ˆDØ�˜”˜qÑ!Ô! FÑ*ˆBå”G˜A‘J”J Ñ$ vÑ-°µb´i·n²nÀTÀTÈ"ÈaÁ[Ä[Ñ6QÔ6QÑ0QÑQˆEà¥ F¨6¡M°6¸&±=Ñ AÔ AÑAˆIØ˜V‘mˆGå” (Ð+Ñ+Ô+ð -ð -Ý˜4 ¨$Ý#'¨Q°eÀGÈFÄOÐVWÑDWØ07À9Ø4?ð$Añ $Aô $Að #,ð	-ñ -ô -�ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -õ Ø˜ ¨gµr´y·~²~ÀdÀdÈ3Ì5ÐRSÁnÄnÑ7UÔ7UØ˜œ S¤W¨c¬hð8ñô ˆGð ”;Ð'Ð' Ñ'Ô'�;à”8˜w vœ°Ñ2Ò2Ð2Ð2°GÑ2Ô2Ð2Ø”7˜g eœnÒ,Ð,Ð,¨gÑ,Ô,Ð,Ý”9—>’> $ $ s¤u¨a¡.¤.Ñ1Ô1°UÒ:Ð:Ð:¸GÑ:Ô:Ð:Ñ:ñ7	DðDð Ds   Ç41H1È1H5È8H5c                  ó8  — d„ } d}d}t          | ||d¬¦  «        }t          |j        ¦  «         t          j                              | |¦  «        ¦  «        }t          j                              | |j        ¦  «        ¦  «        }t          |||z  k    ¦  «         d S )Nc                 ó   — | dz  dz
  dz   S )Nr   r'   ù               @r   )Úzs    r"   r#   ztest_complex.<locals>.funcM   s   € Ø�!‰t�a‰x˜"‰}Ðr$   rQ   r   r.   )Útolr1   )r   r   rH   rA   rC   rD   r   )r#   r   r(   rL   Úf0Úfxs         r"   Útest_complexrV   L   s•   € ðð ð à	€Bà€DÝ
ˆt�R˜T¨)Ð
4Ñ
4Ô
4€CåˆCŒKÑÔÐå	Œ�Š˜˜˜R™œÑ	!Ô	!€BÝ	Œ�Š˜˜˜SœU™œÑ	$Ô	$€BÝˆB�$�r‘'ŠMÑÔÐÐÐr$   c                  óê  — dd„} d}t          j        ||z  ¦  «                             ||¦  «        }|||z  t          j        dt          j        |¦  «        z   ¦  «        z  z   }t	          t           j                             |¦  «                             ¦   «         dk    ¦  «         t          j        |¦  «        dz  } | ||d¦  «          | ||d¦  «          | | |d¦  «          | | |d¦  «         d S )	Nr   c           
      ó˜  ‡ ‡— ˆ ˆfd„}t           j                             ‰ ‰¦  «        }t           j                              ||¦  «        ¦  «        dz  }t	          |‰t          |dd|¬¦  «        d¬¦  «        }t          |j        ¦  «         t          t           j                              ||j        ¦  «        ¦  «        |k    ¦  «         d S )Nc                 ó4   •— ‰                      | ¦  «        ‰z
  S ©N)Údot)r   ÚAÚbs    €€r"   r#   z=test_linear_definite.<locals>.check_solvability.<locals>.funcc   s   ø€ Ø—5’5˜‘8”8˜a‘<Ðr$   g     @�@r   isD  )r)   r(   r*   r-   r.   )r0   r1   )	rA   rC   ÚsolverD   r   r2   r   rH   r   )r\   r]   r-   r#   ÚxpÚepsrL   s   ``     r"   Úcheck_solvabilityz/test_linear_definite.<locals>.check_solvabilityb   sÊ   øø€ ð	 ð 	 ð 	 ð 	 ð 	 ð 	 åŒY�_Š_˜Q Ñ"Ô"ˆÝŒi�nŠn˜T˜T "™XœXÑ&Ô&¨Ñ,ˆÝØ�!Ý˜s¨°5ÀkÐRÑRÔRØð
ñ 
ô 
ˆõ
 	�”ÑÔÐÝ•”	—’˜t˜t C¤E™{œ{Ñ+Ô+¨sÒ2Ñ3Ô3Ð3Ð3Ð3r$   éZ   r'   r   r   r   )r   )rA   ÚarangeÚreshapeÚdiagr   rC   ÚeigvalsrE   )ra   r   r\   r]   s       r"   Útest_linear_definiterg   [   s  € ð4ð 4ð 4ð 4ð 	€Aõ 	Œ	�!�A‘#‰Œ×Ò˜q !Ñ$Ô$€AØ	ˆAˆa‰C•"”'˜!�bœi¨™lœlÑ*Ñ+Ô+Ñ+Ñ+€AÝ�BŒI×Ò˜aÑ Ô ×$Ò$Ñ&Ô&¨Ò*Ñ+Ô+Ð+Ý
Œ	�!‰Œ�sÑ€AØÐ�a˜˜FÑ#Ô#Ð#ØÐ�a˜˜GÑ$Ô$Ð$ð Ð�q�b˜!˜VÑ$Ô$Ð$ØÐ�q�b˜!˜WÑ%Ô%Ð%Ð%Ð%r$   c                  ó  — d„ } t           t          fD ]w}t          j        ddg¦  «        }t          j        ddg|¬¦  «        }t          | ||fd¬¦  «        }t          |j        ¦  «         t          |j	        j
        |j
        ¦  «         Œxd S )Nc                 ó   — | |z
  S rZ   r   )r   Úargs     r"   Úfztest_shape.<locals>.f   s   € Ø�3‰wˆr$   r   )Údtyper.   )r/   r1   )ÚfloatÚcomplexrA   ÚzerosÚonesr   r   rH   r   r   Úshape)rk   Údtr   rj   rL   s        r"   Ú
test_shapers   ~   s›   € ðð ð õ •gÐð +ð +ˆÝŒH�a˜�U‰OŒOˆÝŒg�q˜�e 2Ð&Ñ&Ô&ˆå�1�a˜s˜f¨YÐ7Ñ7Ô7ˆÝ�”ÑÔÐÝ�S”U”[ !¤'Ñ*Ô*Ð*Ð*ð+ð +r$   c                 óö   — t          j        |g¦  «        }t          j        d|dz   ¦  «        }t          | d         dz
  ¦  «        dz
  |d<   |t          | dd …         dz
  ¦  «        | dd …         z
  z  |dd …<   |S )Nr   r'   r   ©rA   ro   rc   r   ©r   r   ÚgÚis       r"   r3   r3   Ž   sx   € Ý
Œ�!�‰Œ€AÝ
Œ	�!�Q�q‘SÑÔ€AÝˆq�Œt�a‰x‰=Œ=˜1Ñ€A€a�DØ�s�1�Q�R�R”5˜1‘9‰~Œ~  ! " "¤Ñ%Ñ&€A€a€b€b�EØ€Hr$   c                 óf   — t          j        | g¦  «        }|                     | | dz
  z  ¦  «         |S ©Nr'   ©rA   ÚemptyÚfill©r   r   s     r"   r4   r4   •   s0   € Ý	Œ�1�#‰Œ€BØ‡G‚GˆAˆq�‰s‰GÑÔÐØ€Ir$   c                 óö   — t          j        |g¦  «        }t          j        d|dz   ¦  «        }t          | d         ¦  «        dz
  |d<   d|z  t          | dd …         ¦  «        | d d…         z   dz
  z  |dd …<   |S )Nr   r'   r   gš™™™™™¹?éÿÿÿÿru   rv   s       r"   r5   r5   š   sx   € Ý
Œ�!�‰Œ€AÝ
Œ	�!�Q�q‘SÑÔ€AÝˆq�Œt‰9Œ9�q‰=€A€a�DØ�‰E•3�q˜˜˜”u‘:”:  # 2 #¤Ñ&¨Ñ*Ñ+€A€a€b€b�EØ€Hr$   c                 óf   — t          j        | g¦  «        }|                     d| dz  z  ¦  «         |S )Nr'   r   r{   r~   s     r"   r6   r6   ¡   s-   € Ý	Œ�1�#‰Œ€BØ‡G‚GˆAˆa�‰d‰F�O„O€OØ€Ir$   c                 ó  — t          |dz  d¦  «         t          j        |g¦  «        }d| d d d…         z  d| dd d…         dz  z  z   d| dd d…         dz  z  z
  d| dd d…         z  z   d	z
  |d d d…<   d
| d d d…         z  d| dd d…         dz  z  z
  d| dd d…         dz  z  z   d| dd d…         z  z
  | dd d…         z
  d| dd d…         dz  z  z   dz   |dd d…<   d| dd d…         z  d| dd d…         dz  z  z
  |dd d…<   |S )Né   r   g333333ã?gš™™™™™ù?r'   gÍÌÌÌÌÌ@r   g333333#@g333333@g¸…ëQ¸Þ?g
×£p=
ç?gìQ¸…ë	@gHáz®G@gš™™™™™É?gHáz®G@g      ô?g      Ð?)r   rA   ro   )r   r   rw   s      r"   ÚF_4r„   §   s_  € Ý��Q‘˜ÑÔÐÝ
Œ�!�‰Œ€Að �1�S�S�q�S”6‰\˜C ! A D q D¤'¨1¡*Ñ,Ñ,¨s°Q°q°t¸!°t´W¸a±ZÑ/?Ñ?À#ÈÈ!È$ÈQÈ$ÌÁ-ÑOÐRUÑU€A€c€cˆ€c�FØ�a˜˜˜!˜”f‰}˜t a¨¨¨1¨¤g¨q¡jÑ0Ñ0°4¸!¸A¸D¸q¸D¼'À1¹*Ñ3DÑDÀtÈaÐPQÐPTÐSTÐPTÌgÁ~ÑUØ�1�4�a�4”ñØ  1 4 a 4¤¨!¡Ñ+ñ,Ø.2ñ3€A€a€dˆ€d�Gà�Q�q�t˜!�t”W‰n˜t A a d¨ d¤G¨Q¡J™Ñ.€A€a€dˆ€d�GØ€Hr$   c                 ód   — t          | dz  d¦  «         t          j        g d¢| dz  z  ¦  «        }|S )Nrƒ   r   )r€   ç      à?r€   ©r   rA   Úarrayr~   s     r"   Úx0_4r‰   ³   s7   € Ý��Q‘˜ÑÔÐÝ	Œ�-�-�- 1 a¡4Ñ(Ñ	)Ô	)€BØ€Ir$   c                 óÌ   — d}t          j        d|dz   ¦  «        dz
  |z  }| dd|d|z  z  |d d …d f         | z  |d d …d f         |z   z                       d¬¦  «        z  z
  z  z
  S )NgÍÌÌÌÌÌì?r'   r†   r   )Úaxis)rA   rc   Úsum)r   r   ÚcÚmus       r"   r7   r7   ¸   s~   € Ø€AÝ
Œ)�A�q˜‘sÑ
Ô
˜cÑ
! 1Ñ	$€BØˆq�!�a˜˜1™‘g  A A A d F¤¨A¡°°A°A°A°d°F´¸b±Ñ!A× FÒ FÈAÐ FÑ NÔ NÑNÑNÑOÑOÐOr$   c                 ó,   — t          j        | g¦  «        S rZ   ©rA   rp   ©r   s    r"   r8   r8   ½   ó   € ÝŒ7�A�3‰<Œ<Ðr$   c                 ó<  — t          |dz  d¦  «         d„ }t          j        |g¦  «        }d| dd d…         dz  z  dz
  |d d d…<   t          | d d d…          ¦  «        t          | dd d…          ¦  «        z   dz
  |dd d…<    || dd d…         ¦  «        |dd d…<   |S )Nrƒ   r   c                 ó¤   — d| z  dz
  }d| dz  z  d| dz  z  z   d| z  z   dz
  dz  | d	k             || d	k    <   d| z  dz   | dk             || dk    <   |S )
Nr†   r   i°ýÿÿrƒ   ix  iÇ  i„  iÎ  r€   r   )ÚtÚvs     r"   ÚphizF_7.<locals>.phiÃ   sp   € Ø�‰E�A‰IˆØ˜1˜a™4‘i # a¨¡d¡(Ñ*¨T°!©VÑ3°dÑ:¸DÑ@À!ÀbÂ&ÔIˆˆ!ˆbŠ&‰	Ø˜‘U˜Q‘Y  Q¢Ô'ˆˆ!ˆqŠ&‰	Øˆr$   g     ˆÃ@r'   r   gq¬‹Ûh ð?)r   rA   ro   r   )r   r   r—   rw   s       r"   r9   r9   À   sÀ   € Ý��Q‘˜ÑÔÐðð ð õ
 	Œ�!�‰Œ€AØ�1�Q�T˜�T”7˜A‘:Ñ Ñ!€A€c€cˆ€c�FÝ�1�S�S�q�S”6�'‰lŒl�S ! A D q D¤' ™]œ]Ñ*¨VÑ3€A€a€dˆ€d�GØˆc�!�A�D�q�D”'‰lŒl€A€a€dˆ€d�GØ€Hr$   c                 ó`   — t          | dz  d¦  «         t          j        g d¢| dz  z  ¦  «        S )Nrƒ   r   )gü©ñÒMbP?r   r'   r‡   r‘   s    r"   r:   r:   Î   s3   € Ý��Q‘˜ÑÔÐÝŒ8�M�M�M Q¨¡TÑ*Ñ+Ô+Ð+r$   c                 óX  — t          j        |g¦  «        }t          j        d|¦  «        }| d         dz  dz  | d         dz  dz  z   |d<   | dd…         dz   dz  || dd…         dz  z  dz  z   | dd …         dz  dz  z   |dd…<   | d         dz   dz  || d         dz  z  dz  z   |d<   |S )Nr   r   rƒ   r'   r€   )rA   ro   rc   rv   s       r"   r;   r;   Ò   sÄ   € Ý
Œ�!�‰Œ€AÝ
Œ	�!�Q‰Œ€AØˆQŒ4�‰7�1‰9�q˜”t˜Q‘w˜q‘yÑ €A€a�DØ��2�Œw˜‰zˆk˜!‰m˜a  ! B $¤¨¡
™l¨1™nÑ,¨q°°°¬u°a©x¸©zÑ9€A€aˆ€d�GØˆrŒU�A‰XˆI�a‰K˜!˜A˜bœE 1™H™* Q™,Ñ&€A€b�EØ€Hr$   c                 ó,   — t          j        | g¦  «        S rZ   r�   r‘   s    r"   r<   r<   Ú   r’   r$   c                 ó<   — t          j        d| z   ¦  «        | |z  z
  S rz   )rA   Úlog)r   r   s     r"   r=   r=   Ý   s   € ÝŒ6�!�a‘%‰=Œ=˜1˜Q™3ÑÐr$   c                 ó,   — t          j        | g¦  «        S rZ   r�   r‘   s    r"   r>   r>   à   r’   r$   )r?   ÚnumpyrA   r   Únumpy.testingr   r   Úscipy.optimizer   rN   rV   rg   rs   r3   r4   r5   r6   r„   r‰   r7   r8   r9   r:   r;   r<   r=   r>   r   r$   r"   ú<module>r¡      sy  ðØ Ð Ð Ð à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /à Ð Ð Ð Ð Ð ð?Dð ?Dð ?DðDð ð ð &ð  &ð  &ðF
+ð 
+ð 
+ð ð ð ðð ð ð
ð ð ðð ð ð	ð 	ð 	ðð ð ð
Pð Pð Pð
ð ð ðð ð ð,ð ,ð ,ðð ð ðð ð ðð ð ðð ð ð ð r$   