Ë
    çÿæiC”  ã                   óx  — d dl Z d dlmZ d dlZd dlmZmZmZmZ d dl	Z
d dl	mZmZmZmZmZmZmZmZ d dlmZ d dlmZmZmZmZ d dlmZ d dlmZm Z! d	 e
j                  e"«      jF                  z  Z$ ee"«      jF                  Z%ejL                  ejN                  ejP                  ejR                  ejT                  gZ+ej0                  gZ,e+e,z   Z-d
„ Z.d„ Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4ed„ «       Z5 G d„ d«      Z6 G d„ de6«      Z7 G d„ de6«      Z8d„ Z9d„ Z:d„ Z; G d„ d«      Z<d„ Z=d„ Z>d„ Z?d „ Z@d!„ ZAd"„ ZBej†                  j‰                  d#d$ejŠ                  fd%ejŒ                  fg«      d&„ «       ZGd'„ ZHej†                  j‰                  d(g d)¢«      d*„ «       ZIej†                  j‰                  d+g d)¢«      d,„ «       ZJej†                  j‰                  d(g d)¢«      ej†                  j‰                  d-d.d/g«      d0„ «       «       ZKd1„ ZLej†                  j‰                  d(g d)¢«      ej†                  j‰                  d-d.d/g«      d2„ «       «       ZMd3„ ZNd4„ ZOej†                  j‰                  d+e-«      d5„ «       ZPej†                  j‰                  d+ejL                  ejN                  ejP                  ejR                  g«      d6„ «       ZQy)7é    N)Ú	lru_cache)Úassert_Úassert_allcloseÚassert_equalÚassert_array_equal)ÚfinfoÚpowerÚnanÚiscloseÚsqrtÚexpÚsinÚcos)Úoptimize)Ú	_zeros_pyÚnewtonÚroot_scalarÚOptimizeResult)Úgetfullargspec_no_self)Ú	get_testsÚ	functionsé   c                 ó   — | dz  d| z  z
  dz
  S ©Né   é   © ©Úxs    út/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/scipy/optimize/tests/test_zeros.pyÚf1r!   "   s   € Ø�‰6�A˜‘E‰>˜AÑÐó    c                 ó   — d| z  dz
  S ©Nr   r   r   s    r    Úf1_1r%   &   s   € Øˆq‰5�1‰9Ðr"   c                 ó   — dd| z  z   S ©Nç       @r   r   r   s    r    Úf1_2r)   *   s   € Ø��Q‘‰;Ðr"   c                 óB   — t        | «      t        | «      t        | «      fS ©N)r!   r%   r)   r   s    r    Úf1_and_p_and_ppr,   .   s   € Üˆa‹5”$�q“'œ4 ›7Ð"Ð"r"   c                 ó0   — t        | «      t        | «      z
  S r+   ©r   r   r   s    r    Úf2r/   3   ó   € Üˆq‹6”C˜“F‰?Ðr"   c                 ó0   — t        | «      t        | «      z   S r+   )r   r   r   s    r    Úf2_1r2   7   r0   r"   c                 ó0   — t        | «      t        | «      z   S r+   r.   r   s    r    Úf2_2r4   ;   r0   r"   c                 ó   — | S r+   r   r   s    r    Úf_lrucachedr6   @   s   € à€Hr"   c                   ó¨   — e Zd Zd ej                  e«      j                  z  Zd ej                  e«      j                  z  Z	 	 dd„Z	dd„Z
	 	 dd„Zy)ÚTestScalarRootFindersr   Nc           	      óÂ  — g }|xs g D ]0  }||vrddddœj                  ||«      }|j                  ||   «       Œ2 t        d
i |¤Ž}|j                  dddœ«       |xs g D ]
  }||   ||<   Œ |j                  d«      }	|j                  d	d
«      }
	  ||d	|
i|¤Ž\  }}|	||fS # t        $ r1 |	t        j                  t        ddt
        j                  |«      |fcY S w xY w)NÚx0Úx1Úf)ÚaÚbÚfuncTF©Úfull_outputÚdispÚrootÚargsr   éÿÿÿÿ)	ÚgetÚappendÚdictÚupdateÚ	ExceptionÚzerosÚRootResultsr
   Ú
_EVALUEERR)ÚselfÚtcÚmethodÚsig_args_keysÚsig_kwargs_keysÚkwargsÚmethod_argsÚkÚmethod_kwargsrC   Ú	func_argsÚrÚrrs                r    Ú_run_one_testz#TestScalarRootFinders._run_one_testK   s  € àˆØÒ$ "Ò$ˆAØ˜‰{à T°3Ñ7×;Ñ;¸A¸qÓA�Ø×Ñ˜r !™uÕ%ð	 %ô ™˜v™ˆØ×Ñ¨T¸5ÑAÔBØ Ò& BÒ&ˆAØ! !™uˆM˜!Òð 'ð �v‰v�f‹~ˆØ—F‘F˜6 2Ó&ˆ	ð	VÙ˜KÐI¨iÐI¸=ÑI‰EˆAˆrØ˜˜R�<ÐøÜò 	VØœ×*Ñ*¬3°°B¼×8HÑ8HÈ&ÓQÐSUÐUÒUð	Vús   ÂB$ Â$7CÃCc                 ó<  — t        |«      }t        |j                   «       t        |j                  «      }t        |j
                  «      |z
  }|j
                  d| }	g }
|dv r:|dv r&|
j                  d«       |dv r|
j                  d«       | j                  |d<   n| j                  |d<   | j                  |d	<   |D �cg c]"  }t         | j                  ||f|	|
d
œ|¤Ž«      ‘Œ$ }}|xs g }|D �cg c]  }|d   j                  rŒ|‘Œ }}|D �cg c]  }|d   d   |vsŒ|‘Œ }}|D �cg c]
  }|d   d   ‘Œ }}t        t        |«      |gdg g«       | j                  | j                  dœ} |j                  di |¤Ž |d	   }|j                  d|d   «      }|D �cg c]  }|d   j                  sŒ|‘Œ }}|D �cg c]  }|d   j                  ‘Œ }}|D �cg c]  }|d   ‘Œ	 }}t!        |||«      D ���cg c]%  \  }}}t#        ||||¬«      s|d   d   |vr|g|z   ‘Œ' }}}}|D ����cg c]+  \  }}}} |d   |g|j                  dt%        «       «      ¢­Ž ‘Œ- }}}}}t!        ||«      D ��cg c]  \  }}|dk7  sŒ|g|z   ‘Œ }}}t        |t        |«      gg dg«       |D �cg c]  }|d   j&                  ‘Œ }}|D �cg c]  }|‘Œ } }t        || «       yc c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}}}w c c}}}}w c c}}w c c}w c c}w )zÒRun test-cases using the specified method and the supplied signature.

        Extract the arguments for the method call from the test case
        dictionary using the supplied keys for the method's signature.N)Úsecantr   Úhalley)r   r]   Úfprime)r]   Úfprime2ÚtolÚxtolÚrtol)rQ   rR   r   rE   ÚIDr   ©ra   rb   )rb   Úatolr<   rD   r   )Ú_getfullargspecr   Ú
kwonlyargsÚlenÚdefaultsrD   rG   ra   rb   ÚlistrZ   Ú	convergedr   rI   rF   rC   Úzipr   ÚtuplerP   )!rN   ÚtestsrP   ÚnameÚ
known_failrS   ÚsigÚ	nDefaultsÚ	nRequiredrQ   rR   rO   ÚresultsÚeltÚnotcvgdÚnotcvged_IDSÚtolsrb   re   ÚcvgdÚapproxÚcorrectr=   ÚcÚnotcloseÚarootÚfulloutÚfvsÚfvÚresultÚmethod_from_resultÚ_Úexpected_methods!                                    r    Ú	run_testszTestScalarRootFinders.run_testsb   se  € ô ˜fÓ%ˆÜ�C—N‘NÐ"Ô#Ü˜Ÿ™Ó%ˆ	Ü˜Ÿ™“M IÑ-ˆ	ØŸ™  )Ð,ˆØˆØÐ1Ñ1ØÐ+Ñ+Ø×&Ñ& xÔ0Ø˜:Ñ%Ø#×*Ñ*¨9Ô5Ø ŸI™IˆF�5ŠMà!ŸY™YˆF�6‰NØ!ŸY™YˆF�6‰Nñ CHóIáBG¸Bô Ð*˜×*Ñ*Ø�ð7Ø&3Ø+ñ7à/5ñ7õ 8àBGð 	ð Ið
  Ò% 2ˆ
Ù")ÓB¡'˜3°°Q±×1AÓ1A’3 'ˆÐBÙ")ÓM¡'˜3¨S°©W°T©]À*Ò-L’3 'ˆÐMÙ18Ó9±¨#˜˜B™ ›°ˆÐ9Ü”c˜,Ó'¨Ð6¸¸B¸Ô@ð Ÿ	™	¨4¯9©9Ñ5ˆØˆ�‰Ñ�fÒØ�F‰|ˆØ�x‰x˜˜t F™|Ó,ˆá&Ó;™w˜¨#¨a©&×*:Ó*:’˜wˆÐ;Ù)-Ó.© #�#�a‘&—+“+¨ˆÐ.Ù%)Ó*¡T˜c�3�q“6 TˆÐ*ä/2°6¸7ÀDÔ/Iõ 9Ñ/I¡) ! Q¨Ü  1¨4°dÕ;Ø˜B™ ™¨ZÑ7ð �C˜#“IÐ/Iˆò 9ñ
 -5ö6Ù,4Ñ(�5˜!˜W bð ˆr�#‰w�uÐ7˜rŸv™v f¬e«gÓ6Ô7Ø,4ð 	ó 6ä.1°#°xÔ.@ÔLÑ.@¡7 2 sÀBÈ!ÃG�R�D˜3“JÐ.@ˆÑLÜ�h¤ H£Ð.°°Q°Ô8Ù=DÓE¹W°6˜f Q™i×.Ó.¸WÐÐEÙ)0Ó1© Aš4¨ˆÐ1ÜÐ'¨Õ9ùò?Iùò CùÚMùÚ9ùò <ùÚ.ùÚ*ùô9ùõ6ùãLùâEùÚ1s`   Ã 'KÃ3K!ÄK!ÄK&Ä"K&Ä,K+ÆK0Æ4K0Æ>K5ÇK:Ç9*K?È.0L
É2LÊ LÊ(LË	Lc                 óL   — t        ||¬«      } | j                  |||fd|i|¤Ž y)zuRun a collection of tests using the specified method.

        The name is used to determine some optional arguments.©Ú
smoothnessrp   N)r   r†   )rN   Ú
collectionrP   ro   r‰   rp   rS   rn   s           r    Úrun_collectionz$TestScalarRootFinders.run_collection�   s,   € ô
 ˜*°Ô<ˆØˆ�‰�u˜f dÑL°zÐLÀVÓLr"   )NNr+   )Ú__name__Ú
__module__Ú__qualname__Únpr   ÚfloatÚepsra   rb   rZ   r†   r‹   r   r"   r    r8   r8   E   sZ   „ ð ˆxˆr�x‰x˜‹×"Ñ"Ñ"€DØˆxˆr�x‰x˜‹×"Ñ"Ñ"€Dà6:Ø&*óVó.9:ðv CGØ"&ôMr"   r8   c                   ó¦  — e Zd Zej                  j                  de«      ej                  j                  de«      d„ «       «       Zej                  j                  de«      ej                  j                  de«      d„ «       «       Z	ej                  j                  de«      ej                  j                  de«      d„ «       «       Z
ej                  j                  de«      d„ «       Zej                  j                  dej                  ej                  ej                  g«      d„ «       Zej                  j                  de«      d„ «       Zd	„ Zy
)ÚTestBracketMethodsrP   Úfunctionc                 ó,  — dt        d«      }}t        ||j                  ||g|| j                  | j                  ¬«      }|j
                  sJ ‚t        |j                  d| j                  | j                  ¬«       |j                  |j                  k(  sJ ‚y ©Nç      à?é   )rP   Úbracketr:   ra   rb   ç      ð?©re   rb   )	r   r   rŒ   ra   rb   rk   r   rC   rP   ©rN   rP   r”   r=   r>   rX   s         r    Útest_basic_root_scalarz)TestBracketMethods.test_basic_root_scalar§   st   € ð ”4˜“7ˆ1ˆä˜¨¯©À1ÀaÀ&ÈQØ!ŸY™Y¨T¯Y©Yô8ˆà�{Š{Ðˆ{Ü˜Ÿ™ ¨$¯)©)¸$¿)¹)ÕDØ�x‰x˜6Ÿ?™?Ò*Ð*Ñ*r"   c                 óÊ   — dt        d«      }} ||||| j                  | j                  d¬«      \  }}|j                  sJ ‚t	        |d| j                  | j                  ¬«       y )Nr—   r˜   T)ra   rb   rA   rš   r›   )r   ra   rb   rk   r   )rN   rP   r”   r=   r>   rC   rX   s          r    Útest_basic_individualz(TestBracketMethods.test_basic_individualµ   sX   € ð ”4˜“7ˆ1ˆÙ˜ 1 a¨d¯i©i¸d¿i¹iØ%)ô+‰ˆˆað �{Š{Ðˆ{Ü˜˜c¨¯	©	¸¿	¹	ÖBr"   c                 óR  — dt        d«      }}t        ||j                  t        j                  ||g«      || j
                  | j                  ¬«      }|j                  sJ ‚t        |j                  d| j
                  | j                  ¬«       |j                  |j                  k(  sJ ‚y r–   )r   r   rŒ   r�   Úarrayra   rb   rk   r   rC   rP   rœ   s         r    Útest_bracket_is_arrayz(TestBracketMethods.test_bracket_is_arrayÂ   s€   € ð ”4˜“7ˆ1ˆÜ˜¨¯©Ü "§¡¨!¨Q¨Ó 0°Q¸T¿Y¹YØ!ŸY™Yô(ˆð �{Š{Ðˆ{Ü˜Ÿ™ ¨$¯)©)¸$¿)¹)ÕDØ�x‰x˜6Ÿ?™?Ò*Ð*Ñ*r"   c                 óB   — | j                  d||j                  d¬«       y )NÚapsr   rˆ   )r‹   rŒ   )rN   rP   s     r    Útest_aps_collectionz&TestBracketMethods.test_aps_collectionÑ   s   € à×Ñ˜E 6¨6¯?©?ÀqÐÕIr"   c                 ór   — |t         j                  k(  rdhni }| j                  d||j                  |¬«       y )Nzfun7.4Úchandrupatla)rp   )rK   Úridderr‹   rŒ   )rN   rP   rp   s      r    Útest_chandrupatla_collectionz/TestBracketMethods.test_chandrupatla_collectionÕ   s8   € ð $*¬U¯\©\Ò#9�h‘Z¸rˆ
Ø×Ñ˜N¨F°F·O±OØ'1ð 	õ 	3r"   c                 óh   — d\  }} |t         ||d¬«      \  }}|j                  sJ ‚t        |d«       y )N)rE   r   T©rA   r   )r6   rk   r   )rN   rP   r=   r>   rC   rX   s         r    Útest_lru_cached_individualz-TestBracketMethods.test_lru_cached_individualÜ   s7   € ð ‰ˆˆ1Ùœ a¨¸Ô=‰ˆˆaØ�{Š{Ðˆ{Ü˜˜aÕ r"   c                 ó˜   — t        j                  t        d¬«      5  t        j                  d„ ddd¬«       d d d «       y # 1 sw Y   y xY w)Nzmaxiter must be >= 0©Úmatchc                 ó   — | dz  dz
  S r   r   r   s    r    Ú<lambda>z2TestBracketMethods.test_gh_22934.<locals>.<lambda>ç   ó   €  1 a¡4¨!¢8r"   éþÿÿÿr   rE   ©Úmaxiter)ÚpytestÚraisesÚ
ValueErrorrK   Úbrentq©rN   s    r    Útest_gh_22934z TestBracketMethods.test_gh_22934å   s1   € Ü�]‰]œ:Ð-CÖDÜ�L‰LÑ+¨R°¸BÕ?÷ E×DÑDús   œA Á A	N)rŒ   r�   rŽ   r¶   ÚmarkÚparametrizeÚbracket_methodsÚtstutils_functionsr�   rŸ   r¢   r¥   rK   Úbisectr¨   Útoms748r©   r¬   r»   r   r"   r    r“   r“   ¦   sN  „ Ø‡[�[×Ñ˜X Ó7Ø‡[�[×Ñ˜ZÐ);Ó<ñ
+ó =ó 8ð
+ð ‡[�[×Ñ˜X Ó7Ø‡[�[×Ñ˜ZÐ);Ó<ñ	Có =ó 8ð	Cð ‡[�[×Ñ˜X Ó7Ø‡[�[×Ñ˜ZÐ);Ó<ñ+ó =ó 8ð+ð ‡[�[×Ñ˜X Ó7ñJó 8ðJð ‡[�[×Ñ˜X¨¯©°e·l±lØ(-¯©ð(7ó 8ñ3ó8ð3ð
 ‡[�[×Ñ˜X Ó7ñ!ó 8ð!ó@r"   r“   c                   ó  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej*                  j-                  d e«       ddig«      d„ «       Zej*                  j-                  dddg«      d„ «       Zd„ Zy)Ú
TestNewtonc                 ón   — dg}|ddgz  }dD ]&  }| j                  |t        j                  dd|¬«       Œ( y )Nú	aps.13.00z	aps.12.05ú	aps.12.17©r¤   Úcomplexr   r   ©r‰   rp   ©r‹   rK   r   ©rN   rp   rŠ   s      r    Útest_newton_collectionsz"TestNewton.test_newton_collectionsë   sE   € Ø!�]ˆ
Ø�{ KÐ0Ñ0ˆ
Û,ˆJØ×Ñ 
¬E¯L©L¸(Ø+,¸ð  õ Eñ -r"   c                 ób   — g d¢}dD ]&  }| j                  |t        j                  dd|¬«       Œ( y )N)z	aps.12.06z	aps.12.07z	aps.12.08z	aps.12.09z	aps.12.10z	aps.12.11z	aps.12.12z	aps.12.13z	aps.12.14z	aps.12.15z	aps.12.16rÆ   z	aps.12.18rÅ   rÇ   r]   r   rÉ   rÊ   rË   s      r    Útest_halley_collectionsz"TestNewton.test_halley_collectionsò   s8   € ò0ˆ
ó -ˆJØ×Ñ 
¬E¯L©L¸(Ø+,¸ð  õ Eñ -r"   c                 óÂ  — t         t        t        ft        t        t
        ffD ]º  \  }}}t        j                  |dd¬«      }t         ||«      dd¬«       t        j                  |ddd¬«      }t         ||«      dd¬«       t        j                  |d|d¬«      }t         ||«      dd¬«       t        j                  |d||d¬	«      }t         ||«      dd¬«       Œ¼ y )
Nr˜   ç�íµ ÷Æ°>©r`   r   ©re   é   )r;   r`   )r^   r`   )r^   r_   r`   )	r!   r%   r)   r/   r2   r4   rK   r   r   )rN   r<   Úf_1Úf_2r   s        r    Útest_newtonzTestNewton.test_newtonû   s¶   € Ü¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ—‘˜Q  tÔ,ˆAÜ™A˜a›D !¨$Õ/Ü—‘˜Q  a¨TÔ2ˆAÜ™A˜a›D !¨$Õ/Ü—‘˜Q ¨#°4Ô8ˆAÜ™A˜a›D !¨$Õ/Ü—‘˜Q ¨#°sÀÔEˆAÜ™A˜a›D !¨$Ö/ñ @r"   c                 óf  — t         t        t        ft        t        t
        ffD ]4  \  }}}t        |dd|d¬«      }t         ||j                  «      dd¬«       Œ6 t         t        t        ft        t        t
        ffD ]3  \  }}}t        |ddd¬«      }t         ||j                  «      dd¬«       Œ5 y)	z#Invoke newton through root_scalar()r   r˜   rÐ   )rP   r:   r^   ra   r   rÒ   ©rP   r:   ra   N©	r!   r%   r)   r/   r2   r4   r   r   rC   ©rN   r<   rÔ   rÕ   rX   s        r    Útest_newton_by_namezTestNewton.test_newton_by_name  s–   € ä¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ˜A h°1¸SÀtÔLˆAÜ™A˜aŸf™f›I q¨tÖ4ð @ô  ¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ˜A h°1¸4Ô@ˆAÜ™A˜aŸf™f›I q¨tÖ4ñ @r"   c                 óÂ  — t         t        t        ft        t        t
        ffD ]b  \  }}}t        |dddd¬«      }t         ||j                  «      dd¬«       t        |dddd¬«      }t         ||j                  «      dd¬«       Œd t         t        t        ft        t        t
        ffD ]3  \  }}}t        |ddd¬	«      }t         ||j                  «      dd¬«       Œ5 y
)z#Invoke secant through root_scalar()r\   r˜   r   rÐ   ©rP   r:   r;   ra   r   rÒ   rÓ   rØ   NrÙ   rÚ   s        r    Útest_secant_by_namezTestNewton.test_secant_by_name  s¼   € ä¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ˜A h°1¸ÀÔFˆAÜ™A˜aŸf™f›I q¨tÕ4Ü˜A h°1¸ÀÔFˆAÜ™A˜aŸf™f›I q¨tÖ4ð	 @ô
  ¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ˜A h°1¸4Ô@ˆAÜ™A˜aŸf™f›I q¨tÖ4ñ @r"   c           	      ó¸   — t         t        t        ft        t        t
        ffD ]5  \  }}}t        |dd||d¬«      }t         ||j                  «      dd¬«       Œ7 y)z#Invoke halley through root_scalar()r]   r˜   rÐ   )rP   r:   r^   r_   ra   r   rÒ   NrÙ   rÚ   s        r    Útest_halley_by_namezTestNewton.test_halley_by_name  sR   € ä¤¤tÐ,¬r´4¼Ð.>Ó?‰KˆAˆs�CÜ˜A h°1Ø#&°¸$ô@ˆAä™A˜aŸf™f›I q¨tÖ4ñ @r"   c                 ó,  — d}t        j                  t        |¬«      5  t        t        dt
        dd¬«       d d d «       d}t        j                  t        |¬«      5  t        t        dt        dd¬«       d d d «       y # 1 sw Y   ŒHxY w# 1 sw Y   y xY w)	Nz$fprime2 must be specified for halleyr®   r]   r˜   rÐ   )rP   r^   r:   ra   z#fprime must be specified for halley)rP   r_   r:   ra   )r¶   r·   r¸   r   r!   r%   r)   )rN   Úmessages     r    Útest_root_scalar_failz TestNewton.test_root_scalar_fail!  sg   € Ø8ˆÜ�]‰]œ:¨WÖ5Üœ 8´D¸QÀTÕJ÷ 6à7ˆÜ�]‰]œ:¨WÖ5Üœ 8´T¸aÀdÕK÷ 6Ð5÷ 6Ð5ú÷ 6Ð5ús   žA>ÁB
Á>BÂ
Bc                 óˆ  — d„ }d„ }d„ }t        j                  g d¢«      }t        j                  t        d«      «      dz   dz  }||dd	dd
f}dgdz  }t	        j
                  ||||«      }d}	t        ||	«       t	        j
                  |||||¬«      }t        ||	«       t	        j
                  |||¬«      }t        ||	«       y)ztest newton with arrayc                 óŠ   — |d   | |d   z  z   }|d   |d   t        j                  ||d   z  «      dz
  z  z
  ||d   z  z
  | z
  S )Nr   r˜   r   r   rÓ   rš   r   ©r�   r   ©r   r=   r>   s      r    r!   z(TestNewton.test_array_newton.<locals>.f1,  sW   € Ø�!‘�q˜1˜Q™4‘x‘ˆAØ�Q‘4˜!˜A™$¤"§&¡&¨¨Q¨q©T©Ó"2°SÑ"8Ñ9Ñ9¸AÀÀ!Á¹HÑDÀqÑHÐHr"   c                 ó’   — |d   |d   z  }|d    t        j                  |d   |d   z  | |z  z   «      z  |z  |d   |d   z  z
  dz
  S )Nr˜   rÓ   r   r   r   r   ræ   rç   s      r    r%   z*TestNewton.test_array_newton.<locals>.f1_10  s]   € Ø�!‘�q˜‘t‘ˆAØ�a‘D�5œ2Ÿ6™6 ! A¡$¨¨1©¡+°°A±Ñ"5Ó6Ñ6¸Ñ:¸Q¸q¹TÀAÀaÁD¹[ÑHÈ1ÑLÐLr"   c                 óz   — |d   |d   z  }|d    t        j                  |d   |d   z  | |z  z   «      z  |dz  z  S )Nr˜   rÓ   r   r   ræ   rç   s      r    r)   z*TestNewton.test_array_newton.<locals>.f1_24  sK   € Ø�!‘�q˜‘t‘ˆAØ�a‘D�5œ2Ÿ6™6 ! A¡$¨¨1©¡+°°A±Ñ"5Ó6Ñ6¸¸A¹Ñ=Ð=r"   )
g“ù4O@g�­Nkò@g]0Jû@g]QçÝšt@g~�EO¡5@g$ÇJŠ— ÷?g~5È,ì@gXCÚ­Ø@gÍ®9@@g¬¹’Ó�®@é
   rš   g      @ç•Ö&è.>çü©ñÒMbp?çn‹2d’Ñ?)
gÔ©áË°@g9~¨4bŠ'@g’¹�a©q(@géŽ0Òp@gk"zçò?g€4s³eÂ?gU+ïñF@gw´»Qu%@gd¬6ÿ¯‚)@g)êiÓ!@)r_   ©rD   N)r�   r¡   r   ÚrangerK   r   r   )
rN   r!   r%   r)   Úa0Úa1rD   r:   r   Ú
x_expecteds
             r    Útest_array_newtonzTestNewton.test_array_newton)  sÆ   € ò	Iò	Mò	>ô �X‰Xò 
ó ˆô �f‰f”U˜2“YÓ #Ñ%¨Ñ,ˆØ�B˜˜u b¨'Ð2ˆØˆU�R‰ZˆÜ�L‰L˜˜R  tÓ,ˆð
ˆ
ô 	˜˜:Ô&ä�L‰L˜˜R  t°TÔ:ˆÜ˜˜:Ô&ä�L‰L˜˜R dÔ+ˆÜ˜˜:Õ&r"   c                 ó^  — d„ }d„ }t        j                  dd«      }t        j                  |||¬«      }t	         ||«      d«       t        j
                  d«      }t        j                  |||¬«      }t	         ||«      d«       t        j                  ||«      }t	         ||«      d«       y )Nc                 ó   — | dz   dz   S )Nr   ù              ð?r   r   s    r    r<   z/TestNewton.test_array_newton_complex.<locals>.fQ  s   € Ø�q‘5˜‘8ˆOr"   c                  ó   — y©Nrš   r   r   s    r    r^   z4TestNewton.test_array_newton_complex.<locals>.fprimeT  s   € Ør"   r   rö   )r^   ç        )r�   ÚfullrK   r   r   Úones)rN   r<   r^   Útr   s        r    Útest_array_newton_complexz$TestNewton.test_array_newton_complexP  sŠ   € ò	ò	ô �G‰G�A�r‹NˆÜ�L‰L˜˜A fÔ-ˆÜ™˜!›˜bÔ!ô �G‰G�A‹JˆÜ�L‰L˜˜A fÔ-ˆÜ™˜!›˜bÔ!ä�L‰L˜˜AÓˆÜ™˜!›˜bÕ!r"   c                 ó~   — t        j                  d„ ddgt        j                  ddg«      g¬«      }t	        |d«       y)	z8test secant doesn't continue to iterate zero derivativesc                 ó   — | | z  |d   z
  S )Nr   r   ©r   r=   s     r    r±   z>TestNewton.test_array_secant_active_zero_der.<locals>.<lambda>e  s   €  q¨¡s¨Q¨q©T¢zr"   gË¡E¶ó}@rÓ   é   é   ©r:   rD   )çí¯f~@g      @N)rK   r   r�   r¡   r   ©rN   r   s     r    Ú!test_array_secant_active_zero_derz,TestNewton.test_array_secant_active_zero_derc  s7   € ä�L‰LÑ1°u¸a°jÜ!Ÿx™x¨¨R¨Ó1Ð2ô4ˆä˜Ð3Õ4r"   c                 ó´   — t        j                  d„ dgdz  ddgf¬«      }t        |d«       t        j                  d„ d	gdz  d
dgf¬«      }t        |d«       y )Nc                 ó   — || dz  z
  S r$   r   ©ÚyÚzs     r    r±   z7TestNewton.test_array_newton_integers.<locals>.<lambda>k  ó   €  a¨!¨q©&¢jr"   ç      @r   g      .@g      1@rî   )gÚNO±Þû@r  c                 ó   — || dz  z
  S r$   r   r	  s     r    r±   z7TestNewton.test_array_newton_integers.<locals>.<lambda>o  r  r"   r   é   r  )rK   r   r   r  s     r    Útest_array_newton_integersz%TestNewton.test_array_newton_integersi  sY   € ä�L‰LÑ0°3°%¸!±)Ø $ d˜|˜oô/ˆä˜ÐAÔBä�L‰LÑ0°1°#¸±'À"ÀbÀÀÔLˆÜ˜ÐAÕBr"   c                 óÊ  — t        j                  t        «      5  t        j                  d„ ddgd„ «       d d d «       t        j                  t        «      5  t        j                  d„ ddgd„ d¬«      }t        |j                  d«       |j                  j                  «       sJ ‚|j                  j                  «       rJ ‚	 d d d «       y # 1 sw Y   Œ˜xY w# 1 sw Y   y xY w)	Nc                 ó   — | dz  dz
  S r$   r   ©r
  s    r    r±   z@TestNewton.test_array_newton_zero_der_failures.<locals>.<lambda>u  r²   r"   rù   c                 ó   — d| z  S r$   r   r  s    r    r±   z@TestNewton.test_array_newton_zero_der_failures.<locals>.<lambda>u  s   € ÀÀQÂr"   c                 ó   — | dz  dz
  S r$   r   r  s    r    r±   z@TestNewton.test_array_newton_zero_der_failures.<locals>.<lambda>x  s   € ¨Q°©T°AªXr"   c                 ó   — d| z  S r$   r   r  s    r    r±   z@TestNewton.test_array_newton_zero_der_failures.<locals>.<lambda>y  s   € ¨Q¨qªSr"   Tr«   r   )r¶   ÚwarnsÚRuntimeWarningrK   r   r   rC   Úzero_derÚallrk   Úany)rN   rt   s     r    Ú#test_array_newton_zero_der_failuresz.TestNewton.test_array_newton_zero_der_failuresr  s®   € ä�\‰\œ.Õ)Ü�L‰LÑ+¨b°"¨X±ÔG÷ *ô �\‰\œ.Õ)Ü—l‘lÑ#5¸¸B°xÙ#0¸dôDˆGä˜GŸL™L¨!Ô,Ø×#Ñ#×'Ñ'Ô)Ð)Ð)Ø×(Ñ(×,Ñ,Ô.Ð.Ð.Ð.÷ *Ð)÷ *Ð)ú÷ *Ð)ús   šCÁA,CÃCÃC"c                 óª  — d„ }d„ }d„ }d„ }t        |dd|¬«      }t        |ddd¬«      }t        |j                  |j                  d	¬
«       t        d|j                  z  |j                  «       t        |dd||¬«      }t        |ddd¬«      }t        |j                  |j                  d	¬
«       t        d|j                  z  |j                  «       y )Nc                 ó   — | dz  d| z  z
  dz
  S r   r   r   s    r    r!   z+TestNewton.test_newton_combined.<locals>.f1  s   € Ø˜‘6˜A ™E‘> AÑ%Ð%r"   c                 ó   — d| z  dz
  S r$   r   r   s    r    r%   z-TestNewton.test_newton_combined.<locals>.f1_1�  s   € Ø�q‘5˜1‘9Ðr"   c                 ó   — dd| z  z   S r'   r   r   s    r    r)   z-TestNewton.test_newton_combined.<locals>.f1_2ƒ  s   € Ø˜˜Q™‘;Ðr"   c                 ó0   — | dz  d| z  z
  dz
  d| z  dz
  dfS )Nr   r   r(   r   r   s    r    r,   z8TestNewton.test_newton_combined.<locals>.f1_and_p_and_pp†  s'   € Ø�a‘4˜!˜A™#‘:˜a‘<  1¡ Q¡¨Ð+Ð+r"   r   r˜   )rP   r:   r^   Tç:Œ0âŽyE>rÒ   r   r]   )rP   r:   r^   r_   )rP   r:   r_   )r   r   rC   r   Úfunction_calls)rN   r!   r%   r)   r,   Úsol0Úsols          r    Útest_newton_combinedzTestNewton.test_newton_combined~  s¸   € ò	&ò	ò	ò	,ô ˜2 h°1¸TÔBˆÜ˜/°(¸qÈÔNˆÜ˜Ÿ	™	 3§8¡8°$Õ7Ü�Q�s×)Ñ)Ñ)¨4×+>Ñ+>Ô?ä˜2 h°1¸TÈ4ÔPˆÜ˜/°(¸qÈ$ÔOˆÜ˜Ÿ	™	 3§8¡8°$Õ7Ü�Q�s×)Ñ)Ñ)¨4×+>Ñ+>Õ?r"   c                 ó’  — d}g d¢}t        d«      D �]¥  }dddœ}dt        gdt        ggd | D ]
  \  }}|||<   Œ t        j                  t
        |fdd	i|¤Ž\  }}	t        |	j                  «       t        ||	j                  «       t        |	j                  |	j                  f||   «       |d
k(  r|	j                  |	j                  dz   k  s(J ‚t        |	j                  |dz   |	j                  z  «       |	j                  dz
  }
t        j                  t
        |f|
d	dœ|¤Ž\  }}	t        |	j                   «       t        ||	j                  «       t        |	j                  |
«       |dk(  s�Œ[d|
› d�}t        j                  t        |¬«      5  t        j                  t
        |f|
ddœ|¤Ž\  }}	d d d «       �Œ¨ y # 1 sw Y   �Œ´xY w)Nr˜   ))é   é   )rÓ   rê   )r˜   é	   rÐ   T)r`   rA   r^   r_   rB   Fr   r   )rµ   rB   zFailed to converge after z iterations, value is .*r®   )rï   r%   r)   rK   r   r!   r   rk   r   rC   Ú
iterationsr#  r¶   r·   ÚRuntimeError)rN   Úcapsysr:   Úexpected_countsÚderivsrS   rU   Úvr   rX   ÚitersÚmsgs               r    Útest_newton_full_outputz"TestNewton.test_newton_full_output“  sž  € ð
 ˆÚ3ˆä˜A—hˆFØ!°$Ñ9ˆFØ"¤DÐ)¨I´tÐ+<Ð=¸g¸vÓF‘��1Ø��q’	ð Gô —<‘<¤ BÑ=¨UÐ=°fÑ=‰DˆAˆqÜ�A—K‘KÔ Ü˜˜AŸF™FÔ#Ü˜!Ÿ,™,¨×(8Ñ(8Ð9¸?È6Ñ;RÔSØ˜Š{Ø×'Ñ'¨1¯<©<¸!Ñ+;Ò;Ð;Ð;ä˜Q×-Ñ-°¸±
¸a¿l¹lÑ/JÔKð —L‘L 1Ñ$ˆEÜ—<‘<¤ BÐL°¸EÑLÀVÑL‰DˆAˆqÜ˜Ÿ™�OÔ$Ü˜˜AŸF™FÔ#Ü˜Ÿ™ uÔ-à˜Œ{ð 2°%°Ð8PÐQ�Ü—]‘]¤<°sÖ;Ü Ÿ<™<¬¨BÐS¸ÀDÑSÈFÑS‘D�A�q÷ <Ñ;ñ3 ÷2 <Ñ;ús   Æ"F<Æ<G	c                 ó,  — d„ }d„ }t        j                  t        «      5  t        j                  |d|d¬«       d d d «       t        j
                  t        d¬«      5  t        j                  |d|«       d d d «       y # 1 sw Y   ŒExY w# 1 sw Y   y xY w)Nc                 ó   — | dz  dz
  S )Nr   r(   r   r   s    r    r?   z0TestNewton.test_deriv_zero_warning.<locals>.func¸  s   € Ø˜‘6˜C‘<Ðr"   c                 ó   — d| z  S r$   r   r   s    r    Údfuncz1TestNewton.test_deriv_zero_warning.<locals>.dfuncº  s   € Ø�q‘5ˆLr"   rù   F©rB   zDerivative was zeror®   )r¶   r  r  rK   r   r·   r,  )rN   r?   r7  s      r    Útest_deriv_zero_warningz"TestNewton.test_deriv_zero_warning·  sg   € ò	 ò	ä�\‰\œ.Õ)Ü�L‰L˜˜s E°Õ6÷ *ä�]‰]œ<Ð/DÖEÜ�L‰L˜˜s EÔ*÷ FÐE÷ *Ð)úçEÐEús    A>ÁB
Á>BÂ
Bc                 ó¼   — t        j                  ddg«      }|j                  «       }t        t         j                  |t         j
                  «       t        ||«       y )Nçš™™™™™¹?r˜   )r�   r¡   Úcopyr   r   r   r   )rN   r:   Úx0_copys      r    Útest_newton_does_not_modify_x0z)TestNewton.test_newton_does_not_modify_x0Á  s=   € ä�X‰X�s˜A�hÓˆØ—'‘'“)ˆÜŒr�v‰v�rœ2Ÿ6™6Ô"Ü˜2˜wÕ'r"   c                 óø  — d„ }t        |ddd¬«      }t        |dddd¬«      }t        |dddd	¬
«      d   }t         ||j                  «      dd¬«       |j                  j                  t        «       k(  sJ ‚t         ||j                  «      dd¬«       |j                  j                  t        «       k(  sJ ‚t         ||j                  «      dd¬«       |j                  j                  t        «       k(  sJ ‚|j                  |j                  cxk(  r|j                  k7  sJ ‚ J ‚|j                  |j                  dz
  cxk(  r3|j                  cxk(  r#|j                  cxk7  r|j                  dz  k(  sJ ‚ J ‚y )Nc                 óF   — t        j                  | «      sJ ‚t        | «      S r+   )r�   Úisscalarr!   r   s    r    r<   z+TestNewton.test_gh17570_defaults.<locals>.fÎ  s   € Ü—;‘;˜q”>Ð!�>Ü�a“5ˆLr"   r   r˜   rÐ   rØ   r\   r   rÝ   T)r:   r;   r`   rA   r   r   rÒ   )r   r   r   rC   Úshaperm   r+  r#  )rN   r<   Úres_newton_defaultÚres_secant_defaultÚ
res_secants        r    Útest_gh17570_defaultsz TestNewton.test_gh17570_defaultsÈ  s€  € ò	ô )¨°8ÀÈÔMÐÜ(¨°8ÀÀaØ.2ô4Ðô ˜A !¨¨tÀÔFÀqÑIˆ
ô 	™Ð,×1Ñ1Ó2°A¸DÕAØ!×&Ñ&×,Ñ,´³Ò7Ð7Ð7Ü™Ð,×1Ñ1Ó2°A¸DÕAØ!×&Ñ&×,Ñ,´³Ò7Ð7Ð7Ü™˜*Ÿ/™/Ó*¨A°DÕ9Ø�‰×$Ñ$¬«Ò/Ð/Ð/ð #×'Ñ'Ø—?‘?ô1à%×0Ñ0ò1ð 	2ñ 1ð 	2ð 1ð #×-Ñ-Ø%×4Ñ4°qÑ8ô7à×(Ñ(ô7ð &×0Ñ0ô7ð &×4Ñ4°QÑ6ò	7ð 	8ñ 7ð 	8ñ 7r"   rS   rP   r   c                 ó„   — d„ }t        j                  |fdddœ|¤Ž}|j                  sJ ‚t        |j                  d«       y )Nc                 ó.   — |dk(  sJ ‚|dk(  sJ ‚| |z  |z
  S )Nr˜   r   r   rç   s      r    r<   z'TestNewton.test_args_gh19090.<locals>.fì  s&   € Ø˜’6ˆM�6Ø˜’6ˆM�6Ø˜‘F˜Q‘JÐr"   r˜   )r˜   r   r  r   )r   r   rk   r   rC   )rN   rS   r<   Úress       r    Útest_args_gh19090zTestNewton.test_args_gh19090ê  s?   € ò	 ô
 ×"Ñ" 1ÐB¨°ÑB¸6ÑBˆØ�}Š}Ðˆ}Ü˜Ÿ™ !Õ$r"   r\   c                 ó  — d„ }t        j                  |d|¬«      }|j                  sJ ‚t        t	        |j
                  «      d«       |j
                  j                  t        j                  t        j                  «      k(  sJ ‚y )Nc                 ó   — | dz  dz
  S )Nr³   r   r   r   s    r    r<   z)TestNewton.test_int_x0_gh19280.<locals>.fú  s   € à�b‘5˜1‘9Ðr"   r   )r:   rP   gÍ;fž æ?)	r   r   rk   r   ÚabsrC   Údtyper�   Úfloat64)rN   rP   r<   rI  s       r    Útest_int_x0_gh19280zTestNewton.test_int_x0_gh19280õ  s^   € ò
	ô ×"Ñ" 1¨°6Ô:ˆØ�}Š}Ðˆ}Üœ˜CŸH™H› wÔ/Ø�x‰x�~‰~¤§¡¬"¯*©*Ó!5Ò5Ð5Ñ5r"   c                 óÎ  — t        j                  t        d¬«      5  t        j                  t
        dd¬«       d d d «       t        j                  t        d¬«      5  t        j                  t
        ddd¬	«       d d d «       t        j                  t        d
¬«      5  t        j                  t
        dd¬«       d d d «       y # 1 sw Y   Œ‹xY w# 1 sw Y   ŒVxY w# 1 sw Y   y xY w)Nztol too smallr®   r˜   ç�íµ ÷Æ°¾rÑ   zmaxiter must be greater than 0rÐ   iÎÿÿÿ)r`   rµ   zx1 and x0 must be different)r;   )r¶   r·   r¸   rK   r   r!   rº   s    r    Útest_newton_special_parametersz)TestNewton.test_newton_special_parameters  s—   € ô �]‰]œ:¨_Ö=Ü�L‰Lœ˜Q EÕ*÷ >ô �]‰]œ:Ð-MÖNÜ�L‰Lœ˜Q D°#Õ6÷ Oô �]‰]œ:Ð-JÖLÜ�L‰Lœ˜Q 1Õ%÷ MÐL÷ >Ð=ú÷ OÐNú÷ MÐLús#   œCÁCÂCÃCÃCÃC$N)rŒ   r�   rŽ   rÌ   rÎ   rÖ   rÛ   rÞ   rà   rã   ró   rý   r  r  r  r&  r3  r9  r>  rF  r¶   r¼   r½   rH   rJ  rP  rS  r   r"   r    rÃ   rÃ   ê   sÁ   „ òEòEò	0ò5ò	5ò5òLò%'òN"ò&5òCò
/ò@ò*"TòH+ò(ò 8ðD ‡[�[×Ñ˜X©«°¸8Ð0DÐ'EÓFñ%ó Gð%ð ‡[�[×Ñ˜X¨°(Ð';Ó<ñ6ó =ð6ó
&r"   rÃ   c            	      óÆ   ‡— dŠˆfd„} t         j                  t         j                  g}t        x}}|D ],  } || dd||¬«      }t	        ‰|||d|j
                  › �¬«       Œ. y )Nr;  c                 ó   •— | ‰z
  S r+   r   ©r   rC   s    €r    r<   ztest_gh_5555.<locals>.f  ó   ø€ Ø�4‰xˆr"   ç    „×—Áç    ÐcArd   zmethod )re   rb   Úerr_msg)rK   rÀ   r¨   ÚTOLr   rŒ   )r<   Úmethodsra   rb   rP   rI  rC   s         @r    Útest_gh_5555r]    sf   ø€ Ø€Dôô �|‰|œUŸ\™\Ð*€GÜÐ€Dˆ4ÛˆÙ�Q˜˜c¨°4Ô8ˆÜ˜˜c¨°4Ø")¨&¯/©/Ð):Ð ;ö	=ñ r"   c                  ó¦   — d„ } d}dt         z  }t        j                  t        j                  g}|D ]  } || dd||¬«      }t	        d|||¬«       Œ  y )	Nc                 ó   — | dk  ry| dz
  S )Nr—   gš™™™™™¹¿ç333333ã?r   r   s    r    r<   ztest_gh_5557.<locals>.f(  s   € ØˆsŠ7Øà�s‘7ˆNr"   gR¸…ëQà?r   r   r   rd   r`  r›   )Ú
_FLOAT_EPSrK   r¹   Úbrenthr   )r<   re   rb   r\  rP   rI  s         r    Útest_gh_5557rc    sS   € òð €DØŒz‰>€DÜ�|‰|œUŸ\™\Ð*€GÛˆÙ�Q˜˜1 4¨dÔ3ˆÜ˜˜S t°$Ö7ñ r"   c                  óÎ   ‡— d} d}| |fD ]Y  \  }}}t        j                  |«      Št        j                  t        j                  fD ]  } |ˆfd„||«      }t        ||«       Œ Œ[ y )N)g      |Àg     àuÀg      yÀ)g     àu@g      |@g      y@c                 ó4   •— t        j                  | «      ‰z
  S r+   ræ   )r   r|   s    €r    r±   z9test_brent_underflow_in_root_bracketing.<locals>.<lambda>A  s   ø€ ¤2§6¡6¨!£9¨Q¢;r"   )r�   r   rK   rb  r¹   r   )Úunderflow_scenarioÚoverflow_scenarior=   r>   rC   rP   rI  r|   s          @r    Ú'test_brent_underflow_in_root_bracketingrh  6  sd   ø€ ð
 2ÐØ-Ðà)Ð+<Ó=‰
ˆˆ1ˆdÜ�F‰F�4‹LˆÜ—|‘|¤U§\¡\Ó2ˆFÙÓ.°°1Ó5ˆCÜ˜D #Õ&ñ 3ñ >r"   c                   óF   — e Zd Z ej                  ddddd¬«      Zd„ Zd„ Zy	)
ÚTestRootResultsrš   é,   é.   r   r   )rC   r+  r#  ÚflagrP   c                 óF   — d}t        t        | j                  «      |«       y )Nz…      converged: True
           flag: converged
 function_calls: 46
     iterations: 44
           root: 1.0
         method: newton)r   ÚreprrX   )rN   Úexpected_reprs     r    Ú	test_reprzTestRootResults.test_reprI  s   € ðIˆô 	”T˜$Ÿ&™&“\ =Õ1r"   c                 ó<   — t        | j                  t        «      sJ ‚y r+   )Ú
isinstancerX   r   rº   s    r    Ú	test_typezTestRootResults.test_typeO  s   € Ü˜$Ÿ&™&¤.Ô1Ð1Ñ1r"   N)rŒ   r�   rŽ   rK   rL   rX   rq  rt  r   r"   r    rj  rj  E  s)   „ Øˆ×Ñ˜s¨rÀ"È1Ø!)ô	+€Aò2ó2r"   rj  c                  ó  — d„ } d„ }d„ }t        dd«      }d}t        j                  | ||||d¬«      }t         | |g|¢­Ž d	d¬
«       |gdz  }d}t        j                  | ||||d¬«      }t         | |g|¢­Ž d	d¬
«       y)z&Test Halley's works with complex rootsc                 ó6   — |d   | dz  z  |d   | z  z   |d   z   S )Nr   r   r   r   r   s     r    r<   ztest_complex_halley.<locals>.fU  s*   € Ø�‰t�a˜‘d‰{˜Q˜q™T A™XÑ%¨¨!©Ñ,Ð,r"   c                 ó$   — d|d   z  | z  |d   z   S )Nr   r   r   r   r   s     r    rÔ   z test_complex_halley.<locals>.f_1X  s   € Ø�1�Q‘4‰x˜!‰|˜a ™dÑ"Ð"r"   c                 óX   — d|d   z  }	 t        | «      }|g|z  S # t        $ r |cY S w xY w)Nr   r   )rh   Ú	TypeError)r   r=   ÚretvalÚsizes       r    rÕ   z test_complex_halley.<locals>.f_2[  sA   € Ø�Q�q‘T‘ˆð	#Ü�q“6ˆDð �8˜d‘?Ð"øô ò 	ØŠMð	ús   Š ›)¨)rš   r(   )r(   g      @r  rÐ   )rD   r^   r_   r`   r   rÒ   rê   N)rÈ   rK   r   r   )r<   rÔ   rÕ   r  Úcoeffsr
  s         r    Útest_complex_halleyr}  S  sŒ   € ò-ò#ò#ô 	��SÓ€AØ€FÜ�‰�Q˜ ¨s¸CÀTÔJ€Aä‘A�a�M˜&’M 1¨4Õ0Ø	
ˆˆb‰€AØ€FÜ�‰�Q˜ ¨s¸CÀTÔJ€AÜ‘A�a�M˜&’M 1¨4Ö0r"   c                 ó  — t        j                  t        «      j                  dz  }d|z
  d|z   z  }t	        j
                  «       5  t	        j                  ddt        «       t        j                  d„ |gdz  ¬«      }d	d	d	«       t        d
gdz  «       d}t	        j
                  «       5  t	        j                  ddt        «       t        j                  d„ |d¬«      }d	d	d	«       t        |d«       t        j                  t        d¬«      5  t        j                  d„ |d¬«      }d	d	d	«       d}t	        j
                  «       5  t	        j                  ddt        «       t        j                  d„ |d¬«      }d	d	d	«       t        |d«       t        j                  t        d¬«      5  t        j                  d„ |d¬«      }d	d	d	«       y	# 1 sw Y   �ŒSxY w# 1 sw Y   ŒüxY w# 1 sw Y   Œ¿xY w# 1 sw Y   ŒxxY w# 1 sw Y   y	xY w)zBTest secant method with a non-zero dp, but an infinite newton stepg…ëQ¸Õ?g      i@r(   ÚignorezRMS ofc                 ó   — | dz
  dz  S )Ng      Y@r   r   r  s    r    r±   z%test_zero_der_nz_dp.<locals>.<lambda>|  s   €  A¨¡I°¢>r"   rê   ©r:   Néd   g.Ð—K.ÿï?úTolerance ofc                 ó   — | dz
  dz  S ©Nrš   r   r   r  s    r    r±   z%test_zero_der_nz_dp.<locals>.<lambda>‚  ó   €  A¨¡G°¢>r"   F)r:   rB   r   r®   c                 ó   — | dz
  dz  S r…  r   r  s    r    r±   z%test_zero_der_nz_dp.<locals>.<lambda>…  r†  r"   Tg.Ð—K.ÿï¿c                 ó   — | dz   dz  S r…  r   r  s    r    r±   z%test_zero_der_nz_dp.<locals>.<lambda>‰  r†  r"   rE   c                 ó   — | dz   dz  S r…  r   r  s    r    r±   z%test_zero_der_nz_dp.<locals>.<lambda>Œ  r†  r"   )r�   r   r�   r‘   ÚwarningsÚcatch_warningsÚfilterwarningsr  rK   r   r   r¶   r·   r,  )r-  ÚdxÚp0r   s       r    Útest_zero_der_nz_dpr�  o  s†  € ô 
�‰”%‹×	Ñ	 Ñ	$€Bð �"‰*˜˜r™Ñ	"€BÜ	×	 Ñ	 Õ	"Ü×Ñ ¨(´NÔCÜ�L‰LÑ1°r°d¸R±iÔ@ˆ÷ 
#ô �A˜�u˜r‘zÔ"à	$€BÜ	×	 Ñ	 Õ	"Ü×Ñ ¨.¼.ÔIÜ�L‰LÑ1°b¸uÔEˆ÷ 
#ô �A�qÔÜ	�‰”|¨>Ö	:Ü�L‰LÑ1°b¸tÔDˆ÷ 
;à	%€BÜ	×	 Ñ	 Õ	"Ü×Ñ ¨.¼.ÔIÜ�L‰LÑ1°b¸uÔEˆ÷ 
#ô �A�rÔÜ	�‰”|¨>Ö	:Ü�L‰LÑ1°b¸tÔDˆ÷ 
;Ð	:÷# 
#Ñ	"ú÷ 
#Ð	"ú÷ 
;Ð	:ú÷ 
#Ð	"ú÷ 
;Ð	:ús<   Á8GÂ,5GÄG(Å5G4Æ,H ÇGÇG%Ç(G1Ç4G=È H	c                  ó¨  ‡— d} dŠd}d}d}||z  | z  |z  }ˆfd„}t        j                  t        «      5  t        j                  |g d¢d|| gd	¬
«      }|j
                  j                  «       rJ ‚	 ddd«       t        j                  t        «      5  t        j                  |dgdz  d|| gd	¬
«      }ddd«       y# 1 sw Y   ŒLxY w# 1 sw Y   yxY w)z(Test that array newton fails as expectedr;  ga2U0*©#?gÍÌÌÌÌàŽ@g\âmJôA?g�•C‹lç@c           	      óª   •— dt        j                  | «      z  dt        j                  ‰dz  |z  d|z  t        j                  | «      z  z   «      z  z   S )Nr   r   gš™™™™™@g®Gáz@)r�   r   Úlog10)Údarcy_frictionÚreÚdiaÚ	roughnesss      €r    Úcolebrook_eqnz1test_array_newton_failures.<locals>.colebrook_eqnœ  s[   ø€ Ø”B—G‘G˜NÓ+Ñ+Ø”B—H‘H˜Y¨™_¨sÑ2Ø! B™Y¬¯©°Ó)@Ñ@ñAó Bñ BñBð 	Cr"   )ç{®Gáz„?gš™™™™™É?gˆ×õvÃ–?g333333Ó?r   T)r:   rµ   rD   rA   Nr˜  )	r¶   r  r  rK   r   rk   r  r·   r,  )ÚdiameterÚrhoÚmuÚuÚreynolds_numberr—  r‚   r–  s          @r    Útest_array_newton_failuresrž  �  sÔ   ø€ ð
 €Hà€IØ
€CØ	€BØ€AØ˜A‘g Ñ(¨2Ñ-€OôCô 
�‰”nÕ	%Ü—‘ØÒ7ÀØ! 8Ð,¸$ô
ˆð ×#Ñ#×'Ñ'Ô)Ð)Ð)Ð)÷ 
&ô 
�‰”|Õ	$Ü—‘Ø˜t˜f q™j°!Ø! 8Ð,¸$ô
ˆ÷ 
%Ð	$÷ 
&Ð	%ú÷ 
%Ð	$ús   µ;B<Â!CÂ<CÃCc                  óf  — d„ } t        j                  | d¬«      }t        |dt         j                  t         j                  ¬«       t        j                  | dgdz  ¬«      }t        |dt         j                  t         j                  ¬«       d„ }d„ }t        j                  | d|¬«      }t        |dt         j                  t         j                  ¬«       t        j                  | d||¬	«      }t        |dt         j                  t         j                  ¬«       t        j                  | dgdz  |¬«      }t        |dt         j                  t         j                  ¬«       t        j                  | dgdz  ||¬	«      }t        |dt         j                  t         j                  ¬«       t        j                  | d
|¬«      }t        |dt         j                  t         j                  ¬«       t        j                  | d
gdz  |¬«      }t        |dt         j                  t         j                  ¬«       y)z@Test that Newton or Halley don't warn if zero derivative at rootc                 ó   — | dz  | dz  z
  S ©Nr˜   r   r   r   s    r    Úf_zeroder_rootz9test_gh8904_zeroder_at_root_fails.<locals>.f_zeroder_rootµ  s   € Ø�!‰t�a˜‘d‰{Ðr"   r   r�  r›   rê   c                 ó   — d| dz  z  d| z  z
  S r¡  r   r   s    r    Úfderz/test_gh8904_zeroder_at_root_fails.<locals>.fderÀ  s   € Ø�1�a‘4‰x˜!˜a™%ÑÐr"   c                 ó   — d| z  dz
  S )Nr(  r   r   r   s    r    Úfder2z0test_gh8904_zeroder_at_root_fails.<locals>.fder2Ä  ó   € Ø�‰s�Q‰wˆr"   )r:   r^   )r:   r^   r_   r—   N)rK   r   r   Ú_xtolÚ_rtol)r¢  rX   r¤  r¦  s       r    Ú!test_gh8904_zeroder_at_root_failsrª  ±  su  € òô 	�‰�^¨Ô*€AÜ�A�qœuŸ{™{´·±Õ=ä�‰�^¨¨¨B©Ô/€AÜ�A�qœuŸ{™{´·±Õ=ò òô 	�‰�^¨°$Ô7€AÜ�A�qœuŸ{™{´·±Õ=Ü�‰�^¨°$Ø"ô	$€Aä�A�qœuŸ{™{´·±Õ=ä�‰�^¨¨¨B©°tÔ<€AÜ�A�qœuŸ{™{´·±Õ=Ü�‰�^¨¨¨B©°tØ"ô	$€Aä�A�qœuŸ{™{´·±Õ=ô 	�‰�^¨°DÔ9€AÜ�A�qœuŸ{™{´·±Õ=ä�‰�^¨¨¨b©¸Ô>€AÜ�A�qœuŸ{™{´·±Ö=r"   c                  ó®   ‡— dŠˆfd„} ˆfd„}ˆfd„}d}t        | ||d¬«      \  }}|j                  sJ ‚t        | |||d¬«      \  }}|j                  sJ ‚y	)
zzTest that Halley's method realizes that the 2nd order adjustment
    is too big and drops off to the 1st order adjustment.r*  c                 óB   •— t        | d‰z  «      t        ‰d‰z  «      z
  S rø   ©r	   ©r   Úns    €r    r<   ztest_gh_8881.<locals>.fæ  s"   ø€ Ü�Q˜˜A™‹¤ q¨#¨a©%£Ñ0Ð0r"   c                 ó.   •— t        | d‰z
  ‰z  «      ‰z  S rø   r­  r®  s    €r    Úfpztest_gh_8881.<locals>.fpé  s   ø€ Ü�Q˜˜Q™ ™	Ó" 1Ñ$Ð$r"   c                 óL   •— t        | dd‰z  z
  ‰z  «      d‰z  z  d‰z
  z  ‰z  S r…  r­  r®  s    €r    Úfppztest_gh_8881.<locals>.fppì  s3   ø€ Ü�Q˜˜Q˜q™S™ !™Ó$¨¨A©Ñ.°#°a±%Ñ8¸Ñ:Ð:r"   r;  T)r^   rA   ©r^   r_   rA   N)r   rk   )r<   r±  r³  r:   ÚrtrX   r¯  s         @r    Útest_gh_8881r¶  á  sf   ø€ ð 	
€Aô1ô%ô;ð 
€Bô �1�b °Ô6�E€BˆØ�;Š;Ðˆ;ô �1�b ¨S¸dÔC�E€BˆØ�;Š;Ð‰;r"   c                  óô  — d„ } d„ }d„ }t        j                  dgt         j                  ¬«      }t        | |||d¬«      \  }}|j                  sJ ‚t        j                  ddgt         j                  ¬«      }t        j                  t        «      5  t        j                  | |||d¬«      }d	d	d	«       d
„ }t        j                  | |||d¬«      }|j                  j                  «       sJ ‚y	# 1 sw Y   ŒCxY w)z_
    Test that shape is preserved for array inputs even if fprime or fprime2 is
    scalar
    c                 ó   — | dz  S r$   r   r   s    r    r<   z,test_gh_9608_preserve_array_shape.<locals>.f   s   € Ø�!‰tˆr"   c                 ó   — d| z  S r$   r   r   s    r    r±  z-test_gh_9608_preserve_array_shape.<locals>.fp  ó   € Ø�1‰uˆr"   c                  ó   — yr$   r   r   s    r    r³  z.test_gh_9608_preserve_array_shape.<locals>.fpp  s   € Ør"   r³   ©rN  Tr´  éýÿÿÿNc                 ót   — t        j                  t        j                  | «      dt         j                  ¬«      S )Nr   r¼  )r�   rú   rB  Úfloat32r   s    r    Ú	fpp_arrayz4test_gh_9608_preserve_array_shape.<locals>.fpp_array  s!   € Ü�w‰w”r—x‘x “{ A¬R¯Z©ZÔ8Ð8r"   )
r�   r¡   r¿  r   rk   r¶   r·   Ú
IndexErrorrK   r  )	r<   r±  r³  r:   rµ  rX   Úx0_arrayr‚   rÀ  s	            r    Ú!test_gh_9608_preserve_array_shaperÃ  û  sÐ   € ò
òòô 
�‰�2�$œbŸj™jÔ	)€BÜ�1�b ¨S¸dÔC�E€BˆØ�;Š;Ðˆ;ä�x‰x˜˜R˜¬¯
©
Ô3€Hä	�‰”zÕ	"Ü—‘Øˆx ¨C¸Tô
ˆ÷ 
#ò
9ô �\‰\Ø	ˆ8˜B¨	¸tô€Fð ×Ñ×ÑÔ!Ð!Ñ!÷ 
#Ð	"ús   ÂC.Ã.C7z maximum_iterations,flag_expectedrê   r‚  c                 ó
  — t        j                  d„ ddddd| dd¬«	      }|d	   j                  |k(  sJ ‚|t         j                  k(  r|d	   j                  | k(  sJ ‚y
|t         j
                  k(  r|d	   j                  | k  sJ ‚y
y
)z]
    Test that if the maximum iterations is exceeded that the flag is not
    converged.
    c                 ó*   — d| z  dz
  | z  dz   | z  dz
  S )Ng333333ó?gffffff@g333333@g      @r   r   s    r    r±   z6test_gh9254_flag_if_maxiter_exceeded.<locals>.<lambda>&  s   € �C˜‘E˜C‘K ‘? SÑ(¨!Ñ+¨cÒ1r"   iâÿÿÿé   r   rÐ   TFr@   r   N)rK   r¹   rm  ÚCONVERRr+  Ú	CONVERGED)Úmaximum_iterationsÚflag_expectedr‚   s      r    Ú$test_gh9254_flag_if_maxiter_exceededrË    s�   € ô �\‰\Ù1ØˆR��T˜4Ð!3Ø˜uô&€Fð �!‰9�>‰>˜]Ò*Ð*Ð*ØœŸ™Ò%à�a‰y×#Ñ#Ð'9Ò9Ð9Ñ9Ø	œ%Ÿ/™/Ò	)à�a‰y×#Ñ#Ð&8Ò8Ð8Ñ8ð 
*r"   c                  óš  — d„ } d„ }t        j                  t        «      5  t        j                  | d|d¬«       ddd«       t        j
                  t        d¬«      5  t        j                  | d|«       ddd«       t        j                  | t        d	d	«      |«      }t        |t        d
d«      «       y# 1 sw Y   Œ|xY w# 1 sw Y   ŒMxY w)zBTest that if disp is true then zero derivative raises RuntimeErrorc                 ó   — | | z  dz   S ©Nr   r   r   s    r    r<   z/test_gh9551_raise_error_if_disp_true.<locals>.f5  r§  r"   c                 ó   — d| z  S r$   r   r   s    r    Úf_pz1test_gh9551_raise_error_if_disp_true.<locals>.f_p8  s   € Ø�‰sˆ
r"   rš   Fr8  NzY^Derivative was zero\. Failed to converge after \d+ iterations, value is [+-]?\d*\.\d+\.$r®   g      $@rù   )	r¶   r  r  rK   r   r·   r,  rÈ   r   )r<   rÐ  rC   s      r    Ú$test_gh9551_raise_error_if_disp_truerÑ  2  sœ   € òòô 
�‰”nÕ	%Ü�‰�Q˜˜S uÕ-÷ 
&ä	�‰Üð/ö
0ô 	�‰�Q˜˜SÔ!÷	
0ô
 �<‰<˜œ7 4¨Ó.°Ó4€DÜ�Dœ' # sÓ+Õ,÷ 
&Ð	%ú÷
0ð 
0ús    B5ÁCÂ5B>ÃC
Úsolver_name)r¹   rb  rÀ   r¨   rÁ   c                 óž   — d„ }t        t        | «      }t        j                  t        d¬«      5   ||dd«       d d d «       y # 1 sw Y   y xY w)Nc                 ó"   — t         j                  S r+   )r�   r
   r   s    r    r<   ztest_gh3089_8394.<locals>.fK  s   € Ü�v‰vˆr"   zThe function value at x...r®   r   r   )ÚgetattrrK   r¶   r·   r¸   )rÒ  r<   Úsolvers      r    Útest_gh3089_8394r×  F  s<   € ò
ô ”U˜KÓ(€FÜ	�‰”zÐ)EÖ	FÙˆq�!�QŒ÷ 
G×	FÑ	Fús   ¯AÁArP   c                 ó  ‡— ˆfd„Šd‰_         t        ‰d| ¬«      }|j                  du sJ ‚|j                  j	                  d«      sJ ‚|j
                  ‰j                   k(  sJ ‚t        |j                  «      |j                  v sJ ‚y )Nc                 óN   •— ‰xj                   dz  c_         t        j                  S rÎ  )Ú_countr�   r
   ©r   r<   s    €r    r<   ztest_gh18171.<locals>.fY  s   ø€ Ø	�Š�A‰�Ü�v‰vˆr"   r   )r   r   )r™   rP   FzThe function value at x)rÚ  r   rk   rm  Ú
startswithr#  ÚstrrC   )rP   rI  r<   s     @r    Útest_gh18171rÞ  S  s|   ø€ ôð €A„Hä
�a °Ô
7€CØ�=‰=˜EÑ!Ð!Ð!Ø�8‰8×ÑÐ8Ô9Ð9Ð9Ø×Ñ §¡Ò)Ð)Ð)Üˆs�x‰x‹=˜CŸH™HÑ$Ð$Ñ$r"   Úrs_interfaceTFc                 óØ   ‡— |rd„ nt        t        | «      }ˆfd„Šd‰_         |‰ddd¬«      }|r|j                  ‰j                  k(  sJ ‚y |d   j                  ‰j                  k(  sJ ‚y )Nc                 ó    — t        | ||f¬«      S ©N)r™   ©r   ©r<   r=   r>   rS   s       r    r±   z%test_function_calls.<locals>.<lambda>k  ó   € ¬°QÀÀAÀÕ)Gr"   c                 ó>   •— ‰xj                   dz  c_         | dz  dz
  S )Nr   r   )ÚcallsrÛ  s    €r    r<   ztest_function_calls.<locals>.fn  s   ø€ Ø	�Š�1‰�Ø�!‰t�a‰xˆr"   r   rê   Tr«   r   )rÕ  rK   rç  r#  )rÒ  rß  rÖ  rI  r<   s       @r    Útest_function_callsrè  e  sr   ø€ ñ ò HÜ#*¬5°+Ó#>ð ôð €A„Gá
��A�r tÔ
,€CáØ×!Ñ! Q§W¡WÒ,Ð,Ñ,à�1‰v×$Ñ$¨¯©Ò/Ð/Ñ/r"   c                  óŠ  — d„ } t        j                  t        d¬«      5  t        | ddd¬«      }ddd«       j                  rJ ‚|j
                  d	k(  sJ ‚t        j                  t        d¬«      5  t        | ddd
d¬«      d   }ddd«       |j                  rJ ‚|j
                  d	k(  sJ ‚y# 1 sw Y   ŒxY w# 1 sw Y   Œ5xY w)zDTest that zero slope with secant method results in a converged=Falsec                 ó@   — | t        j                  |  | z  «      z  dz
  S )NgìQ¸…ë±?ræ   r   s    r    Úlhsz*test_gh_14486_converged_false.<locals>.lhs}  s    € Ø”2—6‘6˜1˜"˜Q™$“<Ñ $Ñ&Ð&r"   rƒ  r®   r\   g333333Ã¿rš   )rP   r:   r;   Nzconvergence errorFT)r:   r;   rB   rA   r   )r¶   r  r  r   rk   rm  r   )rë  rI  s     r    Útest_gh_14486_converged_falserì  {  s¨   € ò'ô 
�‰”n¨NÖ	;Ü˜# h°5¸SÔAˆ÷ 
<à�}Š}ÐÐØ�8‰8Ð*Ò*Ð*Ð*ä	�‰”n¨NÖ	;Ü�S˜U s°ÀDÔIÈ!ÑLˆ÷ 
<à�}Š}ÐÐØ�8‰8Ð*Ò*Ð*Ñ*÷ 
<Ð	;ú÷
 
<Ð	;ús   ŸB-Á1B9Â-B6Â9Cc                 óª  — |rd„ nt        t        | «      }d„ }t        j                  t        d¬«      5   ||ddd¬«       d d d «        ||dd	d¬«      }|r|n|d
   }|j
                  sJ ‚t        |j                  dd¬«        ||dt        d«      d¬«      }|r|n|d
   }|j
                  sJ ‚t        |j                  dd¬«       y # 1 sw Y   Œ‰xY w)Nc                 ó    — t        | ||f¬«      S râ  rã  rä  s       r    r±   ztest_gh5584.<locals>.<lambda>‘  rå  r"   c                 ó   — d| z  S )Ng¬÷N’~hr   r   s    r    r<   ztest_gh5584.<locals>.f”  s   € Ø�a‰xˆr"   z...must have different signsr®   g      à¿gš™™™™™Ù¿Tr«   gš™™™™™Ù?r   r   r"  rÒ   z-0.0)	rÕ  rK   r¶   r·   r¸   rk   r   rC   r�   )rÒ  rß  rÖ  r<   rI  s        r    Útest_gh5584rð  ‹  sÊ   € ñ ò HÜ#*¬5°+Ó#>ð òô 
�‰”zÐ)GÖ	HÙˆq�$˜¨$Õ/÷ 
Iñ ��D˜#¨4Ô
0€CÙ‰# 3 q¡6€CØ�=Š=Ðˆ=Ü�C—H‘H˜a dÕ+ñ ��Dœ% ›-°TÔ
:€CÙ‰# 3 q¡6€CØ�=Š=Ðˆ=Ü�C—H‘H˜a dÖ+÷ 
IÐ	Hús   ´C	Ã	Cc            	      ó¬  — d„ } d}t        j                  t        «      j                  }t	        j
                  | dd|d|z  ¬«      } | |«      }t	        j
                  | dd|d|z  ¬«      } | |«      }||k  sJ ‚d|d	z  d
›d|d
›d�}t        j                  t        |¬«      5  t	        j
                  | dd||d	z  ¬«       d d d «       y # 1 sw Y   y xY w)Nc                 ó   — | dz  d| z  z
  dz
  S )Nr˜   r   rÓ   r   r   s    r    r<   ztest_gh13407.<locals>.f®  s   € Ø�!‰t�a˜‘c‰z˜A‰~Ðr"   gYóøÂn¥g»½×Ùß|Û=g    _ Br   rd   r   zrtol too small \(r   Úgz < z\)r®   )	r�   r   r�   r‘   rK   rÁ   r¶   r·   r¸   )r<   ra   r‘   r;   r!   Úx4Úf4râ   s           r    Útest_gh13407rö  ¨  sÂ   € òð €DÜ
�(‰(”5‹/×
Ñ
€CÜ	�‰�q˜% ¨D°q¸±uÔ	=€BÙ	
ˆ2‹€BÜ	�‰�q˜% ¨D°q¸±uÔ	=€BÙ	
ˆ2‹€BØ�Š7€Nˆ7ð # 3 q¡5¨ )¨3¨s°1¨g°RÐ8€GÜ	�‰”z¨Ö	1Ü�‰�a˜ ¨4°c¸!±eÕ<÷ 
2×	1Ñ	1ús   Â#C
Ã
Cc                  óŒ   — d„ } t        | d«      }t        |dd¬«       t        | ddd¬«      }t        |j                  dd¬«       y )	Nc                 ó   — | dz
  S rÎ  r   )r  s    r    r<   z&test_newton_complex_gh10103.<locals>.fÃ  rº  r"   y      ð?      ð?r   gê-�™—q=rÒ   y       @      ø?r\   )r:   r;   rP   )r   r   r   rC   )r<   rI  s     r    Útest_newton_complex_gh10103rù  ¿  s>   € òä
��D‹/€CÜ�C˜ Õ'ä
�a˜D V°HÔ
=€CÜ�C—H‘H˜a eÖ,r"   c                 óˆ   — d}t        j                  t        |¬«      5   | t        ddd¬«       d d d «       y # 1 sw Y   y xY w)Nz2'float' object cannot be interpreted as an integerr®   rù   rš   gÍÌÌÌÌR@r´   )r¶   r·   ry  r!   )rP   râ   s     r    Útest_maxiter_int_check_gh10236rû  Ì  s2   € ð C€GÜ	�‰”y¨Ö	0ÙŒr�3˜ UÕ+÷ 
1×	0Ñ	0ús	   ž8¸Ac           	      ój  ‡— dŠd}dt        j                  t        «      j                  z  dz  }ˆfd„}t	        j
                  t        d¬«      5   | |dd	|d
t        ¬«       d d d «       t	        j
                  t        d¬«      5   | |dd	|d|¬«       d d d «       y # 1 sw Y   Œ<xY w# 1 sw Y   y xY w)Nr;  )rë   rì   rê   rí   r   r   c                 ó   •— | ‰z
  S r+   r   rV  s    €r    r<   z(test_bisect_special_parameter.<locals>.fÝ  rW  r"   zxtol too smallr®   rX  rY  rR  )rD   ra   rb   zrtol too smallrÐ   )r�   r   r�   r‘   r¶   r·   r¸   r[  )rP   rD   Úrtolbadr<   rC   s       @r    Útest_bisect_special_parameterrÿ  Ô  s’   ø€ ð
 €DØ&€DØ”"—(‘(œ5“/×%Ñ%Ñ%¨Ñ)€Gôô 
�‰”zÐ)9Ö	:Ùˆa��s ¨E¼Õ<÷ 
;ä	�‰”zÐ)9Ö	:Ùˆa��s ¨D°wÕ?÷ 
;Ð	:÷ 
;Ð	:úç	:Ð	:ús   ÁBÂB)ÂB&Â)B2)RrŠ  Ú	functoolsr   r¶   Únumpy.testingr   r   r   r   Únumpyr�   r   r	   r
   r   r   r   r   r   Úscipyr   Úscipy.optimizer   rK   r   r   r   Úscipy._lib._utilr   rf   Úscipy.optimize._tstutilsr   r   r¿   r�   r‘   r[  ra  rÀ   r¨   r¹   rb  rÁ   r¾   Úgradient_methodsÚall_methodsr!   r%   r)   r,   r/   r2   r4   r6   r8   r“   rÃ   r]  rc  rh  rj  r}  r�  rž  rª  r¶  rÃ  r¼   r½   rÇ  rÈ  rË  rÑ  r×  rÞ  rè  rì  rð  rö  rù  rû  rÿ  r   r"   r    Ú<module>r	     sí  ðÛ å ã ÷/ó /ó ß A× AÓ Aå ÷,ó ,õ G÷ Pàˆˆ�‰�‹×ÑÑ€á�5‹\×Ñ€
à—<‘< §¡¨u¯|©|¸U¿\¹\Ø—=‘=ð"€à—L‘L�>Ð ØÐ 0Ñ0€òòòò#ò
òòð
 ñó ð÷^Mñ ^MôBA@Ð.ô A@ôHc&Ð&ô c&òL	=ò8ò0'÷2ñ 2ò1ò8Eò@
òD,>ò`ò4"ðD ‡�×ÑØ&Øˆ%�-‰-Ð˜3 §¡Ð0Ð1ó3ñ9ó3ð9ò$-ð( ‡�×Ñ˜ÚLóNñóNðð ‡�×Ñ˜ÚLóNñ%óNð%ð  ‡�×Ñ˜ÚLóNà‡�×Ñ˜¨$°¨Ó7ñ0ó 8óNð0ò&+ð  ‡�×Ñ˜ÚLóNà‡�×Ñ˜¨$°¨Ó7ñ,ó 8óNð,ò4=ò.
-ð ‡�×Ñ˜ ;Ó/ñ,ó 0ð,ð ‡�×Ñ˜ E§L¡L°%·,±,Ø$)§L¡L°%·,±,ð$@ó Añ@óAñ@r"   