Ë
    0Ò^j$U  ã                   ó¤   — d Z ddlZddlZddlmZmZmZ ddlm	Z	m
Z
mZmZmZ ddlmZmZmZmZ dd„Z G d„ d«      Z G d	„ d
«      Z G d„ d«      Zy)z4
Unit tests for trust-region iterative subproblem.

é    N)Ú estimate_smallest_singular_valueÚsingular_leading_submatrixÚIterativeSubproblem)ÚsvdÚget_lapack_funcsÚdetÚqrÚnorm)Úassert_allcloseÚassert_array_equalÚassert_equalÚassert_array_almost_equalc                 ó`  — t         j                  j                  |«      }|j                  dd| | f¬«      }t	        |d¬«      \  }}}|j                  ||| ¬«      }t        j
                  |«      d d d…   }t        j                  ||«      }	t        j                  |	|j                  «      }
|dk(  rIt        j                  | «      }|j                  dd| dz
  ¬«      |d d t        j                  ||«      }|
|fS |dk(  rt        j                  | «      }|
|fS |j                  dd| ¬«      }|
|fS )Néÿÿÿÿé   )ÚlowÚhighÚsizeÚTrue)ÚpivotingÚhardÚjac_equal_zero)
ÚnpÚrandomÚdefault_rngÚuniformr	   ÚsortÚmultiplyÚdotÚTÚzeros)ÚnÚmin_eigÚmax_eigÚcaseÚrngÚrandÚQÚ_Ú	eigvaluesÚQauxÚAÚgs               úv/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/optimize/tests/test_trustregion_exact.pyÚrandom_entryr/      s'  € Ü
�)‰)×
Ñ
 Ó
$€Cð �;‰;˜2 A¨Q°¨Fˆ;Ó3€Dô � Ô'�G€A€qˆ!ð —‘ ¨g¸A�Ó>€IÜ—‘˜	Ó"¡4 R 4Ñ(€Iô �;‰;�y !Ó$€DÜ
�‰ˆt�Q—S‘SÓ€Að ˆv‚~Ü�H‰H�Q‹KˆØ—‘ ¨!°!°A±#�Ó6ˆˆ#ˆ2ˆÜ�F‰F�1�a‹Lˆð ˆaˆ4€Kð 
Ð!Ò	!Ü�H‰H�Q‹Kˆð ˆaˆ4€Kð �K‰K˜B Q¨QˆKÓ/ˆàˆaˆ4€Kó    c                   ó   — e Zd Zd„ Zy)Ú!TestEstimateSmallestSingularValuec                 óø   — t        j                  g d¢g d¢g d¢g d¢g«      }t        |«      \  }}}|d   }|dd d …f   }t        |«      \  }}t	        ||d¬«       t	        t        |«      t        |«      d¬«       y )N)r   é   é   é   )r   gš™™™™™©?é<   é   )r   r   çš™™™™™é?é	   )r   r   r   é
   r   é   )Údecimal)r   Úarrayr   r   r   Úabs)	ÚselfÚCÚUÚsÚVtÚsmin_svdÚzmin_svdÚsminÚzmins	            r.   Ú test_for_ill_condiotioned_matrixzBTestEstimateSmallestSingularValue.test_for_ill_condiotioned_matrix1   s}   € ô �H‰H’lÚ&Ú$Ú#ð%ó &ˆô �q“6‰ˆˆ1ˆbð �R‘5ˆØ�bš!�e‘9ˆô 6°aÓ8‰
ˆˆdô 	" $¨¸!Õ<Ü!¤# d£)¬S°«]ÀAÖFr0   N)Ú__name__Ú
__module__Ú__qualname__rI   © r0   r.   r2   r2   /   s   „ óGr0   r2   c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestSingularLeadingSubmatrixc                 ón  — t        j                  g d¢g d¢g d¢g«      }t        d|f«      \  } ||ddd¬«      \  }}t        |||«      \  }}||dz
  |dz
  fxx   |z  cc<   t	        t        |d |…d |…f   «      d	«       t        j                  |t        j                  ||«      «      }t	        |d	«       y )
N)r   r4   r5   )r4   r6   é   )r5   rQ   é   ©ÚpotrfFT©ÚlowerÚoverwrite_aÚcleanr   r   ©r   r>   r   r   r   r   r   ©r@   r,   ÚcholeskyÚcÚkÚdeltaÚvÚquadratic_terms           r.   Ú+test_for_already_singular_leading_submatrixzHTestSingularLeadingSubmatrix.test_for_already_singular_leading_submatrixJ   s¹   € ô �H‰H’iÚÚð!ó "ˆô
 % Z°!°Ó6‰	ˆñ ˜ °EÀÔF‰ˆˆ1ä-¨a°°AÓ6‰ˆˆqà	ˆ!ˆA‰#ˆq�‰sˆ(‹�uÑ‹ô 	"¤# a¨¨¨¨B¨Q¨B¨¡i£.°!Ô4ô Ÿ™ ¤2§6¡6¨!¨Q£<Ó0ˆÜ! .°!Õ4r0   c                 óz  — t        j                  g d¢g d¢g d¢g d¢g d¢g«      }t        d|f«      \  } ||ddd¬	«      \  }}t        |||«      \  }}||d
z
  |d
z
  fxx   |z  cc<   t	        t        |d |…d |…f   «      d«       t        j                  |t        j                  ||«      «      }t	        |d«       y )N)r   r4   r5   r8   r<   )r4   rQ   rQ   r:   r   )r5   rQ   é   r   r4   )r8   r:   r   r8   rQ   )r<   r   r4   rQ   r<   rS   FTrU   r   r   )r   Úasarrayr   r   r   r   r   rZ   s           r.   Ú#test_for_simetric_indefinite_matrixz@TestSingularLeadingSubmatrix.test_for_simetric_indefinite_matrixc   s¿   € ô �J‰JšÚ'Ú(Ú'Ú'ð	)ó *ˆô % Z°!°Ó6‰	ˆñ ˜ °EÀÔF‰ˆˆ1ä-¨a°°AÓ6‰ˆˆqà	ˆ!ˆA‰#ˆq�‰sˆ(‹�uÑ‹ô 	"¤# a¨¨¨¨B¨Q¨B¨¡i£.°!Ô4ô Ÿ™ ¤2§6¡6¨!¨Q£<Ó0ˆÜ! .°!Õ4r0   c                 ón  — t        j                  g d¢g d¢g d¢g«      }t        d|f«      \  } ||ddd¬«      \  }}t        |||«      \  }}||dz
  |dz
  fxx   |z  cc<   t	        t        |d |…d |…f   «      d	«       t        j                  |t        j                  ||«      «      }t	        |d	«       y )
N)r   r5   rc   )r5   é   rQ   )rc   rQ   rR   rS   FTrU   r   r   rY   rZ   s           r.   Ú$test_for_first_element_equal_to_zerozATestSingularLeadingSubmatrix.test_for_first_element_equal_to_zero~   s¹   € ô �H‰H’jÚ Ú ð"ó #ˆô
 % Z°!°Ó6‰	ˆñ ˜ °EÀÔF‰ˆˆ1ä-¨a°°AÓ6‰ˆˆqà	ˆ!ˆA‰#ˆq�‰sˆ(‹�uÑ‹ô 	"¤# a¨¨¨¨B¨Q¨B¨¡i£.°!Ô4ô Ÿ™ ¤2§6¡6¨!¨Q£<Ó0ˆÜ! .°!Õ4r0   N)rJ   rK   rL   ra   re   rh   rM   r0   r.   rO   rO   H   s   „ ò5ò25ó65r0   rO   c                   ó¶   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Ze	j                  j                  d¬«      e	j                  j                  d	«      d
„ «       «       Zd„ Zy)ÚTestIterativeSubproblemc                 ó¼   ‡‡— g d¢g d¢g d¢g d¢gŠg d¢Šd}t        dd„ ˆfd	„ˆfd
„dd¬«      }|j                  |«      \  }}t        |g d¢«       t        |d«       y )N©r;   r4   r5   r6   ©r4   r   r8   r   ©r5   r8   r   r8   ©r6   r   r8   r4   )r   r   r   r   r   r   c                  ó   — y©Nr   rM   ©Úxs    r.   ú<lambda>z@TestIterativeSubproblem.test_for_the_easy_case.<locals>.<lambda>©   ó   � r0   c                 ó.   •— t        j                  ‰«      S ©N©r   r>   ©rs   r-   s    €r.   rt   z@TestIterativeSubproblem.test_for_the_easy_case.<locals>.<lambda>ª   ó   ø€ ´B·H±H¸Q³K€ r0   c                 ó.   •— t        j                  ‰«      S rw   rx   ©rs   ÚHs    €r.   rt   z@TestIterativeSubproblem.test_for_the_easy_case.<locals>.<lambda>«   ó   ø€ ´R·X±X¸a³[€ r0   ç»½×Ùß|Û=©rs   ÚfunÚjacÚhessÚk_easyÚk_hard)gë8<Œbp?gøgÌEø®á¿gÎþ vå?gË�ùëÛªß¿T©r   Úsolver   )r@   Útrust_radiusÚsubprobÚpÚhits_boundaryr}   r-   s        @@r.   Útest_for_the_easy_casez.TestIterativeSubproblem.test_for_the_easy_caseš   sr   ù€ ò ÚÚÚðˆò ˆð ˆô &¨Ù*5Û*?Û+@Ø-2Ø-2ô4ˆð #Ÿ=™=¨Ó6Ñˆˆ=ä! !ò &?ô 	@ä! -°Õ6r0   c                 óº   ‡‡— g d¢g d¢g d¢g d¢gŠg d¢Šd}d}t        dd	„ ˆfd
„ˆfd„dd¬«      }|j                  |«      \  }}t        | |j                  «       y )Nrl   rm   rn   ro   )gASýéð@r   r   r   grv»f(n Àr   r   c                  ó   — yrq   rM   rr   s    r.   rt   z@TestIterativeSubproblem.test_for_the_hard_case.<locals>.<lambda>Ä   ru   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   ry   s    €r.   rt   z@TestIterativeSubproblem.test_for_the_hard_case.<locals>.<lambda>Å   rz   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   r|   s    €r.   rt   z@TestIterativeSubproblem.test_for_the_hard_case.<locals>.<lambda>Æ   r~   r0   r   r€   )r   r‡   r   Úlambda_current)r@   rC   rˆ   r‰   rŠ   r‹   r}   r-   s         @@r.   Útest_for_the_hard_casez.TestIterativeSubproblem.test_for_the_hard_case´   so   ù€ ò ÚÚÚðˆò *ˆØˆð ˆô &¨Ù*5Û*?Û+@Ø-2Ø-2ô4ˆð #Ÿ=™=¨Ó6Ñˆˆ=ä! 1 " g×&<Ñ&<Õ=r0   c                 óÂ   ‡‡— ddgŠddgddggŠt        t        j                  d«      d„ ˆfd„ˆfd	„d
d¬«      }|j                  d«      \  }}t	        |ddg«       |sJ ‚y )Né   éöÿÿÿé   r   rQ   r4   c                  ó   — yrq   rM   )r)   s    r.   rt   z6TestIterativeSubproblem.test_gh20244.<locals>.<lambda>Ñ   ru   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   )r)   r-   s    €r.   rt   z6TestIterativeSubproblem.test_gh20244.<locals>.<lambda>Ò   rz   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   )r)   r}   s    €r.   rt   z6TestIterativeSubproblem.test_gh20244.<locals>.<lambda>Ó   r~   r0   g�íµ ÷Æ°>g•Ö&è.>r€   g      ð?gÑœÌª•Êè¿g«Ã<ñ½;ä?)r   r   r!   r‡   r   ©r@   r‰   rŠ   r‹   r}   r-   s       @@r.   Útest_gh20244z$TestIterativeSubproblem.test_gh20244Í   sk   ù€ Ø�ˆIˆØ�!ˆW�q˜!�fÐˆä%¬¯©°«¹Û*?Û+@ÈØ-1ô3ˆð #Ÿ=™=¨Ó-Ñˆˆ=ä˜˜K¨*Ð5Ô6ÙÐ‰}r0   c                 ó  ‡‡— g d¢g d¢g d¢g d¢g d¢gŠg d¢Št        dd„ ˆfd	„ˆfd
„¬«      }|j                  d«      \  }}t        |g d¢«       t        |d«       t        |j                  d«       t        |j                  d«       y )N)gÛn‚ošþü?ç�ž¶¡½uê?ç,wnó)ôË?ç”/ËK¼Ëà¿çÿëš˜GÐ?)r�   gì¼®ÛwO@çÙ¢y¾n*Ô?çr–<8±Ù¿çõ¶Û&ÃŽ¶?)rž   r¡   gÓ6›ª
@çøòÄ½CÔ¿ç8Š¤ÄKƒÑ?)rŸ   r¢   r¤   gÀc‘‰èù?çò†«>øÚ¿)r    r£   r¥   r¦   gÂ-£Qõ?)g*‹ã<sAè?g³¢¼E�?gM x¾—©Õ?gzý‹˜ÀÊê?gôÒ=€©Þ¿r   c                  ó   — yrq   rM   rr   s    r.   rt   zGTestIterativeSubproblem.test_for_interior_convergence.<locals>.<lambda>æ   ru   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   ry   s    €r.   rt   zGTestIterativeSubproblem.test_for_interior_convergence.<locals>.<lambda>ç   rz   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   r|   s    €r.   rt   zGTestIterativeSubproblem.test_for_interior_convergence.<locals>.<lambda>è   r~   r0   )rs   r�   r‚   rƒ   çš™™™™™ñ?)g8bÒ„òå¿gåO
©‘L¿?g p4OÇFÌ¿g� Ïqå¿g­oš-7Ô?Fr   )r   r‡   r   r‘   Úniterrš   s       @@r.   Útest_for_interior_convergencez5TestIterativeSubproblem.test_for_interior_convergenceÚ   s‡   ù€ âHÚJÚIÚLÚJð	Lˆò Jˆô &¨Ù*5Û*?Û+@ôBˆð #Ÿ=™=¨Ó-Ñˆˆ=ä! !ò &?ô 	@ä! -°Ô7Ü! '×"8Ñ"8¸!Ô<Ü! '§-¡-°Õ3r0   c                 ó¾   ‡‡— g d¢g d¢g d¢g d¢g d¢gŠg d¢Št        dd„ ˆfd	„ˆfd
„dd¬«      }|j                  d«      \  }}t        |g d¢«       t        |d«       y )N©gÝVaÐUì?çø˜›±`A@ç5“ýF€ï?çÔ9Ô)n@é¿ç€îcñÑ¿©r¯   gµÚ{ú¥§¿ç.<íøÕ?ç~õýÏËê¿çÔ:]³èÅ?©r°   r´   g@33ôë¿ç �5Ð:²°¿ç¦ä¤IŒâö¿©r±   rµ   r¸   gÐ¹ÛõÒTú¿ç¦F¦K°Õ¿©r²   r¶   r¹   r»   g¬¢&—Rùú¿)r   r   r   r   r   r   c                  ó   — yrq   rM   rr   s    r.   rt   zATestIterativeSubproblem.test_for_jac_equal_zero.<locals>.<lambda>ý   ru   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   ry   s    €r.   rt   zATestIterativeSubproblem.test_for_jac_equal_zero.<locals>.<lambda>þ   rz   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   r|   s    €r.   rt   zATestIterativeSubproblem.test_for_jac_equal_zero.<locals>.<lambda>ÿ   r~   r0   r   r€   rª   ©g÷iG7ã°±?glµ$“•W�¿gÀü€ÍZæä¿g-ðOˆ|Î¿g¦mô‚/ë¿Tr†   rš   s       @@r.   Útest_for_jac_equal_zeroz/TestIterativeSubproblem.test_for_jac_equal_zeroñ   sn   ù€ âKÚKÚLÚLÚMð	Oˆò ˆô &¨Ù*5Û*?Û+@Ø-2Ø-2ô4ˆð #Ÿ=™=¨Ó-Ñˆˆ=ä! !ò &3ô 	4ô 	" -°Õ6r0   c                 ó¾   ‡‡— g d¢g d¢g d¢g d¢g d¢gŠg d¢Št        dd„ ˆfd	„ˆfd
„dd¬«      }|j                  d«      \  }}t        |g d¢«       t        |d«       y )Nr®   r³   r·   rº   r¼   )r   r   r   r   gVçž¯Ò<r   c                  ó   — yrq   rM   rr   s    r.   rt   zITestIterativeSubproblem.test_for_jac_very_close_to_zero.<locals>.<lambda>  ru   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   ry   s    €r.   rt   zITestIterativeSubproblem.test_for_jac_very_close_to_zero.<locals>.<lambda>  rz   r0   c                 ó.   •— t        j                  ‰«      S rw   rx   r|   s    €r.   rt   zITestIterativeSubproblem.test_for_jac_very_close_to_zero.<locals>.<lambda>  r~   r0   r   r€   rª   rÀ   Tr†   rš   s       @@r.   Útest_for_jac_very_close_to_zeroz7TestIterativeSubproblem.test_for_jac_very_close_to_zero	  sn   ù€ âKÚKÚLÚLÚMð	Oˆò  ˆô &¨Ù*5Û*?Û+@Ø-2Ø-2ô4ˆð #Ÿ=™=¨Ó-Ñˆˆ=ä! !ò &3ô 	4ô 	" -°Õ6r0   zfails in parallel)Úreasonr;   c                 ó²  ‡‡— t         j                  j                  d«      }d}dD �]®  }g d¢}|D �]¡  \  }}t        |||||¬«      \  ŠŠg d¢}|D �]~  }t	        dd„ ˆfd	„ˆfd
„dd¬«      }	|	j                  |«      \  }
}dt        j                  |
t        j                  ‰|
«      «      z  t        j                  ‰|
«      z   }g d¢}|D �]  \  }}t        |dz
  dt        j                  |«      z
  «      }d|z
  }t	        dd„ ˆfd„ˆfd„||¬«      }|j                  |«      \  }}dt        j                  |t        j                  ‰|«      «      z  t        j                  ‰|«      z   }|r5t        t        j                  t        |«      |z
  «      |dz
  |z  k  d«       nt        t        |«      |k  d«       t        |||z  k  d«       �Œ �Œ� �Œ¤ �Œ± y )Nr   rQ   )Úeasyr   r   ))iìÿÿÿiñÿÿÿ)r•   éûÿÿÿ)r•   r   )rÊ   rQ   )r•   r;   )r   r;   )rQ   r;   )r–   r”   )r&   )	çš™™™™™¹?g333333Ó?g333333ã?r9   r   g333333ó?gffffff
@g      @r;   r   c                  ó   — yrq   rM   rr   s    r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>?  ru   r0   c                 ó   •— ‰S rw   rM   ry   s    €r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>@  ó   ø€ ¸q€ r0   c                 ó   •— ‰S rw   rM   r|   s    €r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>A  rÎ   r0   r   )r„   r…   ç      à?))rË   r4   )rÐ   rª   )gÍÌÌÌÌÌì?g)\�Âõ(ð?c                  ó   — yrq   rM   rr   s    r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>Z  ru   r0   c                 ó   •— ‰S rw   rM   ry   s    €r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>[  ó   ø€ À€ r0   c                 ó   •— ‰S rw   rM   r|   s    €r.   rt   zATestIterativeSubproblem.test_for_random_entries.<locals>.<lambda>\  rÓ   r0   T)r   r   r   r/   r   r‡   r   ÚminÚsqrtr   r?   r
   r   )r@   r&   r"   r%   Ú
eig_limitsr#   r$   Útrust_radius_listrˆ   Ú
subprob_acÚp_acÚhits_boundary_acÚJ_acÚstop_criteriaÚk_optÚk_trfr„   r…   r‰   rŠ   r‹   ÚJr}   r-   s                         @@r.   Útest_for_random_entriesz/TestIterativeSubproblem.test_for_random_entries!  sì  ù€ ô �i‰i×#Ñ# AÓ&ˆð ˆà6ó C	<ˆDò$ˆJð %/ó 8<Ñ �˜ô $ A w°¸À3ÔG‘��1ò %OÐ!à$5ó 0<�Lä!4°QÙ5@Û5@Û5@Ø<AØ<Aô"C�Jð .8×-=Ñ-=¸lÓ-KÑ*�DÐ*ð œrŸv™v d¬B¯F©F°1°d«OÓ<Ñ<¼R¿V¹VÀAÀt»_ÑL�Dò%2�Mð )6ó <™˜˜uô "% U¨1¡WØ%&¤r§w¡w¨u£~Ñ%5ó"7˜à!" 5¡˜ô #6°aÙ6AÛ6AÛ6AØ=CØ=Cô#E˜ð ,3¯=©=¸Ó+FÑ(˜˜=ð  ¤§¡ q¬"¯&©&°°A«,Ó 7Ñ7¼¿¹¸qÀ!»ÑD˜ñ )Ü.¬r¯v©v´d¸1³g¸lÑ6JÓ/KØ05°a±¸Ñ/Eñ0FØGKõMô )¬¨a«°LÑ)@À$ÔGô % Q¨%°©*¡_°dÖ;ò=<ò%0<ò8<ñC	<r0   c                 ó¬  ‡‡— t        j                  g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g«      Št        j                  g d¢«      Šddg}|D ]d  }t        dd„ ˆfd„ˆfd„dd|¬«      }d}|j                  |«      \  }}|€ |j                  t        j
                  k  rŒRJ ‚|j                  |k  rŒdJ ‚ y)zRegression test for gh-12513)gŠÉ`æ]B@çÁnØ¶ŠoÀç}c¾rs'@ç9þÿ�b¦S¿ç½Æ.Q-  Àçí”õ8w Àrã   ç8‚TŠ�`„Àçw•^Ñ¿ç-ïä²UÒÿ¿ç\ùv\žˆó?ç‚¾_’ëj@çRù^Ý¸¿ç“iõTÕ[à¿çÊ¢¶]ð¿çÙÏ›LXÂ?ç¯�>'@ç,ˆÈ:êY°¿ç,¹>7*3Å?)rã   ç¼"øßJž›@ç“õåÒXÀçàWÆmÑ…?çàœ¥%6Ì@çÍx¶¢(Ã,@rô   çyöÑñÖ±@çÖ·þ#ôÇ@ç®ú·&8L0@çš‡löBÀç|sÉ‚Óü(Àçh0s¥‘å?ç„ðªÿÒ	@çÈèFyb™@ç¨Ð{Žˆ¬î¿çPû­�(œCÀçfRïòžÜ?çˆ�ºcÒÛò¿)rä   rõ   gÏ ¡rm¬@ç¨Gò)Ü¿çãP¿{Û�Àçíú`tÔ<ò¿rõ   ç…8„ê$pÀçÊ&
>JÀçùÀŽÿÂ—wÀçy¹>b*âPÀç×÷á ¡®gÀçcµ\ª�¶@ç©è¯ÍK@ç•‘ÄÜÿE1@çƒ!aÎ"*Àç%�·DŸSÀç	5ŽVh	@çäk	Ø’ž@)rå   rö   r  g¹ÂOhj?çÒéL º?çZËÔ"'?rö   ç\û,8Qœ?çÉZÏªÞ¡y?çMØ¤ùh§?ç¹B¸ ¥²�?çNŒêR—?çH¢OAîâK¿ç9¡½ê«%?ç�’O$ÅV?ç�ø>ÐfB?ç–ñO¦ZŒ?ç¿ÆÏ—ïø@¿çdßíAñ ¿)ræ   r÷   r  r  g3333Ýþ@ç¿ðJ’ç�_@r÷   çrŠŽä`Jâ@çþÅ"<�Ù5@ç|DL‰$d@çÏJZñÓRÀç¤µûU]ÀçÕ‹ë)ƒT@çàÏ³~?@çÃÖlå%íH@ç¥¿U¦±ª"Àç¿€^¸sÇwÀç7 [ùÙZ@çÙ 8Ó)ô&À)rç   rø   r  r  r"  gã<AŠ·Â?rø   çœx½ê·¹B@çs”d^…[œ?çƒ™b¯üÉ?ç�¶c~7£¶¿ç%7F�8”À¿çQt¨�üƒ€?çƒ‚Bd £?ç7ÒÃ`ßÆ­?çœüVæ‡¿çu«–]ø­Ü¿ç{£jfu?çùB¤EÆúŒ¿)rè   rù   r  r  r#  r/  rù   g—ÿ�~ëÇ@çsÏ¡©*J@ç³ÊçWE@ç ‡}Q4Àçq�å%@Àç?.XGáü?ç }#:¾ @ç¹ÝpÄÿr*@çÝ¦ì²gðÀç	oB@TYÀçÐ"_2#–ò?ç/³�)SÀÀ)ré   rú   r	  r  r$  r0  rú   r;  gB›w÷[ÐE@ç<Û¤b­s@çôW#Œy4Àçu��Ö²�>ÀçÐ˜e);ø¿¿çŒM†>³''@çÐ€z3jXD@ç§ú!xtJö¿ç¥>ÚIŽ‹CÀçÄ±½=à¸¿çcrÕœZ»?)rê   rû   r
  r  r%  r1  rû   r<  rF  gR,·´Á¡@ç�‰”fó`bÀçBÑ<€ÅtkÀçà3mIì¿ç„EêâÛ¶T@çœÛ„{e6r@çšÇ«½™ò#ÀçæuÄ!‘qÀçès® =æ¿ç£´õÛðžç?)rë   rü   r  r  r&  r2  rü   r=  rG  rP  g6mk°••S@ç[z4U�d@ç½¹l2²5Àçí×�î<õ9Àç™Ó
x>HOÀç$ŠdŠÌ@ç“ŠÆÚ_àl@ç€›ƒo³{Àçôí�½ÿÇ@)rì   rý   r  r  r'  r3  rý   r>  rH  rQ  rY  gµßÚI~w@ç�u'Žò®Àçõ|r¹fÒFÀç>ÍÉ‹Ä[Àçé¤­ •À'@ç�úë–ë}@ç+Lc¤¬EÀçÔVô ¡!@)rí   rþ   r  r  r(  r4  rþ   r?  rI  rR  rZ  ra  gR3ZýÇÈî?çA¼	#�ø?çj„Ÿ´Gê@ç7VÞeñ¨é¿çeGô|83Àç·­†ôv,Ø?ç/yng€§ê¿)rî   rÿ   r  r  r)  r5  rÿ   r@  rJ  rS  r[  rb  rh  g§�ÕG–b:@ç�G>_R@çÌ`)Y™Àç¦€´ÿ\ÀçÉ¤É�^à?çë9Èo2À)rï   r   r  r  r*  r6  r   rA  rK  rT  r\  rc  ri  rn  g6ÌÐx"‘m@ç¨o™Óeí%ÀçJìÚÞnqÀçv†yôNå?çä~êÌû+À)rð   r  r  r  r+  r7  r  rB  rL  rU  r]  rd  rj  ro  rs  gb®˜Sú°ò?çRBUñë>@çºWUKãÜ¿çsøliªqï?)rñ   r  r  r  r,  r8  r  rC  rM  rV  r^  re  rk  rp  rt  rw  g<Ú8bM±‘@çâ¥åQ;½*ÀçÀýÊ” K6@)rò   r  r  r   r-  r9  r  rD  rN  rW  r_  rf  rl  rq  ru  rx  rz  g&œ¦AdÛ?çaBÜæIà¿)ró   r  r  r!  r.  r:  r  rE  rO  rX  r`  rg  rm  rr  rv  ry  r{  r|  gC€ã�	f@)gƒùqÕ ÿ�¾gbk‚ýú—½>gç™6ß“R½>gÂIëˆ‘Óü½gìXFï;î>g)	Ÿ@AnN>gù¨\áú—½>gûœhMÎÔ>g˜VÖ•¥�¾gH³4>ÖS¼¾gÀ…²ÜéÍœ>gìsCa!T¦>gÈ's„Çd¾g6µ¡KJ•¾g~|WR´¾g,ŽçN®h>g	°Á…ã	¼>g½ÊZÙÆ|O>gÚ+®Ý±f>Nr;   r   c                  ó   — yrq   rM   rr   s    r.   rt   zNTestIterativeSubproblem.test_for_finite_number_of_iterations.<locals>.<lambda>ß  ru   r0   c                 ó   •— ‰S rw   rM   )rs   rà   s    €r.   rt   zNTestIterativeSubproblem.test_for_finite_number_of_iterations.<locals>.<lambda>à  s   ø€ ˜a€ r0   c                 ó   •— ‰S rw   rM   r|   s    €r.   rt   zNTestIterativeSubproblem.test_for_finite_number_of_iterations.<locals>.<lambda>á  s   ø€ ˜q€ r0   rË   gš™™™™™É?)rs   r�   r‚   rƒ   r„   r…   Úmaxiterr   )r   r>   r   r‡   r«   ÚMAXITER_DEFAULT)	r@   Úsubproblem_maxiterr€  r‰   rˆ   rŠ   r‹   r}   rà   s	          @@r.   Ú$test_for_finite_number_of_iterationsz<TestIterativeSubproblem.test_for_finite_number_of_iterationso  s  ù€ ä�H‰Hò>ò
>ò
<ò
@ò
=ò
@ò
>ò
=ò
?ò
?ò
<ò
<ò
?ò
>ò
>ò
>ò
<ò
?ò
=ðu^>ó`
ˆôB �H‰Hò 
ó ˆð # B˜ZÐØ)ò 	0ˆGä)ØÙÛÛ ØØØôˆGð ˆLØ&Ÿ}™}¨\Ó:ÑˆAˆ}àˆØ—}‘}Ô(;×(KÑ(KÓKÐKÐKà—}‘}¨Ó/Ð/Ð/ñ#	0r0   N)rJ   rK   rL   rŒ   r’   r›   r¬   rÁ   rÆ   ÚpytestÚmarkÚthread_unsafeÚ	fail_slowrá   rƒ  rM   r0   r.   rj   rj   ˜   sg   „ ò7ò4>ò2ò4ò.7ò07ð0 ‡[�[×ÑÐ&9ÐÓ:Ø‡[�[×Ñ˜2ÓñI<ó ó ;ðI<óX}0r0   rj   rw   )Ú__doc__r„  Únumpyr   Ú!scipy.optimize._trustregion_exactr   r   r   Úscipy.linalgr   r   r   r	   r
   Únumpy.testingr   r   r   r   r/   r2   rO   rj   rM   r0   r.   ú<module>r�     s[   ðñó Û ÷ñ ÷ @Õ ?÷Dó Dó÷>Gñ G÷2M5ñ M5÷`T0ò T0r0   