§
    fŠtjñ&  ã                   ó„   — 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dS )é    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 ]f}t          |¦  «        } ||Ž } | |Ž \  }}t          ||dd|¬¦  «         t          t          ||z
  ¦  «        dt          |¦  «        z  k     |¦  «         Œg	 d d d ¦  «         d S # 1 swxY w Y   d S )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           úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/special/tests/test_ellip_harm.pyÚchange_coefficientz0test_ellip_potential.<locals>.change_coefficient   s±   € Ý�˜!‘˜B ™EÑ! " a¡%Ñ'¨¨B©Ñ/Ñ0Ô0ˆÝ�'˜1‘*˜r‘/ B¨¡E¨B¡JÑ/°°b¸!±e±Ñ<¸bÀ"ÀrÁ'¹lÑKÑLÔLˆÝ�'˜1‘*˜r‘/ B¨¨Q©¡JÑ/°°b¸!±e±Ñ<¸bÀ"ÀrÁ'¹lÑKÑLÔLˆØ�!�Qˆwˆó    c                 óx   — 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   sG   € Ý˜2˜r 1 a¨Ñ1Ô1µ*¸RÀÀQÈÈ2Ñ2NÔ2NÑNÝ˜B  A q¨"Ñ-Ô-ñ.ð 	/r   c                 óx   — t          ||||| ¦  «        t          |||||¦  «        z  t          |||||¦  «        z  S r   ©r   r   r   s          r   Úsolid_int_ellip2z.test_ellip_potential.<locals>.solid_int_ellip2   sL   € Ý˜R  Q¨¨7Ñ3Ô3Ý˜R  Q¨¨2Ñ.Ô.ñ/Ý/9¸"¸bÀ!ÀQÈÑ/KÔ/KñLð 	Mr   c                 ób  •— d}d}	t          d¦  «        D ]—}
d}t          dd|
z  dz   ¦  «        D ]O}|dt          z   ‰||||
|||¦  «         ‰| |||
|||¦  «        z  z  t          |||
|¦  «        d|
z  dz   z  z  z  }ŒPt          |¦  «        d|z  t          |	¦  «        z  k     r n|	|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ÔOØ&Ð& w°°S¸!¸QÀÀBÑGÔGñ Hñ Iå! " b¨!¨QÑ/Ô/°°1±°q±Ñ9ñ;ñ <��õ �4‰yŒy˜3˜s™7¥3 t¡9¤9Ñ,Ò,Ð,Ø�Ø�D‰LˆDˆ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,   sw   ø€ Ø'Ð'¨°°c¸2¸rÑBÔB‰
ˆˆB�Ø'Ð'¨°°c¸2¸rÑBÔ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ð Mð Mðð ð ð ð ð ðð ð ð ð ð 
�d�2‰hŒh˜˜2�t B™xœx¨¨B°Ð3Ø	�d�2‰hŒh˜˜R¥ b¡¤¨3°°BÐ7ð	€Cõ
 
Ô	 Ñ	"Ô	"ð Fð FÝÔØÐ8Õ:Lñ	Nô 	Nð 	NåÔØÐ:Õ<Nñ	Pô 	Pð 	Pð ð 	Fð 	FˆAÝ˜1‘g”gˆGØ�I˜q�MˆEØ ) 	¨1 ÑˆF�IÝ˜E 6°¸ÀgÐNÑNÔNÐNÝ•C˜ ™Ñ'Ô'¨"­S°©^¬^Ñ*;Ò;¸WÑEÔEÐEÐEð	FðFð Fð Fñ Fô Fð Fð Fð Fð Fð Fð Fð Føøøð Fð Fð Fð Fð Fð Fs   Á3B D!Ä!D%Ä(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                             d#¦  «         t           j                             d$d%¬&¦  «        }|d%t           j                             d$|j        ¬&¦  «        z   z  }g }t          d'¦  «        D ]d}t          d%d(|z  d(z   ¦  «        D ]K}|                     ||t          j        |j        |¦  «        t          j        |j        |¦  «        f¦  «         ŒLŒet          j	        |¦  «        }t          j        ¦   «         5  t          j        d)d*t          ¦  «         t          t          ||d+¬,¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )-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                 ó:   — 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                 ó:   — 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                 ó:   — 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                 ó<  — 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                 ó<  — 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                 ó<  — 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                 ó<  — 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                 óF   — 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                 ó0   •— ‰| |f         } |||¦  «        S r   © )r    r!   r   r   ÚfuncÚknown_funcss        €r   Ú_ellip_normz$test_ellip_norm.<locals>._ellip_norm’   s!   ø€ Ø˜1˜a˜4Ô ˆØˆt�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   s–  øø€ ðð ð ðð ð ð#ð #ð #ð#ð #ð #ðð ð ð
ð ð ð
*ð *ð *ð*ð *ð *ð*ð *ð *ð%ð %ð %ð%ð %ð %ð,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð1ð 1ð 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‡N‚N�4ÑÔÐÝ	Œ×	Ò	˜# AÐ	Ñ	&Ô	&€BØ	ˆq•2”9×#Ò# C¨b¬gÐ#Ñ6Ô6Ñ6Ñ	7€Bà€FÝ�1‰XŒXð Nð NˆÝ�q˜!˜A™#˜a™%‘”ð 	Nð 	NˆAØ�MŠM˜2˜r¥2¤7¨2¬7°AÑ#6Ô#6½¼ÀÄÈÑ8KÔ8KÐLÑMÔMÐMÐMð	NåŒX�fÑÔ€FÝ	Ô	 Ñ	"Ô	"ð Pð PÝÔØÐ8Õ:Lñ	Nô 	Nð 	Nå�,Ð(:¸FÈÐOÑOÔOÐOðPð Pð Pñ Pô Pð Pð Pð Pð Pð Pð Pð Pøøøð Pð Pð Pð Pð Pð Ps   Æ4GÇGÇGc            
      ód  — 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 ¦  «         d S # 1 swxY w Y   d S )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Ô2MÑ.MÑNÝ
�r˜2˜q ! QÑ
'Ô
'¨­Z¸¸BÀÀ1ÀaÑ-HÔ-HÑ)HÑ
IñJå�R˜˜Q  1Ñ%Ô% q­:°b¸"¸aÀÀAÑ+FÔ+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ô 	Nð 	Nå˜˜˜1˜a ™œ a¨­D°Ñ,AÔ,AÑ)AÑ&BØ#¨!ð	-ñ 	-ô 	-ð 	-õ 	� Q¨¨1¨a°Ñ4Ô4Ð6FØ#¨!ð	-ñ 	-ô 	-ð 	-å� Q¨¨1¨a°Ñ4Ô4Ð6FØ#¨!ð	-ñ 	-ô 	-ð 	-å� Q¨¨1¨a°Ñ4Ô4Ð6FØ#¨!ð	-ñ 	-ô 	-ð 	-å� Q¨¨1¨a°Ñ4Ô4Ð6FØ#¨!ð	-ñ 	-ô 	-ð 	-å� Q¨¨1¨a°Ñ4Ô4Ð6FØ#¨!ð	-ñ 	-ô 	-ð 	-ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð -ð -s   —DD%Ä%D)Ä,D)c                  óf  ‡‡— 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                             d'¦  «        }|                     d(d)¬*¦  «        }|d|                     d(|j        ¬*¦  «        z   z  }|                     d(|j        ¬*¦  «        }g }t          |j        ¦  «        D ]Y}t          d+¦  «        D ]G}t          dd|z  dz   ¦  «        D ].}|                     ||         ||         ||||         f¦  «         Œ/ŒHŒZt          j	        |¦  «        }t          t          ||d,¬-¦  «         d S ).Nc                 ó   — dS )Nr)   r    ©r   r   r¸   s      r   ÚE01ztest_ellip_harm.<locals>.E01Ç   s   € Øˆqr   c                 ó   — |S r   r    r½   s      r   ÚE11ztest_ellip_harm.<locals>.E11Ê   s   € Øˆr   c                 óF   — t          t          ||z  | z
  ¦  «        ¦  «        S r   ©r   r,   r½   s      r   ÚE12ztest_ellip_harm.<locals>.E12Í   ó   € Ý•C˜˜!™˜b™‘M”MÑ"Ô"Ð"r   c                 óF   — t          t          ||z  |z
  ¦  «        ¦  «        S r   rÂ   r½   s      r   ÚE13ztest_ellip_harm.<locals>.E13Ð   rÄ   r   c           
      ó|   — ||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Ó   óI   € Ø�‰s�S˜2 ™7¥d­3°°R±¸"¸r¹'Ñ/BÀ1ÀRÁ4ÈÁ7Ñ/JÑ+KÔ+KÑ&LÔ&LÑLÑMÑMÐMr   c           
      ó|   — ||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                 óL   — |t          t          ||z  | z
  ¦  «        ¦  «        z  S r   rÂ   r½   s      r   ÚE23ztest_ellip_harm.<locals>.E23Ù   ó#   € Ø•4�˜A˜a™C "™H™œÑ&Ô&Ñ&Ð&r   c                 óL   — |t          t          ||z  |z
  ¦  «        ¦  «        z  S r   rÂ   r½   s      r   ÚE24ztest_ellip_harm.<locals>.E24Ü   rÏ   r   c                 óX   — 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                 óz   — ||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                 óz   — ||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”MÑ"Ô" A a¡C¨#°°Q°r±T±	½TÅ#ÀrØ	ˆ"‰ñHØ�A�b‘D‰yñGØ˜b™D ™GñG$ñ C%ô 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”MÑ"Ô" A a¡C¨#°°"±°r±	½TÅ#ÀqÈÁtØ
ñHØ�‰t�b‰yñGØ˜b™D ™GñG$ñ C%ô 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                 ó^   — |t          t          ||z  | z
  ||z  |z
  z  ¦  «        ¦  «        z  S r   rÂ   r½   s      r   ÚE37ztest_ellip_harm.<locals>.E37ú   s2   € Ø•4�˜Q˜q™S 2™X¨¨!©¨b©Ñ1Ñ2Ô2Ñ3Ô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 ]d}‰t          ||         ¦  «        t          ||         ¦  «        f         }‰                      || |         ||         ||         ¦  «        ¦  «         Œ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  st   ø€ Ý�r”w‘”ð 	7ð 	7ˆAØ¥ A a¤D¡	¤	­3¨q°¬t©9¬9Ð5Ô6ˆDØ×Ò˜T˜T " Q¤%¨¨A¬°°!´Ñ5Ô5Ñ6Ô6Ð6Ð6ØÐ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ð   Å   s2  øø€ ðð ð ðð ð ð#ð #ð #ð#ð #ð #ðNð Nð NðNð Nð Nð'ð 'ð 'ð'ð 'ð 'ð0ð 0ð 0ðð ð ðð ð ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð4ð 4ð 4õ •˜A˜q ! Q¨¨Q°Ñ2Ô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�Ñ.Ô.Ñ.Ñ	/€BØ�
Š
�3˜RœWˆ
Ñ%Ô%€AØ€FÝ�2”7‰^Œ^ð :ð :ˆÝ�q‘”ð 	:ð 	:ˆAÝ˜1˜a ™c !™e‘_”_ð :ð :�Ø—’˜r !œu b¨¤e¨Q°°1°Q´4Ð8Ñ9Ô9Ð9Ð9ð:ð	:õ ŒX�fÑÔ€FÝ•jÐ"2°FÀÐGÑGÔGÐGÐGÐGr   c                  ól   — d} d| z  dz   }t          dd| |d¦  «        }t          j        |¦  «        sJ ‚d S )Nr*   r   r§   g       @rÜ   )r   r¬   Úisnan)r    r!   rT   s      r   Útest_ellip_harm_invalid_pró     sE   € à	€Aà	ˆ!‰ˆa‰€AÝ˜˜S ! Q¨Ñ,Ô,€FÝŒ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ù      sû   ðð
 €€€à Ð Ð Ð Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø .Ð .Ð .Ð .Ð .Ð .Ø Ð Ð Ð Ð Ð Ð Ð ð3Fð 3Fð 3FðlbPð bPð bPðJ-ð -ð -ð6RHð RHð RHðjð ð ð ð r   