
    [h<                     z    S SK r S SK7  S SKJrJrJrJrJrJrJ	r	J
r
JrJrJr  S rS rS rS rS rS	 rS
 rS rg)    N)*)SecantMuller	BisectionIllinoisPegasusAndersonRidderANewtonNewtonMNewtonMDNewtonc            
         S[         l        [        S [        S5      5      R	                  S5      (       d   e[        [
        [        S5      5      R	                  [        5      (       d   e[        [
        [        S5      [        S5      45      R	                  [        5      (       d   e[        S [        S5      5      R	                  S	5      (       d   eS
 n [        [        [        [        [        4 H)  n[        U SUS9n[        U " U5      5      [        :  a  M)   e   [        [        [        [         ["        [$        [&        4 H)  n[        U SUS9n[        U " U5      5      [        :  a  M)   e   S n [)        [        U SSS9[        5      (       d   e[)        [*        R                  U SSS9[*        R                  5      (       d   e[)        [,        R                  U SSS9[.        5      (       d   e[)        [,        R                  U SSS9[0        5      (       d   e[2        R4                  " [6        5         [9        S5         [        S [        SSS95        S S S 5        S S S 5        [2        R4                  " [6        5         [        S S5        S S S 5        [2        R4                  " [6        5         [        S S5        S S S 5        g ! , (       d  f       Nw= f! , (       d  f       N= f! , (       d  f       Na= f! , (       d  f       g = f)N   c                     SU -  S-
  $ )N       xs    U/var/www/auris/envauris/lib/python3.13/site-packages/mpmath/tests/test_rootfinding.py<lambda>test_findroot.<locals>.<lambda>	   s    ac!e       g      ?r   gQ	@c                     X -  S-   $ N   r   r   s    r   r   r      s
    ac!er   y       @       @y              ?c                     [        U 5      $ N)cosr   s    r   r   r      s    #a&r          @solver)      ?r"   c                     U S-
  S-  $ N   r   r   s    r   r   r      s    1q51*r   r   g|=)tolr%   y      ?        r(   c                     U S-  SU -  -
  S-   $ )Nr(   iC l   F[ r   r   s    r   r   r   "   s    q!tgai/.@r   z	5.278e+13z
-5.278e+13)realimagc                     g)Nr   r   s    r   r   r   '   s    2r   r   c                     SU -
  S-  S-
  $ )Nr      r   )ps    r   r   r   +   s    AEB;?r   g?)mpdpsfindrootmpfaesinpimpcr   r   r   r   r   absepsr   r   r   r	   r
   
isinstanceivfpfloatcomplexpytestraises
ValueErrorworkprec)fr$   r   s      r   test_findrootrF      s8   BFOSV,//5555CQ ##B''''C#a&#d),-004444OSY/2226666A67FG<Q6*1Q4y3 = 69hQ01Q4y3
 	Ahq!/5555bkk!RUk3RVV<<<<bkk!QEk2E::::bkk!Tuk5w???? 
z	"a[@k=?  
# 
z	"q! 
# 
z	"*C0 
#	" [ 
#	" 
#	" 
#	"s<   7KK
KK,3K=

K	K
K),
K:=
Lc                  (    [        S SSS9S:X  d   eg )Nc                     U S-  S-
  $ )Nr(   r   r   r   s    r   r    test_bisection.<locals>.<lambda>/   s    ad1fr   )r   r(   bisectr#   r   r4   r   r   r   test_bisectionrL   -   s    $U(;q@@@r   c                  V    S n [        U SSS9n[        U " U5      5      [        :  d   eg )Nc                     [        / SQU 5      $ )N)r   r   r   r   )polyvalr   s    r   r   test_mnewton.<locals>.<lambda>2   s    ')A&r   gmnewtonr#   )r4   r:   r;   rE   r   s     r   test_mnewtonrS   1   s)    &AD+Aqt9s??r   c                  ^    S n [        U S[        S9n[        U " U5      5      [        :  d   eg )Nc                     U S-
  S-  $ )Nr(   d   r   r   s    r   r   test_anewton.<locals>.<lambda>7   s    1q53,r   r%   r#   )r4   r   r:   r;   rR   s     r   test_anewtonrX   6   s)    ABw'Aqt9s??r   c                  ^    S n [        U S[        S9n[        U " U5      5      [        :  d   eg )Nc                     SU -   S-  S-   $ )Nr(   r   r   r   s    r   r   test_muller.<locals>.<lambda><   s    1q51*q.r   r%   r#   )r4   r   r:   r;   rR   s     r   test_mullerr\   ;   s)     ABv&Aqt9s??r   c                  ~   ^  [        SS5       H  m [        U 4S jS5      T :X  a  M   e   [        S S5      S:X  d   eg )Nr   r   c                    > U S-
  T-  $ r   r   )r   is    r   r   #test_multiplicity.<locals>.<lambda>B   s    q1uqjr   c                     U S-  $ r'   r   r   s    r   r   r`   C   s    !Q$r   r   )rangemultiplicity)r_   s   @r   test_multiplicityrd   @   s>    1a[0!4999 *a///r   c                  j  ^^^ S n [        [        U S5      [        SS/SS//5      -
  S5      S:  d   e[        [        U SSS	 S
9 H  u  pM     [        U " W6 S5      S:  d   eS mS mS mUUU4S jn [        U S5      nU Vs/ s H  n[        [        U5      5      PM     snSS/:X  d   eg s  snf )Nc                      SU S   S-  -  SU S   S-  -  -
  S-
  U S   S-  SU S   -  -
  U S   S-  -   SU S   -  -   S-
  /$ )Nr   r   r(   r      r   r   s    r   rE    test_multidimensional.<locals>.fF   sb    !A$'	!AaD!G)#A%qtQwq1v~adAg'=a!f'DQ'FGGr   )r      rg   r   ri   r   gHz>c                 "    [        U [        5      $ r    )norminfr   s    r   r   'test_multidimensional.<locals>.<lambda>J   s
    DCLr   )verboserl   r(   g+=c                     U * SU-  -   $ r'   r   r   ys     r   r   rn   O   s    qb1Q3hr   c                 :    U S-  XS-  S-
  -  -   SU-  -
  U S-   -  $ )Nr(   r   r   rq   s     r   r   rn   P   s)    q!taAl*QqS0q1u=r   c                 *    [        U S-  US-  -   5      $ r'   )sqrtrq   s     r   r   rn   Q   s    d1a4!Q$;'r   c                 @   > T" X5      nT" X5      U-
  T" X5      U-
  4$ r    r   )r   rr   f1xf1f2f3s      r   rE   rh   R   s'    h1313//r   )
   r{   r   r   )	mnormjacobianmatrixr   r2   rl   r4   intround)rE   r   errorr_   rx   ry   rz   s       @@@r   test_multidimensionalr   E   s    H!V$v!uaVn'==a@5HHHRFA"8:: 1q>E!!! 
B	=B	'B0 	HA#$%1aCaM1%!Q///%s   B0c                  P    [        S S5      S:X  d   e[        S S5      S:X  d   eg )Nc                     g)Nr   r   r   s    r   r   test_trivial.<locals>.<lambda>Y   s    ar   r   c                     U $ r    r   r   s    r   r   r   Z   s    ar   r   rK   r   r   r   test_trivialr   X   s,    K#q(((K#q(((r   )rA   mpmathmpmath.calculus.optimizationr   r   r   r   r   r	   r
   r   r   r   r   rF   rL   rS   rX   r\   rd   r   r   r   r   r   <module>r      sM     B B B B%1NA


0
0&)r   