+
    Y°³j«  ã                   ót   € R t ^ RIt^ RIHt ^ RIHtHtHtH	t	 ]! RRR7      t
]! RRRR7      t ! R	 R
4      tR# )z>
Unit tests for Krylov space trust-region subproblem solver.

N)Úget_trlib_quadratic_subproblem)Úassert_Úassert_almost_equalÚassert_equalÚassert_array_almost_equalg:Œ0âŽyE>ç�íµ ÷Æ°>)Ú	tol_rel_iÚ	tol_rel_bT)r   r	   Údispc                   ó>   a € ] tR t^t o R tR tR tR tR tRt	V t
R# )ÚTestKrylovQuadraticSubproblemc                ó¸  aa€ \         P                  ! . R
O. RO. RO.4      o\         P                  ! . RO4      oR p\        ^ R V3R lR V3R lR7      pVP                  V4      w  r4\	        V\         P                  ! . RO4      4       \        VR4       \        \         P                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \        \         P                  P                  V4      V4       RpVP                  V4      w  r4\	        V\         P                  ! . RO4      4       \        VR4       \        \         P                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \        \         P                  P                  V4      V4       R	# )ç      ð?ç        c                 ó   € ^ # ©é    © ©Úxs   &Úm/home/luca/screen-checking/.venv/lib/python3.14/site-packages/scipy/optimize/tests/test_trustregion_krylov.pyÚ<lambda>ÚFTestKrylovQuadraticSubproblem.test_for_the_easy_case.<locals>.<lambda>   ó   € ©ó    c                 ó   <€ S# ©Nr   ©r   Úgs   &€r   r   r       ó   ø€ ©r   c                 ó   € R # r   r   r   s   &r   r   r   !   ó   € ©$r   c                 ó&   <€ SP                  V4      # r   ©Údot©r   ÚyÚHs   &&€r   r   r   "   ó   ø€ ¨a¯e©e°A¬hr   ©r   ÚfunÚjacÚhessÚhesspTç      à?N©r   r   ç      @©r   g       @r   ©r0   r   g      @)g      @r   r0   )ç      ð¿r   r   )g�b5m1…Ý¿r   gpë�¬Ó³È¿)ÚnpÚarrayÚKrylovQPÚsolver   r   r   ÚlinalgÚnormr$   Úlam©ÚselfÚtrust_radiusÚsubprobÚpÚhits_boundaryr'   r   s   &    @@r   Útest_for_the_easy_caseÚ4TestKrylovQuadraticSubproblem.test_for_the_easy_case   sU  ù€ ô �HŠH’oÚ%Ú%ð'ó (ˆô �HŠH’_Ó%ˆð ˆô ˜QÙ*Ü*Ù .Ü!6ô	8ˆð
 #Ÿ=™=¨Ó6Ñˆä! !¤R§X¢XÒ.>Ó%?Ô@Ü�] DÔ)äÜ—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	œBŸI™IŸN™N¨1Ó-¨|Ô<àˆØ"Ÿ=™=¨Ó6Ñˆä! !Ü—’Ò7Ó8ô	:ä�] DÔ)äÜ—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	œBŸI™IŸN™N¨1Ó-¨|Ö<r   c                óˆ  aa€ \         P                  ! . R	O. R
O. RO.4      o\         P                  ! . R
O4      oR p\        ^ R V3R lR V3R lR7      pVP                  V4      w  r4\	        V\         P                  ! . RO4      4       \        \         P                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \        \         P                  P                  V4      V4       RpVP                  V4      w  r4\	        V\         P                  ! . RO4      4       \        \         P                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \        \         P                  P                  V4      V4       R# )r   r   c                 ó   € ^ # r   r   r   s   &r   r   ÚFTestKrylovQuadraticSubproblem.test_for_the_hard_case.<locals>.<lambda>I   r   r   c                 ó   <€ S# r   r   r   s   &€r   r   rE   J   r   r   c                 ó   € R # r   r   r   s   &r   r   rE   K   r!   r   c                 ó&   <€ SP                  V4      # r   r#   r%   s   &&€r   r   rE   L   r(   r   r)   r.   Nr/   r1   r2   )r   r3   r   )r   g      à¿r   )
r4   r5   r6   r7   r   r   r8   r9   r$   r:   r;   s   &    @@r   Útest_for_the_hard_caseÚ4TestKrylovQuadraticSubproblem.test_for_the_hard_case;   s>  ù€ ô �HŠH’oÚ%Ú%ð'ó (ˆô �HŠH’_Ó%ˆð ˆô ˜QÙ*Ü*Ù .Ü!6ô	8ˆð
 #Ÿ=™=¨Ó6Ñˆä! !¤R§X¢XÒ.>Ó%?Ô@äÜ—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	œBŸI™IŸN™N¨1Ó-¨|Ô<àˆØ"Ÿ=™=¨Ó6Ñˆä! !¤R§X¢XÒ.>Ó%?Ô@äÜ—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	œBŸI™IŸN™N¨1Ó-¨|Ö<r   c                óÄ  aa€ \         P                  ! . R
O. RO. RO. RO. RO.4      o\         P                  ! . RO4      oRp\        ^ R V3R lR V3R lR7      pVP                  V4      w  r4\	        \         P
                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \        V. RO4       \        VR4       R	# )çÛn‚ošþü?çš™™™™™ñ?c                 ó   € ^ # r   r   r   s   &r   r   ÚMTestKrylovQuadraticSubproblem.test_for_interior_convergence.<locals>.<lambda>n   r   r   c                 ó   <€ S# r   r   r   s   &€r   r   rO   o   r   r   c                 ó   € R # r   r   r   s   &r   r   rO   p   r!   r   c                 ó&   <€ SP                  V4      # r   r#   r%   s   &&€r   r   rO   q   r(   r   r)   r   FN)rL   ç�ž¶¡½uê?ç,wnó)ôË?ç”/ËK¼Ëà¿çÿëš˜GÐ?)rS   gì¼®ÛwO@çÙ¢y¾n*Ô?çr–<8±Ù¿çõ¶Û&ÃŽ¶?)rT   rW   gÓ6›ª
@çøòÄ½CÔ¿ç8Š¤ÄKƒÑ?)rU   rX   rZ   gÀc‘‰èù?çò†«>øÚ¿)rV   rY   r[   r\   gÂ-£Qõ?)g*‹ã<sAè?g³¢¼E�?gM x¾—©Õ?gzý‹˜ÀÊê?gôÒ=€©Þ¿)g8bÒ„òå¿gåO
©‘L¿?g p4OÇFÌ¿g� Ïqå¿g­oš-7Ô?©
r4   r5   r6   r7   r   r8   r9   r$   r:   r   r;   s   &    @@r   Útest_for_interior_convergenceÚ;TestKrylovQuadraticSubproblem.test_for_interior_convergenceb   s½   ù€ ä�HŠHÒQÚSÚRÚUÚSð	Uó Vˆô
 �HŠHÒRÓSˆØˆô ˜QÙ*Ü*Ù .Ü!6ô	8ˆð
 #Ÿ=™=¨Ó6Ñˆô 	Ü—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	" !ò &?ô 	@ä! -°Ö7r   c                ó  aa€ \         P                  ! . R
O. RO. RO. RO. RO.4      o\         P                  ! . RO4      oRp\        ^ R V3R lR V3R lR7      pVP                  V4      w  r4\	        \         P
                  P                  SP                  V4      VP                  V,          ,           S,           4      R4       \	        \         P
                  P                  V4      V4       \        V. RO4       \        VR4       R	# )çÝVaÐUì?rM   c                 ó   € ^ # r   r   r   s   &r   r   ÚKTestKrylovQuadraticSubproblem.test_for_very_close_to_zero.<locals>.<lambda>‰   r   r   c                 ó   <€ S# r   r   r   s   &€r   r   rc   Š   r   r   c                 ó   € R # r   r   r   s   &r   r   rc   ‹   r!   r   c                 ó&   <€ SP                  V4      # r   r#   r%   s   &&€r   r   rc   Œ   r(   r   r)   r   TN)ra   çø˜›±`A@ç5“ýF€ï?çÔ9Ô)n@é¿ç€îcñÑ¿)rg   gµÚ{ú¥§¿ç.<íøÕ?ç~õýÏËê¿çÔ:]³èÅ?)rh   rk   g@33ôë¿ç �5Ð:²°¿ç¦ä¤IŒâö¿)ri   rl   rn   gÐ¹ÛõÒTú¿ç¦F¦K°Õ¿)rj   rm   ro   rp   g¬¢&—Rùú¿©r   r   r   r   r   )g÷iG7ã°±?glµ$“•W�¿gÀü€ÍZæä¿g-ðOˆ|Î¿g¦mô‚/ë¿r]   r;   s   &    @@r   Útest_for_very_close_to_zeroÚ9TestKrylovQuadraticSubproblem.test_for_very_close_to_zero}   sÕ   ù€ ä�HŠHÒTÚTÚUÚUÚVð	Xó Yˆô
 �HŠHÒ'Ó(ˆØˆô ˜QÙ*Ü*Ù .Ü!6ô	8ˆð
 #Ÿ=™=¨Ó6Ñˆô 	Ü—	‘	—‘˜qŸu™u Q›x¨'¯+©+¸­/Õ9¸AÕ=Ó>Øô	ô 	œBŸI™IŸN™N¨1Ó-¨|Ô<ä! !ò &3ô 	4ô 	" -°Ö6r   c                ó2  aa	€ \         P                  ! ^4      ) o\         P                  ! . R	O4      o	Rp\        ^ R V	3R lR V3R lR7      pVP	                  V4      w  rEVP                  4       w  rg\        VP                  R4      \        V4      4       R# )
é   rM   c                 ó   € ^ # r   r   r   s   &r   r   Ú9TestKrylovQuadraticSubproblem.test_disp.<locals>.<lambda>¡   s   € ©ar   c                 ó   <€ S# r   r   r   s   &€r   r   rw   ¢   s   ø€ ©ar   c                 ó   € R # r   r   r   s   &r   r   rw   £   s   € ©tr   c                 ó&   <€ SP                  V4      # r   r#   r%   s   &&€r   r   rw   ¤   s   ø€ °1·5±5¸´8r   r)   z  TR Solving trust region problemNrq   )	r4   Úeyer5   ÚKrylovQP_dispr7   Ú
readouterrr   Ú
startswithÚrepr)
r<   Úcapsysr=   r>   r?   r@   ÚoutÚerrr'   r   s
   &&      @@r   Ú	test_dispÚ'TestKrylovQuadraticSubproblem.test_disp›   sy   ù€ Ü�VŠV�A‹YˆJˆÜ�HŠHÒ'Ó(ˆØˆä !Ù$/Ü$/Ù%3Ü&;ô	=ˆð
 #Ÿ=™=¨Ó6ÑˆØ×$Ñ$Ó&‰ˆÜ�—‘ÐAÓBÄDÈÃIÖNr   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rA   rI   r^   rr   rƒ   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r      s'   ø‡ € ò(=òT%=òN8ò67÷<Oð Or   r   )Ú__doc__Únumpyr4   Úscipy.optimize._trlibr   Únumpy.testingr   r   r   r   r6   r|   r   r   r   r   Ú<module>r�      sK   ðñó Ý B÷Dó Dñ *°DÀDÔI€Ù.¸ÈØ48ô:€÷XOó XOr   