+
    /i                     r    R t ^ RIt^ RIt^ RIHtHtHt ^ RIH	t	H
t
HtHtHt  ! R R4      t ! R R4      tR# )z5
Unit tests for trust-region optimization routines.

N)assert_assert_equalassert_allclose)minimizerosen	rosen_der
rosen_hessrosen_hess_prodc                   0   a  ] tR t^t o RtR tR tRtV tR# )AccumulatorzThis is for testing callbacks.c                "    ^ V n         RV n        R# )    N)countaccumselfs   &c/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/optimize/tests/test_trustregion.py__init__Accumulator.__init__   s    

    c                    V ;P                   ^,          un         V P                  f   \        P                  ! V4      V n        R# V ;P                  V,          un        R# )   N)r   r   nparray)r   xs   &&r   __call__Accumulator.__call__   s5    

a
::!DJJJ!OJr   )r   r   N)	__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s     ) r   r   c                   V   a  ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
tV tR# )TestTrustRegionSolversc                <    R R .V n         RR.V n        RR .V n        R# )g      ?g       @Ng333333)x_opt
easy_guess
hard_guessr   s   &r   setup_method#TestTrustRegionSolvers.setup_method   s#    3Z
*+r   c           
        V P                   p\        \        V\        \        R RRR/R7      p\        WR,          ^ ,          4       \        VR,          VR,          R,          4       \        VR,          V P                  4       R# )	:0yE>dogleg
return_allTjachesstolmethodoptionsallvecsr   N)r+   r   r   r   r   r   r)   r   x0rs   &  r   test_dogleg_accuracy+TestTrustRegionSolvers.test_dogleg_accuracy!   sc    __UBIJD$|T.BEiLO,#)R 01#

+r   c                   \        4       p^p\        \        V P                  \        \
        VRRRRV/R7      p\        VP                  V4       \        \        VR,          4      V^,           4       \        VR,          VR,          R
,          4       \        \        VR,          R,          4      VP                  4       R	# )   r0   r1   Tmaxiter)r3   r4   callbackr6   r7   r8   r   :r   NNNr9   )r   r   r   r+   r   r   r   r   lenr   sumr   )r   accumulatorrA   r<   s   &   r   test_dogleg_callback+TestTrustRegionSolvers.test_dogleg_callback*   s    !mUDOO)(*D)WEH 	[&&0S9&	2#)R 01AiL,-{/@/@Ar   c                    \         P                  ! \        R R7      ;_uu_ 4        \        \        V P
                  \        \        RRRR^/R7       RRR4       R#   + '       g   i     R# ; i)zMaximum number of iterations)matchr0   dispTrA   )r3   r4   r6   r7   N)pytestwarnsRuntimeWarningr   r   r+   r   r   r   s   &r   test_dogleg_user_warning/TestTrustRegionSolvers.test_dogleg_user_warning6   sV    \\. ?A AUDOO$X$dIq9=A A A As   ,AA,	c                   \         p\        p\        pV P                  V P                  3 EF  p\        WW#R RRR/R7      p\        WW#R RRR/R7      p\        WW#R RRR/R7      p\        WW#R RRR/R7      p\        WW#R RRR/R7      p	\        V P                  VR	,          4       \        V P                  VR	,          4       \        V P                  VR	,          4       \        V P                  VR	,          4       \        V P                  V	R	,          4       \        \        VR
,          4      \        VR
,          4      8  4       EK   	  R# )r/   r0   r1   Tr2   	trust-ncgtrust-krylovz	newton-cgtrust-exactr   r8   N)
r   r   r   r*   r+   r   r   r)   r   rC   )
r   fghr;   r_doglegr_trust_ncgr_trust_krylovr_ncgr_iteratives
   &         r   test_solver_concordance.TestTrustRegionSolvers.test_solver_concordance=   s8   
 ??DOO4B1$'/,9MOH"1aT*5,8$+?AK &a*8,8$+?AN Qt$/,9MOE"1aT*7,8$+?AK DJJ6DJJC(89DJJs(;<DJJc
3DJJC(89C+,s53C/DDE' 5r   c           
         V P                   V P                  V P                  3 F=  p\        \        V\
        \        R RR7      p\        V P                  VR,          4       K?  	  R# )r/   rQ   )r3   hesspr5   r6   r   N)r*   r+   r)   r   r   r   r	   r   r:   s   &  r   test_trust_ncg_hessp+TestTrustRegionSolvers.test_trust_ncg_hesspZ   sI    ??DOOTZZ@B	!+7ADJJ#/ Ar   c           	         \        \        V P                  \        \        R RR7      p\        V P                  VR,          4       R# )r/   rQ   r;   r3   r4   r5   r6   r   Nr   r   r)   r   r   r   r   r<   s   & r   test_trust_ncg_start_in_optimum6TestTrustRegionSolvers.test_trust_ncg_start_in_optimum`   s/    Utzzyzk3

AcF+r   c           	         \        \        V P                  \        \        R RR7      p\        V P                  VR,          4       R# )r/   rR   rc   r   Nrd   re   s   & r   "test_trust_krylov_start_in_optimum9TestTrustRegionSolvers.test_trust_krylov_start_in_optimume   s/    Utzzyzn6

AcF+r   c           	         \        \        V P                  \        \        R RR7      p\        V P                  VR,          4       R# )r/   rS   rc   r   Nrd   re   s   & r   !test_trust_exact_start_in_optimum8TestTrustRegionSolvers.test_trust_exact_start_in_optimumj   s/    Utzzyzm5

AcF+r   )r*   r+   r)   N)r   r   r   r    r,   r=   rF   rN   r\   r`   rf   ri   rl   r"   r#   r$   s   @r   r'   r'      s9     &
,
B=F:0,
,
, ,r   r'   )r!   rK   numpyr   numpy.testingr   r   r   scipy.optimizer   r   r   r   r	   r   r'    r   r   <module>rr      s8      @ @- - S, S,r   