Ë
    1Ò^jñ&  ã                   ó‚   — d dl Z d dlZd dlmZmZmZ d dlmZ d dl	m
Z
mZmZ d dlmZ d dlmZmZ d„ Zd„ Zd	„ Zd
„ Zd„ Zy)é    N)Úassert_equalÚassert_allcloseÚassert_)Úassert_func_equal)Ú
ellip_harmÚellip_harm_2Úellip_normal)ÚIntegrationWarning©ÚsqrtÚpic            	      ó  ‡‡	‡
— d„ Šd„ Š	d„ Š
ˆ	ˆ
fd„} ˆfd„}dt        d«      dd	t        d
«      dddfdt        d«      ddt        d«      dddfg}t        j                  «       5  t        j                  ddt        «       t        j                  ddt        «       |D ]Q  }t        |«      } ||Ž } | |Ž \  }}t        ||dd|¬«       t        t        ||z
  «      dt        |«      z  k  |«       ŒS 	 d d d «       y # 1 sw Y   y xY w)Nc                 óü   — t        | dz  |dz  z  |dz  z  ||z  z  «      }t        | dz  |z
  |dz  |z
  z  ||dz  z
  z  |||z
  z  z  «      }t        | dz  |z
  ||dz  z
  z  ||dz  z
  z  |||z
  z  z  «      }|||fS )Né   ©r   )Úlambda1ÚmuÚnuÚh2Úk2ÚxÚyÚzs           ún/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/special/tests/test_ellip_harm.pyÚchange_coefficientz0test_ellip_potential.<locals>.change_coefficient   s¨   € Ü�˜!‘˜B ™EÑ! " a¡%Ñ'¨¨B©Ñ/Ó0ˆÜ�'˜1‘*˜r‘/ B¨¡E¨B¡JÑ/°°b¸!±e±Ñ<¸bÀ"ÀrÁ'¹lÑKÓLˆÜ�'˜1‘*˜r‘/ B¨¨Q©¡JÑ/°°b¸!±e±Ñ<¸bÀ"ÀrÁ'¹lÑKÓLˆØ�!�Qˆwˆó    c                 ó`   — t        ||||| «      t        |||||«      z  t        |||||«      z  S ©N)r   ©r   r   r   ÚnÚpr   r   s          r   Úsolid_int_ellipz-test_ellip_potential.<locals>.solid_int_ellip   s>   € Ü˜2˜r 1 a¨Ó1´*¸RÀÀQÈÈ2Ó2NÑNÜ˜B  A q¨"Ó-ñ.ð 	/r   c                 ó`   — t        ||||| «      t        |||||«      z  t        |||||«      z  S r   ©r   r   r   s          r   Úsolid_int_ellip2z.test_ellip_potential.<locals>.solid_int_ellip2   sC   € Ü˜R  Q¨¨7Ó3Ü˜R  Q¨¨2Ó.ñ/Ü/9¸"¸bÀ!ÀQÈÓ/KñLð 	Mr   c                 ó8  •— d}d}	t        d«      D ]„  }
d}t        dd|
z  dz   «      D ]D  }|dt        z   ‰||||
|||«       ‰| |||
|||«      z  z  t        |||
|«      d|
z  dz   z  z  z  }ŒF t        |«      d|z  t        |	«      z  k  r |	|fS |	|z  }	Œ† |	fS )Nç:Œ0âŽyE>r   é   é   r   é   gš™™™™™¹?)Úranger   r	   Úabs)r   Úmu1Únu1Úlambda2Úmu2Únu2r   r   ÚtolÚsum1r    Úxsumr!   r"   r%   s                €€r   Ú	summationz'test_ellip_potential.<locals>.summation   sä   ø€ ØˆØˆÜ�r“ò 	ˆAØˆDÜ˜1˜a ™c !™e“_ò <�Ø˜œ2™™¨w¸¸SÀ!ÀQÈÈBÓOÙ& w°°S¸!¸QÀÀBÓGñ Hñ Iä! " b¨!¨QÓ/°°1±°q±Ñ9ñ;ñ <‘ð<ô �4‹y˜3˜s™7¤3 t£9Ñ,Ò,Øà�TˆzÐð �D‰L‰Dð	ð �TˆzÐr   c                 ó”   •—  ‰| ||||«      \  }}	}
 ‰|||||«      \  }}}t        ||z
  dz  ||	z
  dz  z   ||
z
  dz  z   «      }d|z  S )Nr   r)   r   )r   r-   r.   r/   r0   r1   r   r   Úx1Úy1Úz1Úx2Úy2Úz2Úresr   s                  €r   Ú	potentialz'test_ellip_potential.<locals>.potential,   sh   ø€ Ù'¨°°c¸2¸rÓB‰
ˆˆB�Ù'¨°°c¸2¸rÓB‰
ˆˆB�Ü�B˜‘G˜a‘< 2¨¡7¨Q¡,Ñ.°"°r±'¸A±Ñ=Ó>ˆØ�‰uˆr   éx   é   r   é)   é   é   é   é   gš™™™™™	@é   é   g333333@r(   Úignoreú The occurrence of roundoff errorz"The maximum number of subdivisionsr   r'   )ÚatolÚrtolÚerr_msgé
   )	r   ÚwarningsÚcatch_warningsÚfilterwarningsr
   Úreprr   r   r,   )r5   r>   Úptsr!   rL   ÚexactÚresultÚ	last_termr   r"   r%   s           @@@r   Útest_ellip_potentialrV      s  ú€ òò/òMõôð 
Œd�2‹h˜˜2œt B›x¨¨B°Ð3Ø	Œd�2‹h˜˜R¤ b£¨3°°BÐ7ð	€Cô
 
×	 Ñ	 Ó	"ñ FÜ×ÑØÐ8Ô:Lô	Nä×ÑØÐ:Ô<Nô	Pð ò 	FˆAÜ˜1“gˆGÙ˜q�MˆEÙ )¨1 ÑˆF�IÜ˜E 6°¸ÀgÕNÜ”C˜ ™Ó'¨"¬S°«^Ñ*;Ñ;¸WÕEñ	F÷F÷ Fñ Fús   Á$BC;Ã;Dc                  ó¸  ‡‡— d„ } d„ }d„ }d„ }d„ }d„ }d„ }d„ }d	„ }d
„ }	d„ }
d„ }d„ }d„ }d„ }d„ }i d| “d|“d|“d|“d|“d|“d|“d|“d|“d|
“d|	“d|“d|“d|“d|“d |“Šˆfd!„Št        j                  ‰«      Šˆfd"„}t         j                  j                  d#«       t         j                  j	                  d$d%¬&«      }|d%t         j                  j	                  d$|j
                  ¬&«      z   z  }g }t        d'«      D ]j  }t        d%d(|z  d(z   «      D ]S  }|j                  ||t        j                  |j
                  |«      t        j                  |j
                  |«      f«       ŒU Œl t        j                  |«      }t        j                  «       5  t        j                  d)d*t        «       t        t        ||d+¬,«       d d d «       y # 1 sw Y   y xY w)-Nc                 ó   — dt         z  S )Nr*   ©r   ©r   r   s     r   ÚG01ztest_ellip_norm.<locals>.G01G   s   € Ø”‰tˆr   c                 ó&   — dt         z  | z  |z  dz  S ©Nr*   é   rY   rZ   s     r   ÚG11ztest_ellip_norm.<locals>.G11J   s   € Ø”‰t�B‰w�r‰z˜!‰|Ðr   c                 ó,   — dt         z  | z  || z
  z  dz  S r]   rY   rZ   s     r   ÚG12ztest_ellip_norm.<locals>.G12M   ó   € Ø”‰t�B‰w˜˜R™Ñ  Ñ"Ð"r   c                 ó,   — dt         z  |z  || z
  z  dz  S r]   rY   rZ   s     r   ÚG13ztest_ellip_norm.<locals>.G13P   rb   r   c                 óö   — d| dz  |dz  z   z  d| z  |z  | dz  |dz  z   z  z
  d| dz  z  |dz  z  z   t        | dz  |dz  z   | |z  z
  «      d| dz  |dz  z   z  d| z  |z  | |z   z  z   z  z   }dt        z  dz  |z  S )Nr   r*   é   éþÿÿÿr^   rE   é•  r   ©r   r   r=   s      r   ÚG22ztest_ellip_norm.<locals>.G22S   s¬   € Ø�"�a‘%˜"˜a™%‘-Ñ  1 R¡4¨¡7¨B°©E°B¸±E©MÑ#:Ñ:¸Q¸rÀ1¹u¹WÀRÈÁU¹]ÑJÜˆR�‰U�R˜‘U‰]˜R ™UÑ"Ó# R¨¨Q©°°Q±©Ñ%7¸!¸B¹$¸r¹'À2ÈÁ7Ñ:KÑ%KÑLñMˆà”"‰u�S‰y˜‰}Ðr   c                 óö   — d| dz  |dz  z   z  d| z  |z  | dz  |dz  z   z  z
  d| dz  z  |dz  z  z   t        | dz  |dz  z   | |z  z
  «      d| dz  |dz  z   z  d| z  |z  | |z   z  z
  z  z   }dt        z  dz  |z  S )Nr   r*   rf   r^   rE   rh   r   ri   s      r   ÚG21ztest_ellip_norm.<locals>.G21X   s¬   € Ø�"�a‘%˜"˜a™%‘-Ñ  1 R¡4¨¡7¨B°©E°B¸±E©MÑ#:Ñ:¸Q¸rÀ1¹u¹WÀRÈÁU¹]ÑJÜ
ˆr�1‰u�r˜1‘u‰}˜r "™uÑ$Ó
% q¨"¨a©%°"°a±%©-Ñ'8¸1¸R¹4À¹7ÀBÈÁGÑ;LÑ'LÑ
MñNˆà”"‰u�S‰y˜‰}Ðr   c                 ó8   — dt         z  | dz  z  |z  || z
  z  dz  S ©Nr*   r   rC   rY   rZ   s     r   ÚG23ztest_ellip_norm.<locals>.G23]   s&   € Ø”‰t�B˜‘E‰z˜"‰}˜b 2™gÑ& rÑ)Ð)r   c                 ó8   — dt         z  | z  |dz  z  || z
  z  dz  S rn   rY   rZ   s     r   ÚG24ztest_ellip_norm.<locals>.G24`   s&   € Ø”‰t�B‰w�r˜1‘u‰}˜b 2™gÑ& rÑ)Ð)r   c                 ó8   — dt         z  | z  |z  || z
  dz  z  dz  S rn   rY   rZ   s     r   ÚG25ztest_ellip_norm.<locals>.G25c   s&   € Ø”‰t�B‰w�r‰z˜2 ™7 Q™,Ñ& rÑ)Ð)r   c                 ó  — d| dz  |dz  z   z  d| z  |z  | dz  |dz  z   z  z
  d| dz  z  |dz  z  z   t        d| dz  |dz  z   z  d| z  |z  z
  «      d| dz  |dz  z   z  d	| z  |z  | |z   z  z   z  z   }dt        z  d
z  |z  | z  |z  S )NrE   r*   é$   r   é.   é   éøÿÿÿr^   rG   éE3  r   ri   s      r   ÚG32ztest_ellip_norm.<locals>.G32f   sÅ   € Ø�2�q‘5˜2˜q™5‘=Ñ! B r¡E¨"¡H¨b°!©e°b¸!±e©mÑ$<Ñ<¸rÀ"ÀaÁ%¹xÈÈAÉ¹~ÑMÜ
ˆq�"�a‘%˜"˜a™%‘-Ñ  1 R¡4¨¡7Ñ*Ó
+¨R°°Q±¸¸Q¹±Ñ-?Ø
ˆ2‰ˆb‰�"�r‘'Ññ.ñ ñˆð ”"‰u�U‰{˜2‰~˜bÑ  Ñ$Ð$r   c                 ó  — d| dz  |dz  z   z  d| z  |z  | dz  |dz  z   z  z
  d| dz  z  |dz  z  z   t        d| dz  |dz  z   z  d| z  |z  z
  «      d| dz  |dz  z   z  d	| z  |z  | |z   z  z
  z  z   }dt        z  d
z  | z  |z  |z  S )NrE   r*   ru   r   rv   rw   é   r^   rG   ry   r   ri   s      r   ÚG31ztest_ellip_norm.<locals>.G31l   sÅ   € Ø�2�q‘5˜2˜q™5‘=Ñ! B r¡E¨"¡H¨b°!©e°b¸!±e©mÑ$<Ñ<¸rÀ"ÀaÁ%¹xÈÈAÉ¹~ÑMÜ
ˆq�"�a‘%˜"˜a™%‘-Ñ  1 R¡4¨¡7Ñ*Ó
+¨Q°°A±¸¸A¹±Ñ->Ø
ˆ2‰ˆb‰�"�r‘'Ññ.ñ ñˆð ”"‰u�U‰{˜2‰~˜bÑ  Ñ$Ð$r   c                 ó2  — d| dz  z  d|dz  z  z   d| dz  z  |z  z
  d| z  |dz  z  z
  d| dz  z  |dz  z  z   t        | dz  d|dz  z  z   | |z  z
  «      d	| dz  z  d
|dz  z  z
  d| dz  z  |z  z   d| z  |dz  z  z   z  z   }dt        z  dz  | z  || z
  z  |z  S )Nrf   r*   rE   é   r^   é   é"   r   iúÿÿÿr|   é	   é   ry   r   ri   s      r   ÚG34ztest_ellip_norm.<locals>.G34r   sÜ   € Ø��Q‘‰w˜˜B ™E™Ñ! B r¨1¡u¡H¨R¡KÑ/°"°R±%¸¸A¹±+Ñ=ÀÀ2ÀqÁ5ÁÈÈQÉÁÑNÜ
ˆr�1‰u�q˜˜Q™‘w‰  B¡Ñ&Ó
'¨¨B°©E©°A°b¸!±e±GÑ);¸aÀÀAÁ¹gÀb¹jÑ)HØ,.¨r©E°"°a±%©Kñ*8ñ 9ñ9ˆð ”"‰u�U‰{˜2‰~˜r B™wÑ'¨Ñ+Ð+r   c                 ó2  — d| dz  z  d|dz  z  z   d| dz  z  |z  z
  d| z  |dz  z  z
  d| dz  z  |dz  z  z   t        | dz  d|dz  z  z   | |z  z
  «      d| dz  z  d	|dz  z  z   d
| dz  z  |z  z
  d| z  |dz  z  z
  z  z   }dt        z  dz  | z  || z
  z  |z  S )Nrf   r*   rE   r   r^   r€   r�   r   r|   r‚   rƒ   ry   r   ri   s      r   ÚG33ztest_ellip_norm.<locals>.G33x   sÜ   € Ø��Q‘‰w˜˜B ™E™Ñ! B r¨1¡u¡H¨R¡KÑ/°"°R±%¸¸A¹±+Ñ=ÀÀ2ÀqÁ5ÁÈÈQÉÁÑNÜ
ˆr�1‰u�q˜˜Q™‘w‰  B¡Ñ&Ó
'¨¨2¨q©5©°1°R¸±U±7Ñ):¸Q¸rÀ1¹u¹WÀR¹ZÑ)GØ
ˆ2‰ˆb�!‰e‰ñ*ñ ñˆð ”"‰u�U‰{˜2‰~˜r B™wÑ'¨Ñ+Ð+r   c                 ó2  — d| dz  z  d|dz  z  z   d| dz  z  |z  z
  d| z  |dz  z  z
  d| dz  z  |dz  z  z   t        d| dz  z  |dz  z   | |z  z
  «      d	| dz  z  d|dz  z  z
  d
| dz  z  |z  z   d| z  |dz  z  z   z  z   }dt        z  dz  |z  || z
  z  |z  S )NrE   r*   rf   r€   r^   r   r�   r   rx   rƒ   r‚   ry   r   ri   s      r   ÚG36ztest_ellip_norm.<locals>.G36~   sÜ   € Ø�"�a‘%‰x˜!˜B ™E™'Ñ! B r¨1¡u¡H¨R¡KÑ/°"°R±%¸¸A¹±+Ñ=ÀÀ2ÀqÁ5ÁÈÈQÉÁÑNÜ
ˆq��Q‘‰w˜˜Q™‰  B¡Ñ&Ó
'¨¨B°©E©°A°b¸!±e±GÑ);¸bÀÀQÁ¹hÀr¹kÑ)IØ	ˆ"‰ˆR�‰U‰
ñ*ñ ñˆð ”"‰u�U‰{˜2‰~˜r B™wÑ'¨Ñ+Ð+r   c                 ó2  — d| dz  z  d|dz  z  z   d| dz  z  |z  z
  d| z  |dz  z  z
  d| dz  z  |dz  z  z   t        d| dz  z  |dz  z   | |z  z
  «      d	| dz  z  d|dz  z  z   d
| dz  z  |z  z
  d| z  |dz  z  z
  z  z   }dt        z  dz  |z  || z
  z  |z  S )NrE   r*   rf   r€   r^   r   r�   r   r|   rƒ   r‚   ry   r   ri   s      r   ÚG35ztest_ellip_norm.<locals>.G35„   sÜ   € Ø�"�a‘%‰x˜!˜B ™E™'Ñ! B r¨1¡u¡H¨R¡KÑ/°"°R±%¸¸A¹±+Ñ=ÀÀ2ÀqÁ5ÁÈÈQÉÁÑNÜ
ˆq��Q‘‰w˜˜Q™‰  B¡Ñ&Ó
'¨¨2¨q©5©°1°R¸±U±7Ñ):¸RÀÀAÁ¹XÀb¹[Ñ)HØ	ˆ"‰ˆR�‰U‰
ñ*ñ ñˆð ”"‰u�U‰{˜2‰~˜r B™wÑ'¨Ñ+Ð+r   c                 óD   — dt         z  | dz  z  |dz  z  || z
  dz  z  dz  S )Nr*   r   éi   rY   rZ   s     r   ÚG37ztest_ellip_norm.<locals>.G37Š   s/   € Ø”‰t�B˜‘E‰z˜"˜a™%Ñ  b¡¨1¡Ñ,¨SÑ0Ð0r   ©r   r)   ©r)   r)   ©r)   r   ©r)   r^   ©r   r)   ©r   r   ©r   r^   ©r   r*   ©r   é   ©r^   r)   ©r^   r   ©r^   r^   ©r^   r*   ©r^   r—   ©r^   rf   ©r^   rw   c                 ó$   •— ‰| |f   } |||«      S r   © )r    r!   r   r   ÚfuncÚknown_funcss        €r   Ú_ellip_normz$test_ellip_norm.<locals>._ellip_norm’   s   ø€ Ø˜1˜a˜4Ñ ˆÙ�B˜‹|Ðr   c                 ó   •—  ‰||| |«      S r   r    )r   r   r    r!   r£   s       €r   Úellip_normal_knownz+test_ellip_norm.<locals>.ellip_normal_known—   s   ø€ Ù˜1˜a  RÓ(Ð(r   éÒ  ç      à?r)   ©Úsizer*   r   rH   rI   çê-�™—q=©rK   )ÚnpÚ	vectorizeÚrandomÚseedÚparetor©   r+   ÚappendÚfullÚarrayrN   rO   rP   r
   r   r	   )r[   r_   ra   rd   rj   rl   ro   rq   rs   rz   r}   r„   r†   rˆ   rŠ   r�   r¥   r   r   Úpointsr    r!   r£   r¢   s                         @@r   Útest_ellip_normrµ   E   sD  ù€ òòò#ò#òò
ò
*ò*ò*ò%ò%ò,ò,ò,ò,ò1ðG�6˜3ð G ¨ð G¨V°Sð G¸&À#ð GØ˜3ðGØ &¨ðGØ-3°SðGØ:@À#ðGà˜3ðGà &¨ðGà-3°SðGà:@À#ðGð ˜3ðGð !'¨ðGð .4°SðGð ;AÀ#ðG€Kô
ô —,‘,˜{Ó+€Kô)ô ‡I�I‡N�N�4ÔÜ	�‰×	Ñ	˜# AÐ	Ó	&€BØ	ˆq”2—9‘9×#Ñ# C¨b¯g©gÐ#Ó6Ñ6Ñ	7€Bà€FÜ�1‹Xò NˆÜ�q˜!˜A™#˜a™%“ò 	NˆAØ�M‰M˜2˜r¤2§7¡7¨2¯7©7°AÓ#6¼¿¹ÀÇÁÈÓ8KÐLÕMñ	NðNô �X‰X�fÓ€FÜ	×	 Ñ	 Ó	"ñ PÜ×ÑØÐ8Ô:Lô	Näœ,Ð(:¸FÈÕO÷P÷ Pñ Pús   Æ/GÇGc            
      óö  — d„ } t        j                  «       5  t        j                  ddt        «       t	         | ddd«      ddt        d«      z  z  d	d
¬«       t	        t        ddddd«      dd	d
¬«       t	        t        ddddd«      dd	d
¬«       t	        t        ddddd«      dd	d
¬«       t	        t        ddddd«      dd	d
¬«       t	        t        ddddd«      dd	d
¬«       d d d «       y # 1 sw Y   y xY w)Nc           
      óÖ   — t        | |dd|«      dt        | |dd|«      z  z  t        | |dd|«      dt        | |dd|«      z  z  z   t        | |dd|«      dt        | |dd|«      z  z  z   }|S )Nr)   r^   r   r$   )r   r   Úsr=   s       r   ÚI1ztest_ellip_harm_2.<locals>.I1¬   sŒ   € Ü˜B  A q¨!Ó,¨a´*¸RÀÀQÈÈ1Ó2MÑ.MÑNÜ
�r˜2˜q ! QÓ
'¨¬Z¸¸BÀÀ1ÀaÓ-HÑ)HÑ
IñJä�R˜˜Q  1Ó% q¬:°b¸"¸aÀÀAÓ+FÑ'FÑGñHˆð ˆ
r   rH   rI   r—   r|   rM   r)   i$"  gvƒôõ!„>r   )rJ   rK   r   g$Ðâ ;´Q?g¬¾yoVQ?r^   g©Ã<i`Q?r*   gÏ™ar~Q?gTz�LÛ°Q?)rN   rO   rP   r
   r   r   r   )r¹   s    r   Útest_ellip_harm_2rº   ª   s  € òô 
×	 Ñ	 Ó	"ñ -Ü×ÑØÐ8Ô:Lô	Nä™˜1˜a › a¨¬D°Ó,AÑ)AÑ&BØ#¨!õ	-ô 	œ Q¨¨1¨a°Ó4Ð6FØ#¨!õ	-äœ Q¨¨1¨a°Ó4Ð6FØ#¨!õ	-äœ Q¨¨1¨a°Ó4Ð6FØ#¨!õ	-äœ Q¨¨1¨a°Ó4Ð6FØ#¨!õ	-äœ Q¨¨1¨a°Ó4Ð6FØ#¨!õ	-÷-÷ -ñ -ús   ˜CC/Ã/C8c                  ó$  ‡‡— d„ } d„ }d„ }d„ }d„ }d„ }d„ }d„ }d	„ }d
„ }	d„ }
d„ }d„ }d„ }d„ }d„ }t        t        ddddddd«      t        ddddd«      «       i d| “d|“d|“d|“d|“d|“d|“d|“d|“d|	“d |
“d!|“d"|“d#|“d$|“d%|“Šg Šˆˆfd&„}t        j                  j	                  d'«      }|j                  d(d)¬*«      }|d|j                  d(|j                  ¬*«      z   z  }|j                  d(|j                  ¬*«      }g }t        |j                  «      D ]H  }t        d+«      D ]8  }t        dd|z  dz   «      D ]!  }|j                  ||   ||   ||||   f«       Œ# Œ: ŒJ t        j                  |«      }t        t        ||d,¬-«       y ).Nc                  ó   — y)Nr)   r    ©r   r   r¸   s      r   ÚE01ztest_ellip_harm.<locals>.E01Ç   s   € Ør   c                 ó   — |S r   r    r½   s      r   ÚE11ztest_ellip_harm.<locals>.E11Ê   s   € Øˆr   c                 ó6   — t        t        ||z  | z
  «      «      S r   ©r   r,   r½   s      r   ÚE12ztest_ellip_harm.<locals>.E12Í   ó   € Ü”C˜˜!™˜b™“MÓ"Ð"r   c                 ó6   — t        t        ||z  |z
  «      «      S r   rÂ   r½   s      r   ÚE13ztest_ellip_harm.<locals>.E13Ð   rÄ   r   c           
      ól   — ||z  d| |z   t        t        | |z   | |z   z  d| z  |z  z
  «      «      z   z  z
  S ©NgUUUUUUÕ?r^   rÂ   r½   s      r   ÚE21ztest_ellip_harm.<locals>.E21Ó   óC   € Ø�‰s�S˜2 ™7¤d¬3°°R±¸"¸r¹'Ñ/BÀ1ÀRÁ4ÈÁ7Ñ/JÓ+KÓ&LÑLÑMÑMÐMr   c           
      ól   — ||z  d| |z   t        t        | |z   | |z   z  d| z  |z  z
  «      «      z
  z  z
  S rÈ   rÂ   r½   s      r   ÚE22ztest_ellip_harm.<locals>.E22Ö   rÊ   r   c                 ó<   — |t        t        ||z  | z
  «      «      z  S r   rÂ   r½   s      r   ÚE23ztest_ellip_harm.<locals>.E23Ù   ó   € Ø”4œ˜A˜a™C "™H›Ó&Ñ&Ð&r   c                 ó<   — |t        t        ||z  |z
  «      «      z  S r   rÂ   r½   s      r   ÚE24ztest_ellip_harm.<locals>.E24Ü   rÏ   r   c                 óH   — t        t        ||z  | z
  ||z  |z
  z  «      «      S r   rÂ   r½   s      r   ÚE25ztest_ellip_harm.<locals>.E25ß   s'   € Ü”C˜˜1™˜r™ A a¡C¨"¡HÑ-Ó.Ó/Ð/r   c                 ór   — ||z  |z  |dz  d| |z   z  t        d| |z   z  | |z   z  d| z  |z  z
  «      z   z  z
  S ©Nr—   r   r*   rC   r   r½   s      r   ÚE31ztest_ellip_harm.<locals>.E31â   ó[   € Ø�‰s�1‰u˜˜!™˜a  b¡™k¬D°°B¸±G±¸bÀ2¹gÑ1FØ
ˆ2‰ˆb‰ñ2ó -ñ ñ ñ ð 	r   c                 ór   — ||z  |z  |dz  d| |z   z  t        d| |z   z  | |z   z  d| z  |z  z
  «      z
  z  z
  S rÕ   r   r½   s      r   ÚE32ztest_ellip_harm.<locals>.E32æ   r×   r   c                 ó´   — t        t        ||z  | z
  «      «      ||z  d| d|z  z   t        t        | d|z  z   | d|z  z   z  d| z  |z  z
  «      «      z   z  z
  z  S ©Nçš™™™™™É?r   r—   rÂ   r½   s      r   ÚE33ztest_ellip_harm.<locals>.E33ê   ó�   € Ü”C˜˜!™˜b™“MÓ" A a¡C¨#°°Q°r±T±	¼TÄ#ÀrØ	ˆ"‰ñHØ�A�b‘D‰yñGØ˜b™D ™GñG$ó C%ó >&ñ 0&ñ +'ñ %'ñ (ð 	(r   c                 ó´   — t        t        ||z  | z
  «      «      ||z  d| d|z  z   t        t        | d|z  z   | d|z  z   z  d| z  |z  z
  «      «      z
  z  z
  z  S rÛ   rÂ   r½   s      r   ÚE34ztest_ellip_harm.<locals>.E34î   rÞ   r   c                 ó´   — t        t        ||z  |z
  «      «      ||z  dd| z  |z   t        t        d| z  |z   d| z  |z   z  d| z  |z  z
  «      «      z   z  z
  z  S rÛ   rÂ   r½   s      r   ÚE35ztest_ellip_harm.<locals>.E35ò   ó�   € Ü”C˜˜!™˜b™“MÓ" A a¡C¨#°°"±°r±	¼TÄ#ÀqÈÁtØ
ñHØ�‰t�b‰yñGØ˜b™D ™GñG$ó C%ó >&ñ 0&ñ +'ñ %'ñ (ð 	(r   c                 ó´   — t        t        ||z  |z
  «      «      ||z  dd| z  |z   t        t        d| z  |z   d| z  |z   z  d| z  |z  z
  «      «      z
  z  z
  z  S rÛ   rÂ   r½   s      r   ÚE36ztest_ellip_harm.<locals>.E36ö   rã   r   c                 óN   — |t        t        ||z  | z
  ||z  |z
  z  «      «      z  S r   rÂ   r½   s      r   ÚE37ztest_ellip_harm.<locals>.E37ú   s,   € Ø”4œ˜Q˜q™S 2™X¨¨!©¨b©Ñ1Ó2Ó3Ñ3Ð3r   r—   r|   r)   r   g      @rŽ   r�   r�   r‘   r’   r“   r”   r•   r–   r˜   r™   rš   r›   rœ   r�   rž   c           	      ó¾   •— t        | j                  «      D ]C  }‰t        ||   «      t        ||   «      f   }‰j                   || |   ||   ||   «      «       ŒE ‰S r   )r+   r©   Úintr±   )	r   r   r    r!   r¸   Úir¡   r¢   Ú	point_refs	          €€r   Úellip_harm_knownz)test_ellip_harm.<locals>.ellip_harm_known  sd   ø€ Ü�r—w‘w“ò 	7ˆAØ¤ A a¡D£	¬3¨q°©t«9Ð5Ñ6ˆDØ×Ñ™T " Q¡%¨¨A©°°!±Ó5Õ6ð	7ð Ðr   r¦   r§   é   r¨   r*   rª   r«   )r   r   r¬   r®   ÚRandomStater°   r©   r+   r±   r³   r   )r¾   rÀ   rÃ   rÆ   rÉ   rÌ   rÎ   rÑ   rÓ   rÖ   rÙ   rÝ   rà   râ   rå   rç   rì   Úrngr   r   r¸   r´   rê   r    r!   r¢   rë   s                            @@r   Útest_ellip_harmrð   Å   s7  ù€ òòò#ò#òNòNò'ò'ò0òòò(ò(ò(ò(ò4ô ”˜A˜q ! Q¨¨Q°Ó2Üˆq�!�Q˜˜3Óô!ðG�6˜3ð G ¨ð G¨V°Sð G¸&À#ð GØ˜3ðGØ &¨ðGØ-3°SðGØ:@À#ðGà˜3ðGà &¨ðGà-3°SðGà:@À#ðGð ˜3ðGð !'¨ðGð .4°SðGð ;AÀ#ðG€Kð
 €Iõô �)‰)×
Ñ
 Ó
%€CØ	�‰�C˜bˆÓ	!€BØ	ˆQ�—‘˜C b§g¡g�Ó.Ñ.Ñ	/€BØ�
‰
�3˜RŸW™Wˆ
Ó%€AØ€FÜ�2—7‘7‹^ò :ˆÜ�q“ò 	:ˆAÜ˜1˜a ™c !™e“_ò :�Ø—‘˜r !™u b¨¡e¨Q°°1°Q±4Ð8Õ9ñ:ñ	:ð:ô �X‰X�fÓ€FÜ”jÐ"2°FÀÖGr   c                  ód   — d} d| z  dz   }t        dd| |d«      }t        j                  |«      sJ ‚y )Nr*   r   r§   g       @rÜ   )r   r¬   Úisnan)r    r!   rT   s      r   Útest_ellip_harm_invalid_pró     s8   € à	€Aà	ˆ!‰ˆa‰€AÜ˜˜S ! Q¨Ó,€FÜ�8‰8�FÔÐÑr   )rN   Únumpyr¬   Únumpy.testingr   r   r   Úscipy.special._testutilsr   Úscipy.specialr   r   r	   Úscipy.integrater
   r   r   rV   rµ   rº   rð   ró   r    r   r   ú<module>rù      sC   ðó
 ã ß @Ñ @Ý 6ß @Ñ @Ý .ß ò3FòlbPòJ-ò6RHójr   