+
    /i                     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:0yE>ư>)	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   &j/var/www/html/photoedit/myenv/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   "       aeeAhr   r   funjachesshesspT      ?Nr   r         @r   g       @r   r0   r   g      @)g      @r   r0   )      r   r   )gb5m1ݿ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_case4TestKrylovQuadraticSubproblem.test_for_the_easy_case   sU    HHo%%' ( HH_%  Q** .!6	8
 #==6!!RXX.>%?@]D)		quuQx'++/9A=>	 	BIINN1-|<"==6!!78	:]D)		quuQx'++/9A=>	 	BIINN1-|<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_case4TestKrylovQuadraticSubproblem.test_for_the_hard_case;   s>    HHo%%' ( HH_%  Q** .!6	8
 #==6!!RXX.>%?@		quuQx'++/9A=>	 	BIINN1-|<"==6!!RXX.>%?@		quuQx'++/9A=>	 	BIINN1-|<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	# )no?皙?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@٢yn*?r<8ٿ&Î?)rT   rW   g6
@ĽCԿ8K?)rU   rX   rZ   gc?>ڿ)rV   rY   r[   r\   g-Q?)g*<sA?gE?gM x?gz?g=޿)g8b҄gO
L?gp4OF̿g qgo-7?
r4   r5   r6   r7   r   r8   r9   r$   r:   r   r;   s   &    @@r   test_for_interior_convergence;TestKrylovQuadraticSubproblem.test_for_interior_convergenceb   s    HHQSRUS	U V
 HHRS Q** .!6	8
 #==6 			quuQx'++/9A=>	 	"! &? 	@!-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	# )VaU?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йTFKտ)rj   rm   ro   rp   g&Rr   r   r   r   r   )giG7㰱?gl$WgZg-O|οgm/r]   r;   s   &    @@r   test_for_very_close_to_zero9TestKrylovQuadraticSubproblem.test_for_very_close_to_zero}   s    HHTTUUV	X Y
 HH'( Q** .!6	8
 #==6 			quuQx'++/9A=>	 	BIINN1-|<!! &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    155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    VVAYJHH'(!$/$/%3&;	=
 #==6$$&ABDINr   r   N)__name__
__module____qualname____firstlineno__rA   rI   r^   rr   r   __static_attributes____classdictcell__)__classdict__s   @r   r   r      s'     (=T%=N86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 *DDI.48:XO XOr   