§
    fŠtjn€  ã                   óØ  — d dl Z d dl mZ d dlZd dlmZmZ d dlmZm	Z	 d dl
mZ d dlmZ d dlmZ d dlmc mZ  G d„ d¦  «        Z G d	„ d
¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z G d„ d¦  «        Z	 d.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-d-„ Z.dS )/é    N)Úraises)ÚarrayÚsqrt)Úassert_equalÚassert_allclose)Ú	integrate©Úgammac                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú	TestChebyc                 ó†  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¬¦  «        5  t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }d d d ¦  «         n# 1 swxY w Y   t	          |j        dgd	d¬
¦  «         t	          |j        ddgd	d¬
¦  «         t	          |j        g d¢d	d¬
¦  «         t	          |j        g d¢d	d¬
¦  «         t	          |j        g d¢d	d¬
¦  «         t	          |j        g d¢d	d¬
¦  «         d S )Nr   é   Úignore©Úallé   é   é   é   çá7ÎQE=©ÚatolÚrtol)r   r   éþÿÿÿ)r   r   éýÿÿÿr   )r   r   éüÿÿÿr   r   )r   r   éûÿÿÿr   r   r   )ÚorthÚchebycÚnpÚerrstater   Úc)ÚselfÚC0ÚC1ÚC2ÚC3ÚC4ÚC5s          úa/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/special/tests/test_orthogonal.pyÚtest_chebyczTestCheby.test_chebyc   sr  € ÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜XÐ&Ñ&Ô&ð 	 ð 	 Ý”˜Q‘”ˆBÝ”˜Q‘”ˆBÝ”˜Q‘”ˆBÝ”˜Q‘”ˆBð		 ð 	 ð 	 ñ 	 ô 	 ð 	 ð 	 ð 	 ð 	 ð 	 ð 	 øøøð 	 ð 	 ð 	 ð 	 õ 	˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ˜q !˜f¨7¸Ð;Ñ;Ô;Ð;Ý˜œ˜j˜j˜j¨w¸QÐ?Ñ?Ô?Ð?Ý˜œ˜m˜m˜m°'ÀÐBÑBÔBÐBÝ˜œÐ.Ð.Ð.°WÀ1ÐEÑEÔEÐEÝ˜œÐ1Ð1Ð1°wÀQÐGÑGÔGÐGÐGÐGs   ¾ABÂBÂ"Bc                 ó,  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |j        dgdd¬¦  «         t          |j        ddgdd¬¦  «         t          |j        g d	¢dd¬¦  «         t          |j        g d
¢dd¬¦  «         t          |j        g d¢dd¬¦  «         t          |j        g d¢dd¬¦  «         d S )Nr   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   Úchebysr   r"   )r#   ÚS0ÚS1ÚS2ÚS3ÚS4ÚS5s          r*   Útest_chebyszTestCheby.test_chebys   s  € ÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝ˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ˜q !˜f¨7¸Ð;Ñ;Ô;Ð;Ý˜œ˜j˜j˜j¨w¸QÐ?Ñ?Ô?Ð?Ý˜œ˜m˜m˜m°'ÀÐBÑBÔBÐBÝ˜œÐ.Ð.Ð.°WÀ1ÐEÑEÔEÐEÝ˜œÐ1Ð1Ð1¸ÀaÐHÑHÔHÐHÐHÐHó    c                 ó,  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |j        dgdd¬¦  «         t          |j        ddgdd¬¦  «         t          |j        g d	¢dd¬¦  «         t          |j        g d
¢dd¬¦  «         t          |j        g d¢dd¬¦  «         t          |j        g d¢dd¬¦  «         d S )Nr   r   r   r   r   r   r   r   )r   r   r-   )r   r   r   r   )é   r   iøÿÿÿr   r   )é   r   éìÿÿÿr   r   r   )r   Úchebytr   r"   )r#   ÚT0ÚT1ÚT2ÚT3ÚT4ÚT5s          r*   Útest_chebytzTestCheby.test_chebyt-   s  € ÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝ˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ˜q !˜f¨7¸Ð;Ñ;Ô;Ð;Ý˜œ˜j˜j˜j¨w¸QÐ?Ñ?Ô?Ð?Ý˜œ˜m˜m˜m°'ÀÐBÑBÔBÐBÝ˜œÐ.Ð.Ð.°WÀ1ÐEÑEÔEÐEÝ˜œÐ3Ð3Ð3¸'ÈÐJÑJÔJÐJÐJÐJr6   c                 ó,  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |j        dgdd¬¦  «         t          |j        ddgdd¬¦  «         t          |j        g d	¢dd¬¦  «         t          |j        g d
¢dd¬¦  «         t          |j        g d¢dd¬¦  «         t          |j        g d¢dd¬¦  «         d S )Nr   r   r   r   r   r   r   r   )r   r   r-   )r8   r   r   r   )r9   r   éôÿÿÿr   r   )é    r   iàÿÿÿr   é   r   )r   Úchebyur   r"   )r#   ÚU0ÚU1ÚU2ÚU3ÚU4ÚU5s          r*   Útest_chebyuzTestCheby.test_chebyu;   s  € ÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝŒ[˜‰^Œ^ˆÝ˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ˜q !˜f¨7¸Ð;Ñ;Ô;Ð;Ý˜œ˜j˜j˜j¨w¸QÐ?Ñ?Ô?Ð?Ý˜œ˜m˜m˜m°'ÀÐBÑBÔBÐBÝ˜œÐ0Ð0Ð0°wÀQÐGÑGÔGÐGÝ˜œÐ3Ð3Ð3¸'ÈÐJÑJÔJÐJÐJÐJr6   N)Ú__name__Ú
__module__Ú__qualname__r+   r5   rB   rN   © r6   r*   r   r      s^   € € € € € ðHð Hð Hð Ið Ið IðKð Kð KðKð Kð Kð Kð Kr6   r   c                   óf   — e Zd Zd„ Zej                             dddg¦  «        d„ ¦   «         Zd„ ZdS )ÚTestGegenbauerc                 ó¼  — dt           j                             ¦   «         z  dz
  }t          j        |dk    ¦  «        rd}t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t          |j        t          dg¦  «        d	d¬
¦  «         t          |j        t          d|z  dg¦  «        d	d¬
¦  «         t          |j        t          d|z  |dz   z  d| g¦  «        d	d¬
¦  «         t          |j        t          dt          j	        |d¦  «        z  dd|z  |dz   z  dg¦  «        dz  dd¬
¦  «         t          |j        t          dt          j	        |d¦  «        z  ddt          j	        |d¦  «        z  dd|z  |dz   z  g¦  «        dz  dd¬
¦  «         t          |j        t          dt          j	        |d¦  «        z  ddt          j	        |d¦  «        z  ddt          j	        |d¦  «        z  dg¦  «        dz  dd¬
¦  «         d S )Nr   ç      à?r   çš™™™™™É¿r   r   r   r   r   r   iúÿÿÿg      @çpé~°=rD   g      @r:   é   g      .@)
r    ÚrandomÚanyr   Ú
gegenbauerr   r"   r   ÚscÚpoch)r#   ÚaÚCa0ÚCa1ÚCa2ÚCa3ÚCa4ÚCa5s           r*   Útest_gegenbauerzTestGegenbauer.test_gegenbauerL   sc  € Ø�bŒi×ÒÑ Ô Ñ  3Ñ&ˆÝŒ6�!�q’&‰>Œ>ð 	ØˆAÝŒo˜a Ñ"Ô"ˆÝŒo˜a Ñ"Ô"ˆÝŒo˜a Ñ"Ô"ˆÝŒo˜a Ñ"Ô"ˆÝŒo˜a Ñ"Ô"ˆÝŒo˜a Ñ"Ô"ˆå˜œ�u a S™zœz°¸aÐ@Ñ@Ô@Ð@Ý˜œ�u a¨¡c¨1 X™œ°WÀ1ÐEÑEÔEÐEÝ˜œ�u a¨¡c¨1¨q©5¡k°1°q°bÐ%9Ñ:Ô:Ø$¨1ð	.ñ 	.ô 	.ð 	.å˜œ�u a­¬°°1©¬¡o°q¸¸A¹¸qÀ1¹u¹ÀqÐ%IÑJÔJÈ3ÑNØ$¨1ð	.ñ 	.ô 	.ð 	.å˜œ�u a­¬°°1©¬¡o°q¸#½b¼gÀaÈ¹m¼mÑ:KØ&'¨¨1©¨a°!©e©ð&6ñ  7ô  7Ø7:ñ ;à$¨1ð	.ñ 	.ô 	.ð 	.õ 	˜œ�u a­¬°°1©¬¡o°q¸#½b¼gÀaÈ¹m¼mÑ:KØ&'¨­B¬G°A°q©M¬MÑ)9¸1ð&>ñ  ?ô  ?Ø?Cñ Dà$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.r6   r_   r   r   c                 ó€   — t          j        d|¦  «        }t          |j        t	          j        dg¦  «        ¦  «         d S )Nr   ç      ð?)r   r\   r   r"   r    Úasarray)r#   r_   ÚCn0s      r*   Útest_n_zero_gh8888z!TestGegenbauer.test_n_zero_gh8888d   s9   € õ Œo˜a Ñ#Ô#ˆÝ�S”U�BœJ¨ tÑ,Ô,Ñ-Ô-Ð-Ð-Ð-r6   c                 óæ  — d}t          j        t          |¬¦  «        5  t          j        dt
          j        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬¦  «        5  t          j        dd¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬¦  «        5  t          j        dt
          j         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz*`alpha` must be a finite number greater...)Úmatchr   r   ç      à¿r   )Úpytestr   Ú
ValueErrorr   r\   r    ÚnanÚinf)r#   Úmessages     r*   Útest_valid_alphazTestGegenbauer.test_valid_alphaj   s�  € à>ˆÝŒ]�:¨WÐ5Ñ5Ô5ð 	'ð 	'ÝŒO˜A�rœvÑ&Ô&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'åŒ]�:¨WÐ5Ñ5Ô5ð 	%ð 	%ÝŒO˜A˜tÑ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%åŒ]�:¨WÐ5Ñ5Ô5ð 	(ð 	(ÝŒO˜A¥¤˜wÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s5   ž A
Á
AÁAÁ0BÂBÂBÂ8!C&Ã&C*Ã-C*N)	rO   rP   rQ   rf   ro   ÚmarkÚparametrizerk   rt   rR   r6   r*   rT   rT   J   sd   € € € € € ð.ð .ð .ð0 „[×Ò˜S 1 a &Ñ)Ô)ð.ð .ñ *Ô)ð.ð
(ð (ð (ð (ð (r6   rT   c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestHermitec                 ó,  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |j        dgdd¬¦  «         t          |j        ddgdd¬¦  «         t          |j        g d	¢dd¬¦  «         t          |j        g d
¢dd¬¦  «         t          |j        g d¢dd¬¦  «         t          |j        g d¢dd¬¦  «         d S )Nr   r   r   r   r   r   r   r   )r   r   r   )r8   r   rD   r   )r9   r   iÐÿÿÿr   é   çßÄAfcz=)rE   r   i`ÿÿÿr   éx   r   )r   Úhermiter   r"   )r#   ÚH0ÚH1ÚH2ÚH3ÚH4ÚH5s          r*   Útest_hermitezTestHermite.test_hermitev   s  € ÝŒ\˜!‰_Œ_ˆÝŒ\˜!‰_Œ_ˆÝŒ\˜!‰_Œ_ˆÝŒ\˜!‰_Œ_ˆÝŒ\˜!‰_Œ_ˆÝŒ\˜!‰_Œ_ˆÝ˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ˜q !˜f¨7¸Ð;Ñ;Ô;Ð;Ý˜œ˜j˜j˜j¨w¸QÐ?Ñ?Ô?Ð?Ý˜œ˜n˜n˜n°7ÀÐCÑCÔCÐCÝ˜œÐ1Ð1Ð1¸ÀaÐHÑHÔHÐHÝ˜œÐ6Ð6Ð6¸WÈ1ÐMÑMÔMÐMÐMÐMr6   c                 ór  — t          j        dt          d¦  «        z  dg¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        t          d¦  «        z  }	 t          j        d¦  «        |¦  «        dz  }
 t          j        d¦  «        |¦  «        dt          d¦  «        z  z  } t          j        d¦  «        |¦  «        d	z  } t          j        d¦  «        |¦  «        d	t          d¦  «        z  z  }t          |j        |j        d
d¬¦  «         t          |j        |	j        d
d¬¦  «         t          |j        |
j        d
d¬¦  «         t          |j        |j        d
d¬¦  «         t          |j        |j        d
d¬¦  «         t          |j        |j        d
d¬¦  «         d S )Nrh   r   r   r   r   r   r   ç       @ç      @r   r   )r    Úpoly1dr   r   Úhermitenormr}   r   r"   )r#   Úpsubr~   r   r€   r�   r‚   rƒ   Úhe0Úhe1Úhe2Úhe3Úhe4Úhe5s                 r*   Útest_hermitenormzTestHermite.test_hermitenorm„   sä  € åŒy˜#�d 1™gœg™+ a˜Ñ)Ô)ˆÝÔ˜aÑ Ô ˆÝÔ˜aÑ Ô ˆÝÔ˜aÑ Ô ˆÝÔ˜aÑ Ô ˆÝÔ˜aÑ Ô ˆÝÔ˜aÑ Ô ˆØ�dŒl˜1‰oŒo˜dÑ#Ô#ˆØ�dŒl˜1‰oŒo˜dÑ#Ô#¥d¨1¡g¤gÑ-ˆØ�dŒl˜1‰oŒo˜dÑ#Ô# cÑ)ˆØ�dŒl˜1‰oŒo˜dÑ#Ô# q­¨a©¬¡yÑ1ˆØ�dŒl˜1‰oŒo˜dÑ#Ô# cÑ)ˆØ�dŒl˜1‰oŒo˜dÑ#Ô# s­4°©7¬7¡{Ñ3ˆå˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ð:Ð:r6   N)rO   rP   rQ   r„   r‘   rR   r6   r*   rx   rx   u   s5   € € € € € ðNð Nð Nð;ð ;ð ;ð ;ð ;r6   rx   c                   ó   — e Zd Zd„ ZdS )ÚTestShLegendrec                 óÚ  — t          j        ddg¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }	 t          j        d¦  «        |¦  «        }
 t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }t          |j        |j        dd¬	¦  «         t          |j        |	j        dd¬	¦  «         t          |j        |
j        dd¬	¦  «         t          |j        |j        dd¬	¦  «         t          |j        |j        d
d¬	¦  «         t          |j        |j        d
d¬	¦  «         d S ©Nr   r-   r   r   r   r   r   r   r   r{   )r    rˆ   r   Úsh_legendreÚlegendrer   r"   )r#   rŠ   ÚPs0ÚPs1ÚPs2ÚPs3ÚPs4ÚPs5Úpse0Úpse1Úpse2Úpse3Úpse4Úpse5s                 r*   Útest_sh_legendrezTestShLegendre.test_sh_legendre�   s³  € åŒy˜!˜B˜Ñ Ô ˆÝÔ˜qÑ!Ô!ˆÝÔ˜qÑ!Ô!ˆÝÔ˜qÑ!Ô!ˆÝÔ˜qÑ!Ô!ˆÝÔ˜qÑ!Ô!ˆÝÔ˜qÑ!Ô!ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆØ�tŒ}˜QÑÔ Ñ%Ô%ˆÝ˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ð<Ð<r6   N)rO   rP   rQ   r¤   rR   r6   r*   r“   r“   œ   ó#   € € € € € ð=ð =ð =ð =ð =r6   r“   c                   ó   — e Zd Zd„ ZdS )ÚTestShChebytc                 óÚ  — t          j        ddg¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }	 t          j        d¦  «        |¦  «        }
 t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }t          |j        |j        dd¬	¦  «         t          |j        |	j        dd¬	¦  «         t          |j        |
j        dd¬	¦  «         t          |j        |j        dd¬	¦  «         t          |j        |j        d
d¬	¦  «         t          |j        |j        d
d¬	¦  «         d S r•   )r    rˆ   r   Ú	sh_chebytr;   r   r"   )r#   rŠ   ÚTs0ÚTs1ÚTs2ÚTs3ÚTs4ÚTs5Útse0Útse1Útse2Útse3Útse4Útse5s                 r*   Útest_sh_chebytzTestShChebyt.test_sh_chebytµ   ó¡  € åŒy˜!˜B˜Ñ Ô ˆÝŒn˜QÑÔˆÝŒn˜QÑÔˆÝŒn˜QÑÔˆÝŒn˜QÑÔˆÝŒn˜QÑÔˆÝŒn˜QÑÔˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆØ�tŒ{˜1‰~Œ~˜dÑ#Ô#ˆÝ˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ý˜œ˜tœv¨G¸!Ð<Ñ<Ô<Ð<Ð<Ð<r6   N)rO   rP   rQ   r¶   rR   r6   r*   r§   r§   ´   r¥   r6   r§   c                   ó   — e Zd Zd„ ZdS )ÚTestShChebyuc                 óÚ  — t          j        ddg¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }	 t          j        d¦  «        |¦  «        }
 t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        } t          j        d¦  «        |¦  «        }t          |j        |j        dd¬	¦  «         t          |j        |	j        dd¬	¦  «         t          |j        |
j        dd¬	¦  «         t          |j        |j        dd¬	¦  «         t          |j        |j        d
d¬	¦  «         t          |j        |j        dd¬	¦  «         d S )Nr   r-   r   r   r   r   r   r   r   r{   rX   )r    rˆ   r   Ú	sh_chebyurG   r   r"   )r#   rŠ   ÚUs0ÚUs1ÚUs2ÚUs3ÚUs4ÚUs5Úuse0Úuse1Úuse2Úuse3Úuse4Úuse5s                 r*   Útest_sh_chebyuzTestShChebyu.test_sh_chebyuÍ   r·   r6   N)rO   rP   rQ   rÈ   rR   r6   r*   r¹   r¹   Ì   r¥   r6   r¹   c                   ó   — e Zd Zd„ ZdS )ÚTestShJacobic                 ó„  — d„ }t          j        ddg¦  «        }dt           j                             ¦   «         z  }|dz
  dt           j                             ¦   «         z  z   }t          j        d||¦  «        }t          j        d||¦  «        }t          j        d||¦  «        }t          j        d||¦  «        }t          j        d||¦  «        }	t          j        d||¦  «        }
 t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  } t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  } t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  } t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  } t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  } t          j        d||z
  |dz
  ¦  «        |¦  «         |d|¦  «        z  }t          |j        |j        d	d¬
¦  «         t          |j        |j        d	d¬
¦  «         t          |j        |j        d	d¬
¦  «         t          |j        |j        d	d¬
¦  «         t          |	j        |j        d	d¬
¦  «         t          |
j        |j        d	d¬
¦  «         d S )Nc                 óx   — t          | dz   ¦  «        t          | |z   ¦  «        z  t          d| z  |z   ¦  «        z  S )Nr   r   r	   )ÚnÚps     r*   Úconvz)TestShJacobi.test_sh_jacobi.<locals>.convç   s6   € Ý˜˜Q™‘<”<¥%¨¨A©¡,¤,Ñ.µ°q¸1±u¸q±yÑ1AÔ1AÑAÐAr6   r   r-   r   r   r   r   r   r   r   )r    rˆ   rZ   r   Ú	sh_jacobiÚjacobir   r"   )r#   rÏ   rŠ   ÚqrÎ   ÚG0ÚG1ÚG2ÚG3ÚG4ÚG5Úge0Úge1Úge2Úge3Úge4Úge5s                    r*   Útest_sh_jacobizTestShJacobi.test_sh_jacobiå   s²  € ð	Bð 	Bð 	BåŒy˜!˜B˜Ñ Ô ˆØ•”	× Ò Ñ"Ô"Ñ"ˆØˆa‰C�!•B”I×$Ò$Ñ&Ô&Ñ&Ñ&ˆåŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆØ$�dŒk˜!˜A˜a™C  !¡Ñ$Ô$ TÑ*Ô*¨T¨T°!°A©Y¬YÑ6ˆå˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ý˜œ˜cœe¨'¸Ð:Ñ:Ô:Ð:Ð:Ð:r6   N)rO   rP   rQ   rß   rR   r6   r*   rÊ   rÊ   ä   s#   € € € € € ð;ð ;ð ;ð ;ð ;r6   rÊ   c                   ó   — e Zd Zd„ ZdS )ÚTestCallc           	      óP  — g }t          d¦  «        D ]“}|                     d„ d                     g d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d	‘|› ‘d
‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘|› ‘d‘¦  «                             ¦   «         D ¦   «         ¦  «         Œ”t	          j        d¬¦  «        5  |D ]N}t          |¦  «        }t           |d¦  «         t	          j        |j	        ¦  «        d¦  «        dd|¬¦  «         ŒO	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr   c                 ó6   — g | ]}|                      ¦   «         ‘ŒS rR   )Ústrip)Ú.0Úxs     r*   ú
<listcomp>z&TestCall.test_call.<locals>.<listcomp>  s,   € ð ð ð  q˜Ÿš™œð ð ð r6   Ú z
                orth.jacobi(z),0.3,0.9)
                orth.sh_jacobi(z+,0.3,0.9)
                orth.genlaguerre(z$,0.3)
                orth.laguerre(z)
                orth.hermite(z#)
                orth.hermitenorm(z")
                orth.gegenbauer(z",0.3)
                orth.chebyt(z)
                orth.chebyu(z)
                orth.chebyc(z)
                orth.chebys(z!)
                orth.sh_chebyt(z!)
                orth.sh_chebyu(z )
                orth.legendre(z#)
                orth.sh_legendre(z)
                r   r   g)\�Âõ(Ô?gvƒôõ!„>r   )r   r   Úerr_msg)
ÚrangeÚextendÚjoinÚsplitr    r!   Úevalr   rˆ   Úcoef)r#   ÚpolyrÍ   ÚpstrrÎ   s        r*   Ú	test_callzTestCall.test_call  sð  € ØˆÝ�q‘”ð 	ð 	ˆAØ�KŠKð ð ð÷ ò ð ð ð Øðð ð ð à !ðð ð ð ð #$ðð ð ð ð  !ð	ð ð ð ð
  ðð ð ð ð #$ðð ð ð ð "#ðð ð ð ð ðð ð ð ð ðð ð ð ð ðð ð ð ð ðð ð ð ð !"ðð ð ð ð !"ðð ð ð ð  !ðð ð ð ð #$ðð ð ð ñ ô ÷  ’U‘W”Wð#ñ ô ñ ô ð ð õ$ Œ[˜XÐ&Ñ&Ô&ð 	Cð 	CØð Cð C�Ý˜‘J”J�Ý   %¡¤Ð*;­"¬)°A´FÑ*;Ô*;¸EÑ*BÔ*BØ%+°!¸TðCñ Cô Cð Cð CðCð	Cð 	Cð 	Cñ 	Cô 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cøøøð 	Cð 	Cð 	Cð 	Cð 	Cð 	Cs   Â;ADÄDÄ"DN)rO   rP   rQ   rò   rR   r6   r*   rá   rá     s(   € € € € € ðCð Cð Cð Cð Cr6   rá   c                   ó   — e Zd Zd„ ZdS )ÚTestGenlaguerrec                 ó¢  — t           t          j        ddd¬¦  «        d¦  «        d¦  «         t           t          j        ddd¬¦  «        d¦  «        d¦  «         t          t          j        ddd¬¦  «        t          j        dd	g¦  «        ¦  «         t          t          j        ddd¬¦  «        t          j        dd
g¦  «        ¦  «         d S )Nr   F)Úmonicr   r†   Tç       Àr-   r   r   )r   r   Úgenlaguerrer    rˆ   )r#   s    r*   Útest_regressionzTestGenlaguerre.test_regression   sÂ   € ÝÐ8•TÔ% a¨°%Ð8Ñ8Ô8¸Ñ;Ô;¸RÑ@Ô@Ð@ÝÐ7•TÔ% a¨°$Ð7Ñ7Ô7¸Ñ:Ô:¸CÑ@Ô@Ð@Ý•TÔ% a¨°%Ð8Ñ8Ô8½"¼)ÀRÈÀGÑ:LÔ:LÑMÔMÐMÝ•TÔ% a¨°$Ð7Ñ7Ô7½¼ÀAÀrÀ7Ñ9KÔ9KÑLÔLÐLÐLÐLr6   N)rO   rP   rQ   rù   rR   r6   r*   rô   rô     s(   € € € € € ðMð Mð Mð Mð Mr6   rô   çVçž¯Ò<ç‚vIhÂ%,=c                 óæ  ‡‡—  | |d¦  «        \  }}	}
t          j        |t          j        d¦  «        ¬¦  «        } ||d d …t           j        f         |¦  «        }t          j        ||	z  |j        ¦  «        }dt          j        |                     ¦   «         ¦  «        z  }|d d …t           j        f         |z  |z  }t          |t          j	        |¦  «        ||¦  «         t          |	 
                    ¦   «         |
||¦  «         d„ Št          j        ˆˆfd„||¦  «        }t          j         ‰|¦  «        |	¦  «        }d|d         k     rdn
|d         dz  }t          |d	         ||¬
¦  «         d S )NTÚlong)Údtyper   c                 ó*   — | dz  d| dz  z  z
  | z   dz
  S )Nr   r   rR   )ræ   s    r*   Úfzverify_gauss_quad.<locals>.f7  s#   € Ø�A‰v˜˜A ™F™
Ñ" QÑ&¨Ñ*Ð*r6   c                 ó2   •—  ‰| ¦  «         ‰| ¦  «        z  S ©NrR   )ræ   r   Úweight_funcs    €€r*   ú<lambda>z#verify_gauss_quad.<locals>.<lambda>9  s   ø€  A A a¡D¤D¨¨°Q©¬Ñ$7€ r6   g�íµ ÷Æ°>é
   r   ©r   )r    Úarangerþ   ÚnewaxisÚdotÚTr   Údiagonalr   ÚeyeÚsumr   ÚquadÚvdot)Ú	root_funcÚ	eval_funcr  r_   ÚbÚNr   r   ræ   ÚwÚmurÍ   ÚvÚvvÚvdÚresIÚresGr   s     `              @r*   Úverify_gauss_quadr  '  si  øø€ ð ˆy˜˜DÑ!Ô!�H€A€qˆ"å
Œ	�!�2œ8 FÑ+Ô+Ð,Ñ,Ô,€AØˆ	�!�A�A�A•b”j�L”/ 1Ñ%Ô%€AÝ	Œ��!‘�Q”SÑ	Ô	€BØ	
�RŒW�R—[’[‘]”]Ñ#Ô#Ñ	#€BØ	ˆAˆAˆA�rŒzˆMÔ	˜RÑ	 "Ñ	$€BÝ�B�œ˜q™	œ	 4¨Ñ.Ô.Ð.õ �A—E’E‘G”G˜R  tÑ,Ô,Ð,ð+ð +ð +åŒ>Ð7Ð7Ð7Ð7Ð7¸¸AÑ>Ô>€DÝŒ7�1�1�Q‘4”4˜ÑÔ€DØ˜$˜qœ'’>�>ˆ4ˆ4 t¨A¤w°¡|€DÝ�D˜”G˜T¨Ð-Ñ-Ô-Ð-Ð-Ð-r6   c            	      ó”  — d„ } d„ }d„ }t           } | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd ¦  «         |dd ¦  «         |dd ¦  «        dddd
¬¦  «          | | dd ¦  «         |dd ¦  «         |dd ¦  «        ddd	d¬¦  «          | | dd ¦  «         |dd ¦  «         |dd ¦  «        dddd¬¦  «          | | d!d"¦  «         |d!d"¦  «         |d!d"¦  «        dddd
¬¦  «          | | d!d"¦  «         |d!d"¦  «         |d!d"¦  «        ddd	d¬¦  «          | | d!d"¦  «         |d!d"¦  «         |d!d"¦  «        dddd¬¦  «          | | d#d$¦  «         |d#d$¦  «         |d#d$¦  «        ddd¦  «          | | d#d$¦  «         |d#d$¦  «         |d#d$¦  «        ddd	d¬¦  «          | | d#d$¦  «         |d#d$¦  «         |d#d$¦  «        dddd¬¦  «         t          j        d%d&d&¦  «        \  }}t          j        d%¦  «        \  }}t	          ||d'd'¦  «         t	          ||d'd'¦  «         t          j        d%d(d(¦  «        \  }}t          j        d%d)¦  «        \  }}	t	          ||d'd'¦  «         t	          ||	d'd'¦  «         t          j        ddd*d+¦  «        \  }
}t          j        ddd*d,¦  «        \  }}}t	          |
|d'd'¦  «         t	          ||d'd'¦  «         t          j         |dd*¦  «        d-d¦  «        \  }}t	          |||¬.¦  «         t          t          t          j        d/dd¦  «         t          t          t          j        d0dd¦  «         t          t          t          j        d*d1d¦  «         t          t          t          j        d*dd1¦  «         t          t          t          j        d*d1d1¦  «         d S )2Nc                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó2   •— t          j        | ‰‰|¦  «        S r  )r]   Úroots_jacobi©rÍ   r  r_   r  s     €€r*   r  z/test_roots_jacobi.<locals>.rf.<locals>.<lambda>@  s   ø€ �Rœ_¨Q°°1°bÑ9Ô9€ r6   rR   ©r_   r  s   ``r*   Úrfztest_roots_jacobi.<locals>.rf?  ó   øø€ Ø9Ð9Ð9Ð9Ð9Ð9r6   c                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó2   •— t          j        | ‰‰|¦  «        S r  )r]   Úeval_jacobi©rÍ   ræ   r_   r  s     €€r*   r  z/test_roots_jacobi.<locals>.ef.<locals>.<lambda>B  s   ø€ �BœN¨1¨a°°AÑ6Ô6€ r6   rR   r!  s   ``r*   Úefztest_roots_jacobi.<locals>.efA  s   øø€ Ø6Ð6Ð6Ð6Ð6Ð6r6   c                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó&   •— d| z
  ‰z  d| z   ‰z  z  S )Nr   rR   ©ræ   r_   r  s    €€r*   r  z/test_roots_jacobi.<locals>.wf.<locals>.<lambda>D  s   ø€ ˜!˜a™% A™¨¨Q©°1©Ñ4€ r6   rR   r!  s   ``r*   Úwfztest_roots_jacobi.<locals>.wfC  s   øø€ Ø4Ð4Ð4Ð4Ð4Ð4r6   rn   ç      è¿ç      ð¿rh   r   é   çê-�™—q=©r   éd   ç•dyáý¥=rV   r   çê-�™—�=r   ç‚vIhÂ%L=çÍÌÌÌÌÌì?r   ç‚vIhÂ%<=gá7ÎQU=ç=
×£p=2@çÍÌÌÌÌL;@g^~zÅ=çÍÌÌÌÌŒG@rW   g     �„@éú   g     ð@ç»½×Ùß|Û=g      €@g     @�@g     @@ç      @çš™™™™9Q@rF   ç        ç›+¡†›„=r‡   g      @r   FTr-   r  r   çffffff
@r   )
r  r]   r  Úroots_legendrer   Úroots_gegenbauerr   r  Úassert_raisesrp   )r"  r(  r,  ÚvgqÚxjÚwjÚxlÚwlÚxcÚwcræ   r  Úyr  ÚmÚmuIÚmuI_errs                    r*   Útest_roots_jacobirP  >  s�
  € ð:ð :ð :ð7ð 7ð 7ð5ð 5ð 5õ €CØ€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸3ÀÀAÑFÔFÐFØ€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸3ÀØ
�ðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸3ÀØ�%ðñ ô ð ð €Cˆˆˆ3�‰Œ�r�r˜#˜t‘}”} b b¨¨d¡m¤m°S¸"¸aÑ@Ô@Ð@Ø€Cˆˆˆ3�‰Œ�r�r˜#˜t‘}”} b b¨¨d¡m¤m°S¸"¸bÀwÐOÑOÔOÐOØ€Cˆˆˆ3�‰Œ�r�r˜#˜t‘}”} b b¨¨d¡m¤m°S¸"¸cÈÐNÑNÔNÐNà€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨C°°Q¸UÐCÑCÔCÐCØ€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨C°°R¸eÐDÑDÔDÐDØ€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨C°°S¸uÐEÑEÔEÐEà€Cˆˆˆ3�‰
Œ
�B�B�s˜A‘J”J   3¨¡
¤
¨C°°QÑ7Ô7Ð7Ø€Cˆˆˆ3�‰
Œ
�B�B�s˜A‘J”J   3¨¡
¤
¨C°°R¸eÐDÑDÔDÐDØ€Cˆˆˆ3�‰
Œ
�B�B�s˜A‘J”J   3¨¡
¤
¨C°°S¸uÐEÑEÔEÐEà€Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀÀAÑFÔFÐFØ€Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀÀBØðñ ô ð à€Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀØ�%ðñ ô ð ð €Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀÈÐOÑOÔOÐOØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀÈ%ÐPÑPÔPÐPØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RØ�%ðñ ô ð ð €Cˆˆˆ2ˆt‰Œ�b�b˜˜T‘l”l B B r¨4¡L¤L°#°r¸1À5ÐIÑIÔIÐIØ€Cˆˆˆ2ˆt‰Œ�b�b˜˜T‘l”l B B r¨4¡L¤L°#°r¸2ÀEÐJÑJÔJÐJØ€Cˆˆˆ2ˆt‰Œ�b�b˜˜T‘l”l B B r¨4¡L¤L°#°r¸3ÀUÐKÑKÔKÐKØ€Cˆˆˆ2ˆt‰Œ�b�b˜˜T‘l”l B B r¨4¡L¤L°#°r¸3ÀUÐKÑKÔKÐKà€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð ð €Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð ð €Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀÀAØðñ ô ð à€Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀÀBØðñ ô ð à€Cˆˆˆ5�$‰Œ˜˜˜E 4™œ¨"¨"¨U°D©/¬/¸3ÀÀCØðñ ô ð ð €Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀÑCÔCÐCØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸RÀØðñ ô ð õ Œ_˜Q  SÑ)Ô)�F€BˆÝÔ˜qÑ!Ô!�F€BˆÝ�B˜˜E 5Ñ)Ô)Ð)Ý�B˜˜E 5Ñ)Ô)Ð)õ Œ_˜Q  SÑ)Ô)�F€BˆÝÔ   CÑ(Ô(�F€BˆÝ�B˜˜E 5Ñ)Ô)Ð)Ý�B˜˜E 5Ñ)Ô)Ð)åŒ?˜1˜a  EÑ*Ô*�D€A€qÝŒo˜a  A tÑ,Ô,�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> " " Q q¡'¤'¨2¨qÑ1Ô1�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bœo¨q°!°QÑ7Ô7Ð7Ý•*�bœo¨s°A°qÑ9Ô9Ð9Ý•*�bœo¨q°"°aÑ8Ô8Ð8Ý•*�bœo¨q°!°RÑ8Ô8Ð8Ý•*�bœo¨q°"°bÑ9Ô9Ð9Ð9Ð9r6   c            	      ó^
  — d„ } d„ }d„ }t           } | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        ddd	d¬¦  «          | | dd¦  «         |dd¦  «         |dd¦  «        dddd
¬¦  «         t          j        dddd¦  «        \  }}t          j        dddd ¦  «        \  }}}t          ||d!d!¦  «         t          ||d!d!¦  «         t	          j         |dd¦  «        d"d¦  «        \  }	}
t          ||	|
¬#¦  «         t          t          t          j        d"dd¦  «         t          t          t          j        d$dd¦  «         t          t          t          j        ddd¦  «         t          t          t          j        ddd%¦  «         t          t          t          j        dd&d%¦  «         d S )'Nc                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó2   •— t          j        | ‰‰|¦  «        S r  )r]   Úroots_sh_jacobir   s     €€r*   r  z2test_roots_sh_jacobi.<locals>.rf.<locals>.<lambda>   s   ø€ �RÔ/°°1°a¸Ñ<Ô<€ r6   rR   r!  s   ``r*   r"  z test_roots_sh_jacobi.<locals>.rfŸ  s   øø€ Ø<Ð<Ð<Ð<Ð<Ð<r6   c                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó2   •— t          j        | ‰‰|¦  «        S r  )r]   Úeval_sh_jacobir'  s     €€r*   r  z2test_roots_sh_jacobi.<locals>.ef.<locals>.<lambda>¢  s   ø€ �BÔ-¨a°°A°qÑ9Ô9€ r6   rR   r!  s   ``r*   r(  z test_roots_sh_jacobi.<locals>.ef¡  r#  r6   c                 ó   ‡ ‡— ˆ ˆfd„S )Nc                 ó,   •— d| z
  ‰‰z
  z  | ‰dz
  z  z  S )Nrh   rR   r+  s    €€r*   r  z2test_roots_sh_jacobi.<locals>.wf.<locals>.<lambda>¤  s!   ø€ ˜# ™' q¨1¡uÑ-°°a¸#±g±Ñ>€ r6   rR   r!  s   ``r*   r,  z test_roots_sh_jacobi.<locals>.wf£  s   øø€ Ø>Ð>Ð>Ð>Ð>Ð>r6   rn   g      Ð?r?  rh   r   r/  r0  r1  r2  r3  rV   r7  r   r   r4  r   r6  r9  r8  r:  çš™™™™™É?r<  r>  r=  g(Í´#=r5  r   FTr@  r   r  rA  r-   r   )r  r]   rT  r   r   r  rD  rp   )r"  r(  r,  rE  ræ   r  rL  r  rM  rN  rO  s              r*   Útest_roots_sh_jacobir[  ž  sZ  € ð=ð =ð =ð:ð :ð :ð?ð ?ð ?õ €CØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BÀÑBÔBÐBØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BØ
�ðñ ô ð à€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BØ�%ðñ ô ð ð €Cˆˆˆ3�‰Œ�b�b˜˜c‘l”l B B s¨C¡L¤L°"°b¸!Ñ<Ô<Ð<Ø€Cˆˆˆ3�‰Œ�b�b˜˜c‘l”l B B s¨C¡L¤L°"°b¸"À5ÐIÑIÔIÐIØ€Cˆˆˆ3�‰Œ�b�b˜˜c‘l”l B B s¨C¡L¤L°"°b¸#ÀEÐJÑJÔJÐJà€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°AÑ6Ô6Ð6Ø€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°B¸WÐEÑEÔEÐEØ€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°C¸eÐDÑDÔDÐDà€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°AÑ6Ô6Ð6Ø€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°B¸UÐCÑCÔCÐCØ€Cˆˆˆ1ˆc‰
Œ
�B�B�q˜#‘J”J   1 c¡
¤
¨B°°C¸eÐDÑDÔDÐDà€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸2¸rÀ1ÑEÔEÐEØ€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸2¸rÀ2ÑFÔFÐFØ€Cˆˆˆ4�‰Œ˜˜˜D %™œ¨"¨"¨T°5©/¬/¸2¸rØ�%ðñ ô ð ð €Cˆˆˆ4�‰Œ�r�r˜$ ‘}”} b b¨¨s¡m¤m°R¸¸QÀUÐKÑKÔKÐKØ€Cˆˆˆ4�‰Œ�r�r˜$ ‘}”} b b¨¨s¡m¤m°R¸¸RÀeÐLÑLÔLÐLØ€Cˆˆˆ4�‰Œ�r�r˜$ ‘}”} b b¨¨s¡m¤m°R¸¸SÀuÐMÑMÔMÐMà€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BÀÈÐPÑPÔPÐPØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BÀÈÐOÑOÔOÐOØ€Cˆˆˆ4�‰Œ˜˜˜4 ™œ¨¨¨4°©¬¸¸BØ�%ðñ ô ð õ Ô˜a  A uÑ-Ô-�D€A€qÝÔ   A q¨$Ñ/Ô/�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> " " Q q¡'¤'¨1¨aÑ0Ô0�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ0°!°Q¸Ñ:Ô:Ð:Ý•*�bÔ0°#°q¸!Ñ<Ô<Ð<Ý•*�bÔ0°!°Q¸Ñ:Ô:Ð:Ý•*�bÔ0°!°Q¸Ñ;Ô;Ð;Ý•*�bÔ0°!°R¸Ñ<Ô<Ð<Ð<Ð<r6   c            	      óø  — t           j        } t           j        }t          j        d¦  «        j        }t          | ||t          j         t          j        d¦  «         t          | ||t          j         t          j        dd¬¦  «         t          | ||t          j         t          j        dd¬¦  «         t          j        dd¦  «        \  }}t          j        dd¦  «        \  }}}t          ||d	d	¦  «         t          ||d	d	¦  «         t          j        |t          j         t          j        ¦  «        \  }}	t          |||	¬
¦  «         t          j        dd¦  «        \  }}t          j        dd¦  «        \  }}}t          ||d	d	¦  «         t          ||d	d	¦  «         t          t          |¦  «        |d	d	¦  «         t          t          t           j        d¦  «         t          t          t           j        d¦  «         d S )Nr   r/  r7  r1  r2  r0  FTr@  r  éÈ   r   rA  )r]   Úroots_hermiteÚeval_hermiter   r}   r  r  r    rr   r   r   r  r  rD  rp   ©
ÚrootfÚevalfÚweightfræ   r  rL  r  rM  rN  rO  s
             r*   Útest_roots_hermiterd  Õ  s±  € ÝÔ€EÝŒO€EÝŒl˜1‰oŒoÔ)€Gå�e˜U G­b¬f¨Wµb´f¸aÑ@Ô@Ð@Ý�e˜U G­b¬f¨Wµb´f¸bÀuÐMÑMÔMÐMÝ�e˜U G­b¬f¨Wµb´f¸cÈÐNÑNÔNÐNõ Ô˜A˜uÑ%Ô%�D€A€qÝÔ˜q $Ñ'Ô'�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '­B¬F¨7µB´FÑ;Ô;�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)õ Ô˜C Ñ'Ô'�D€A€qÝÔ˜s DÑ)Ô)�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'Ý•C˜‘F”F˜A˜u eÑ,Ô,Ð,å•*�bÔ.°Ñ2Ô2Ð2Ý•*�bÔ.°Ñ4Ô4Ð4Ð4Ð4r6   c                  ó  ‡— d„ Šdˆfd„	}  | dd¬¦  «          | dd¬¦  «          | d	d¬¦  «          | d
d¬¦  «          | dd¬¦  «          | dd¬¦  «          | dd¬¦  «          | dd¬¦  «          | dd¬¦  «          | dd¬¦  «         d S )Nc                 óÀ  — t          j        | |j        f¦  «        }t           j        dz  t          j        d|dz  z  ¦  «        z  |dd d …f<   | dk    r‹t          d¦  «        |z  |dd d …f         z  |dd d …f<   t          d| ¦  «        D ]T}t          d|z  ¦  «        |z  ||dz
  d d …f         z  t          |dz
  |z  ¦  «        ||dz
  d d …f         z  z
  ||d d …f<   ŒU|S )Nç      Ð¿rn   r   r   r   r†   rh   )r    ÚzerosÚsizeÚpiÚexpr   rê   )rÍ   ÚnodesÚHÚks       r*   Úhermite_recursionz1test_roots_hermite_asy.<locals>.hermite_recursionó  sü   € ÝŒH�a˜œ�_Ñ%Ô%ˆÝ”˜‘¥"¤&¨¨e°Q©h©Ñ"7Ô"7Ñ7ˆˆ!ˆAˆAˆAˆ#‰ØˆqŠ5ˆ5Ý˜#‘Y”Y Ñ&¨¨1¨Q¨Q¨Q¨3¬Ñ/ˆAˆa���ˆc‰FÝ˜1˜a‘[”[ð Uð U�Ý˜c !™e™œ uÑ,¨q°°1±°Q°Q°Q°¬xÑ7½$ÀÀ#ÁÀq¹y¹/¼/ÈAÈaÐPQÉcÐRSÐRSÐRSÈeÌHÑ:TÑT��!�A�A�A�#‘�Øˆr6   rú   r@  c                 ó  •— t          j        | ¦  «        \  }} ‰| dz   |¦  «        }t          |dd d …f         t          j        | ¦  «        ||¦  «         t          t          |¦  «        t          t          j        ¦  «        ||¦  «         d S )Nr   r-   )r   Ú_roots_hermite_asyr   r    rh  r  r   rj  )r  r   r   ræ   r  rm  ro  s         €r*   Útestz$test_roots_hermite_asy.<locals>.testý  s}   ø€ ÝÔ& qÑ)Ô)‰ˆˆ1ØÐ˜a ™c 1Ñ%Ô%ˆÝ˜˜"˜Q˜Q˜Q˜$œ¥¤¨!¡¤¨d°DÑ9Ô9Ð9Ý�˜A™œ¥¥R¤U¡¤¨T°4Ñ8Ô8Ð8Ð8Ð8r6   é–   r0  r1  é—   i,  i-  iô  iõ  iç  iè  iÐ  iˆ  )rú   r@  rR   )rr  ro  s    @r*   Útest_roots_hermite_asyru  ñ  s
  ø€ ðð ð ð9ð 9ð 9ð 9ð 9ð 9ð 	€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�5ÐÑÔÐØ€Dˆ�EÐÑÔÐØ€Dˆ�EÐÑÔÐØ€Dˆ�EÐÑÔÐÐÐr6   c            	      ó  — t           j        } t           j        }t          j        d¦  «        j        }t          | ||t          j         t          j        d¦  «         t          | ||t          j         t          j        dd¬¦  «         t          | ||t          j         t          j        dd¬¦  «         t          j        dd¦  «        \  }}t          j        dd¦  «        \  }}}t          ||d	d	¦  «         t          ||d	d	¦  «         t          j        |t          j         t          j        ¦  «        \  }}	t          |||	¬
¦  «         t          t          t           j        d¦  «         t          t          t           j        d¦  «         d S )Nr   r/  r7  r1  r2  r0  FTr@  r  r   rA  )r]   Úroots_hermitenormÚeval_hermitenormr   r‰   r  r  r    rr   r   r   r  rD  rp   r`  s
             r*   Útest_roots_hermitenormry    sA  € ÝÔ €EÝÔ€EÝÔ˜qÑ!Ô!Ô-€Gå�e˜U G­b¬f¨Wµb´f¸aÑ@Ô@Ð@Ý�e˜U G­b¬f¨Wµb´f¸bÀuÐMÑMÔMÐMÝ�e˜U G­b¬f¨Wµb´f¸cÈÐNÑNÔNÐNåÔ  5Ñ)Ô)�D€A€qÝÔ" 1 dÑ+Ô+�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '­B¬F¨7µB´FÑ;Ô;�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ2°AÑ6Ô6Ð6Ý•*�bÔ2°CÑ8Ô8Ð8Ð8Ð8r6   c            	      ó|  — d„ } d„ }d„ }t           } | | d¦  «         |d¦  «         |d¦  «        ddd¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        ddd¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        ddd¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        ddd¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd	¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «         |d¦  «         |d¦  «        dddd¬
¦  «          | | d¦  «        t          j         |d¦  «        ddd¦  «          | | d¦  «        t          j         |d¦  «        ddd¦  «          | | d¦  «        t          j         |d¦  «        dddd	¬
¦  «         t          j        ddd¦  «        \  }}t          j        ddd¦  «        \  }}}t	          ||dd¦  «         t	          ||dd¦  «         t          j         |d¦  «        dd¦  «        \  }	}
t	          ||	|
¬¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        d d!¦  «         d S )"Nc                 ó   ‡ — ˆ fd„S )Nc                 ó0   •— t          j        | ‰|¦  «        S r  )r]   rC  ©rÍ   r  r_   s     €r*   r  z6test_roots_gegenbauer.<locals>.rootf.<locals>.<lambda>$  s   ø€ �RÔ0°°A°rÑ:Ô:€ r6   rR   ©r_   s   `r*   ra  z$test_roots_gegenbauer.<locals>.rootf#  s   ø€ Ø:Ð:Ð:Ð:Ð:r6   c                 ó   ‡ — ˆ fd„S )Nc                 ó0   •— t          j        | ‰|¦  «        S r  )r]   Úeval_gegenbauer©rÍ   ræ   r_   s     €r*   r  z6test_roots_gegenbauer.<locals>.evalf.<locals>.<lambda>&  s   ø€ �BÔ.¨q°!°QÑ7Ô7€ r6   rR   r~  s   `r*   rb  z$test_roots_gegenbauer.<locals>.evalf%  s   ø€ Ø7Ð7Ð7Ð7Ð7r6   c                 ó   ‡ — ˆ fd„S )Nc                 ó    •— d| dz  z
  ‰dz
  z  S )Nr   r   rV   rR   ©ræ   r_   s    €r*   r  z8test_roots_gegenbauer.<locals>.weightf.<locals>.<lambda>(  s   ø€ ˜!˜a 1™f™*¨!¨c©'Ñ2€ r6   rR   r~  s   `r*   rc  z&test_roots_gegenbauer.<locals>.weightf'  s   ø€ Ø2Ð2Ð2Ð2Ð2r6   rg  r.  rh   r   r/  r0  r1  r2  r3  çš™™™™™¹?r7  r   r  é2   éª   g     Pe@gê-�™—A=éî   g     €@r<  r   r   FTr@  r-   r  rA  r   r-  )	r  r]   Úeval_chebytrC  r   r   r  rD  rp   ©ra  rb  rc  rE  ræ   r  rL  r  rM  rN  rO  s              r*   Útest_roots_gegenbauerrŒ  "  sW  € ð;ð ;ð ;ð8ð 8ð 8ð3ð 3ð 3õ €CØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸QÑ?Ô?Ð?Ø€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸RÀeÐLÑLÔLÐLØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸SÀuÐMÑMÔMÐMà€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°qÑ9Ô9Ð9Ø€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°rÀÐFÑFÔFÐFØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°sÀÐGÑGÔGÐGà€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨¨R°Ñ3Ô3Ð3Ø€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨¨R°¸%Ð@Ñ@Ô@Ð@Ø€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨¨R°¸5ÐAÑAÔAÐAà€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°AÑ6Ô6Ð6Ø€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°B¸UÐCÑCÔCÐCØ€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°C¸eÐDÑDÔDÐDà€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°A¸EÐBÑBÔBÐBØ€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°B¸UÐCÑCÔCÐCØ€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨3°°C¸eÐDÑDÔDÐDð €Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°q¸uÐEÑEÔEÐEØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°rÀÐFÑFÔFÐFØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°sÀÐGÑGÔGÐGØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸QÀXÐNÑNÔNÐNØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸RÀeÐLÑLÔLÐLØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸SÀuÐMÑMÔMÐMð €Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°q¸uÐEÑEÔEÐEØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°rÀÐFÑFÔFÐFØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨c°2°sÀÐGÑGÔGÐGØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸QÀUÐKÑKÔKÐKØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸RÀeÐLÑLÔLÐLØ€Cˆˆˆe‰Œ�e�e˜E‘l”l G G¨E¡N¤N°C¸¸SÀuÐMÑMÔMÐMð
 €Cˆˆˆa‰Œ•"”. ' '¨!¡*¤*¨c°2°qÑ9Ô9Ð9Ø€Cˆˆˆa‰Œ•"”. ' '¨!¡*¤*¨c°2°rÑ:Ô:Ð:Ø€Cˆˆˆa‰Œ•"”. ' '¨!¡*¤*¨c°2°sÀÐGÑGÔGÐGåÔ˜q ! UÑ+Ô+�D€A€qÝÔ! ! Q¨Ñ-Ô-�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> ' '¨!¡*¤*¨b°!Ñ4Ô4�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ1°1°aÑ8Ô8Ð8Ý•*�bÔ1°3¸Ñ:Ô:Ð:Ý•*�bÔ1°1°dÑ;Ô;Ð;Ð;Ð;r6   c            	      ó¬  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd¦  «        \  }}t	          j        dd	¦  «        \  }}}t          ||d
d
¦  «         t          ||d
d
¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r.  rh   r/  r2  r0  r1  FTr@  r-   r   r  r   rA  )r   r;   r  r  r]   Úroots_chebytrŠ  r   r   r  rD  rp   ©rc  ræ   r  rL  r  rM  rN  rO  s           r*   Útest_roots_chebytr�  b  ó$  € ÝŒk˜!‰nŒnÔ(€GÝ•b”o¥r¤~°wÀÀRÈÑKÔKÐKÝ•b”o¥r¤~°wÀÀRÈÑLÔLÐLÝ•b”o¥r¤~°wÀÀRÈØ ð"ñ "ô "ð "õ Œ?˜1˜eÑ$Ô$�D€A€qÝŒo˜a Ñ&Ô&�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨2¨qÑ1Ô1�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bœo¨qÑ1Ô1Ð1Ý•*�bœo¨sÑ3Ô3Ð3Ð3Ð3r6   c                  ó¼   — t          j        d¦  «        \  } }| d d…         | dd …         }}t          ||d d d…          ¦  «         t          | d         d¦  «         d S )Né   r  é   r-   r   )r]   rŽ  r   )ræ   r  ÚposÚnegs       r*   Útest_chebyt_symmetryr—  t  sd   € ÝŒ?˜2ÑÔ�D€A€qØ��"�Œv�q˜˜˜”vˆ€CÝ��s˜4˜4˜R˜4”y�jÑ!Ô!Ð!Ý��2”˜ÑÔÐÐÐr6   c                  ó¨  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t	          j        dd¦  «        \  }}t	          j        dd¦  «        \  }}}t          ||dd¦  «         t          ||dd¦  «         t          j	        | d	d
¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r.  rh   r/  r2  FTr@  r-   r   r  r   rA  )r   rG   r  r  r]   Úroots_chebyuÚeval_chebyur   r   r  rD  rp   r�  s           r*   Útest_roots_chebyur›  z  ó  € ÝŒk˜!‰nŒnÔ(€GÝ•b”o¥r¤~°wÀÀRÈÑKÔKÐKÝ•b”o¥r¤~°wÀÀRÈÑLÔLÐLÝ•b”o¥r¤~°wÀÀRÈÑMÔMÐMåŒ?˜1˜eÑ$Ô$�D€A€qÝŒo˜a Ñ&Ô&�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨2¨qÑ1Ô1�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bœo¨qÑ1Ô1Ð1Ý•*�bœo¨sÑ3Ô3Ð3Ð3Ð3r6   c            	      ó¬  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd¦  «        \  }}t	          j        dd	¦  «        \  }}}t          ||d
d
¦  «         t          ||d
d
¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r÷   r†   r/  r2  r0  r1  FTr@  r   r   r  r   rA  )r   r   r  r  r]   Úroots_chebycÚeval_chebycr   r   r  rD  rp   r�  s           r*   Útest_roots_chebycr   ‹  r‘  r6   c                  ó¨  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t	          j        dd¦  «        \  }}t	          j        dd¦  «        \  }}}t          ||dd¦  «         t          ||dd¦  «         t          j	        | d	d
¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r÷   r†   r/  r2  FTr@  r   r   r  r   rA  )r   r.   r  r  r]   Úroots_chebysÚeval_chebysr   r   r  rD  rp   r�  s           r*   Útest_roots_chebysr¤  �  rœ  r6   c            	      ó¬  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd¦  «        \  }}t	          j        dd	¦  «        \  }}}t          ||d
d
¦  «         t          ||d
d
¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S ©Nr   r?  rh   r/  r2  r7  r1  FTr@  r   r   r  rA  )r   r©   r  r  r]   Úroots_sh_chebytÚeval_sh_chebytr   r   r  rD  rp   r�  s           r*   Útest_roots_sh_chebytr©  ®  ó0  € ÝŒn˜QÑÔÔ+€GÝ•bÔ(­"Ô*;¸WÀbÈ"ÈaÑPÔPÐPÝ•bÔ(­"Ô*;¸WÀbÈ"ÈbÑQÔQÐQÝ•bÔ(­"Ô*;¸WÀbÈ"Ø ð'ñ 'ô 'ð 'õ Ô˜a Ñ'Ô'�D€A€qÝÔ   DÑ)Ô)�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨1¨aÑ0Ô0�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ0°!Ñ4Ô4Ð4Ý•*�bÔ0°#Ñ6Ô6Ð6Ð6Ð6r6   c            	      ó¬  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd¦  «        \  }}t	          j        dd	¦  «        \  }}}t          ||d
d
¦  «         t          ||d
d
¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S r¦  )r   r»   r  r  r]   Úroots_sh_chebyuÚeval_sh_chebyur   r   r  rD  rp   r�  s           r*   Útest_roots_sh_chebyur®  À  rª  r6   c            	      ó°  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd	¦  «        \  }}t	          j        dd
¦  «        \  }}}t          ||dd¦  «         t          ||dd¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r.  rh   r/  r7  r1  r2  r0  FTr@  r-   r   r  r   rA  )r   r—   r  r  r]   rB  Úeval_legendrer   r   r  rD  rp   r�  s           r*   Útest_roots_legendrer±  Ò  s>  € ÝŒm˜AÑÔÔ*€GÝ•bÔ'­Ô)9¸7ÀCÈÈQÑOÔOÐOÝ•bÔ'­Ô)9¸7ÀCÈØ˜uð&ñ &ô &ð &å•bÔ'­Ô)9¸7ÀCÈØ ð'ñ 'ô 'ð 'õ Ô˜Q Ñ&Ô&�D€A€qÝÔ  4Ñ(Ô(�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨2¨qÑ1Ô1�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ/°Ñ3Ô3Ð3Ý•*�bÔ/°Ñ5Ô5Ð5Ð5Ð5r6   c            	      ó°  — t          j        d¦  «        j        } t          t          j        t          j        | ddd¦  «         t          t          j        t          j        | dddd¬¦  «         t          t          j        t          j        | dddd¬¦  «         t	          j        dd	¦  «        \  }}t	          j        dd
¦  «        \  }}}t          ||dd¦  «         t          ||dd¦  «         t          j	        | dd¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r?  rh   r/  r7  r1  r2  r0  FTr@  r   r   r  rA  )r   r–   r  r  r]   Úroots_sh_legendreÚeval_sh_legendrer   r   r  rD  rp   r�  s           r*   Útest_roots_sh_legendrerµ  å  s@  € ÝÔ˜qÑ!Ô!Ô-€GÝ•bÔ*­BÔ,?ÀÈ"ÈbÐRSÑTÔTÐTÝ•bÔ*­BÔ,?ÀÈ"ÈbØ˜uð&ñ &ô &ð &å•bÔ*­BÔ,?ÀÈ"ÈbØ ð'ñ 'ô 'ð 'õ Ô  5Ñ)Ô)�D€A€qÝÔ" 1 dÑ+Ô+�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨1¨aÑ0Ô0�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ2°AÑ6Ô6Ð6Ý•*�bÔ2°CÑ8Ô8Ð8Ð8Ð8r6   c            	      ó   — t          j        d¦  «        j        } t          t          j        t          j        | dt          j        d¦  «         t          t          j        t          j        | dt          j        dd¬¦  «         t          t          j        t          j        | dt          j        dd¬¦  «         t	          j        dd¦  «        \  }}t	          j        dd	¦  «        \  }}}t          ||d
d
¦  «         t          ||d
d
¦  «         t          j        | dt          j        ¦  «        \  }}t          |||¬¦  «         t          t          t          j        d¦  «         t          t          t          j        d¦  «         d S )Nr   r?  r/  r7  r1  r2  r0  FTr@  r   r  rA  )r   Úlaguerrer  r  r]   Úroots_laguerreÚeval_laguerrer    rr   r   r   r  rD  rp   r�  s           r*   Útest_roots_laguerrerº  ø  sG  € ÝŒm˜AÑÔÔ*€GÝ•bÔ'­Ô)9¸7ÀBÍÌÐPQÑRÔRÐRÝ•bÔ'­Ô)9¸7ÀBÍÌØ˜uð&ñ &ô &ð &å•bÔ'­Ô)9¸7ÀBÍÌØ ð'ñ 'ô 'ð 'õ Ô˜Q Ñ&Ô&�D€A€qÝÔ  4Ñ(Ô(�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> '¨1­b¬fÑ5Ô5�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ/°Ñ3Ô3Ð3Ý•*�bÔ/°Ñ5Ô5Ð5Ð5Ð5r6   c            
      óv  — d„ } d„ }d„ }t           } | | d¦  «         |d¦  «         |d¦  «        dt          j        d¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        dd¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d
d¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        dd¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d
d¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        dd¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d
d¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        dd¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d
d¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        dd¬	¦  «          | | d¦  «         |d¦  «         |d¦  «        dt          j        d
dd¬¦  «         t          j        ddd¦  «        \  }}t          j        ddd¦  «        \  }}}t          ||dd¦  «         t          ||dd¦  «         t          j         |d¦  «        dt          j        ¦  «        \  }	}
t          ||	|
¬¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         t          t          t          j        dd¦  «         d S )Nc                 ó   ‡ — ˆ fd„S )Nc                 ó0   •— t          j        | ‰|¦  «        S r  )r]   Úroots_genlaguerrer}  s     €r*   r  z7test_roots_genlaguerre.<locals>.rootf.<locals>.<lambda>  s   ø€ �RÔ1°!°Q¸Ñ;Ô;€ r6   rR   r~  s   `r*   ra  z%test_roots_genlaguerre.<locals>.rootf  s   ø€ Ø;Ð;Ð;Ð;Ð;r6   c                 ó   ‡ — ˆ fd„S )Nc                 ó0   •— t          j        | ‰|¦  «        S r  )r]   Úeval_genlaguerrer‚  s     €r*   r  z7test_roots_genlaguerre.<locals>.evalf.<locals>.<lambda>  s   ø€ �BÔ/°°1°aÑ8Ô8€ r6   rR   r~  s   `r*   rb  z%test_roots_genlaguerre.<locals>.evalf  s   ø€ Ø8Ð8Ð8Ð8Ð8r6   c                 ó   ‡ — ˆ fd„S )Nc                 ó:   •— | ‰z  t          j        |  ¦  «        z  S r  )r    rk  r…  s    €r*   r  z9test_roots_genlaguerre.<locals>.weightf.<locals>.<lambda>  s   ø€ ˜˜a™¥"¤&¨!¨¡*¤*Ñ,€ r6   rR   r~  s   `r*   rc  z'test_roots_genlaguerre.<locals>.weightf  s   ø€ Ø,Ð,Ð,Ð,Ð,r6   rn   r?  r   r/  r7  r1  r2  r0  r†  g›+¡†›„F=r   g‹N¼£îý<=r  r‡  r@  r5  )r   r   r   FTr†   r  r   rA  r   gš™™™™™ñ¿)
r  r    rr   r]   r¾  r   r   r  rD  rp   r‹  s              r*   Útest_roots_genlaguerrerÄ    sQ  € ð<ð <ð <ð9ð 9ð 9ð-ð -ð -õ €CØ€Cˆˆˆd‰Œ�U�U˜4‘[”[ ' '¨$¡-¤-°µR´V¸QÑ?Ô?Ð?Ø€Cˆˆˆd‰Œ�U�U˜4‘[”[ ' '¨$¡-¤-°µR´V¸RÀeÐLÑLÔLÐLØ€Cˆˆˆd‰Œ�U�U˜4‘[”[ ' '¨$¡-¤-°µR´V¸SÀuÐMÑMÔMÐMà€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨bµ"´&¸!Ñ<Ô<Ð<Ø€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨bµ"´&¸"À5ÐIÑIÔIÐIØ€Cˆˆˆc‰
Œ
�E�E˜#‘J”J  ¨¡¤¨bµ"´&¸#ÀGÐLÑLÔLÐLà€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨­B¬F°AÑ6Ô6Ð6Ø€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨­B¬F°B¸UÐCÑCÔCÐCØ€Cˆˆˆa‰Œ�%�%˜‘(”(˜G˜G A™JœJ¨­B¬F°C¸hÐGÑGÔGÐGà€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°qÑ9Ô9Ð9Ø€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°rÀÐFÑFÔFÐFØ€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°sÀÐGÑGÔGÐGà€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°qÑ9Ô9Ð9Ø€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°rÀÐFÑFÔFÐFØ€Cˆˆˆb‰	Œ	�5�5˜‘9”9˜g˜g b™kœk¨2­r¬v°sÀÈUÐSÑSÔSÐSåÔ  1 eÑ,Ô,�D€A€qÝÔ" 1 a¨Ñ.Ô.�G€A€qˆ!Ý�A�q˜% Ñ'Ô'Ð'Ý�A�q˜% Ñ'Ô'Ð'å”> ' '¨"¡+¤+¨rµ2´6Ñ:Ô:�L€CˆÝ�A�s Ð)Ñ)Ô)Ð)å•*�bÔ2°A°qÑ9Ô9Ð9Ý•*�bÔ2°C¸Ñ;Ô;Ð;Ý•*�bÔ2°A°tÑ<Ô<Ð<Ð<Ð<r6   c                  ó@   —  t          j        d¦  «        d¦  «         d S )NéA   rZ  )r]   r;   rR   r6   r*   Útest_gh_6721rÇ  5  s    € à…B„Iˆb�M„M�#ÑÔÐÐÐr6   )rú   rû   )/ro   r   rD  Únumpyr    r   r   Únumpy.testingr   r   Úscipyr   Úscipy.specialÚspecialr]   r
   Úscipy.special._orthogonalÚ_orthogonalr   r   rT   rx   r“   r§   r¹   rÊ   rá   rô   r  rP  r[  rd  ru  ry  rŒ  r�  r—  r›  r   r¤  r©  r®  r±  rµ  rº  rÄ  rÇ  rR   r6   r*   ú<module>rÏ     sh  ðØ €€€Ø *Ð *Ð *Ð *Ð *Ð *à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (ð9Kð 9Kð 9Kð 9Kð 9Kñ 9Kô 9Kð 9Kðx((ð ((ð ((ð ((ð ((ñ ((ô ((ð ((ðV$;ð $;ð $;ð $;ð $;ñ $;ô $;ð $;ðN=ð =ð =ð =ð =ñ =ô =ð =ð0=ð =ð =ð =ð =ñ =ô =ð =ð0=ð =ð =ð =ð =ñ =ô =ð =ð0;ð ;ð ;ð ;ð ;ñ ;ô ;ð ;ð<Cð Cð Cð Cð Cñ Cô Cð Cð:Mð Mð Mð Mð Mñ Mô Mð Mð (-ð.ð .ð .ð .ð.^:ð ^:ð ^:ð@5=ð 5=ð 5=ðn5ð 5ð 5ð8ð ð ð:9ð 9ð 9ð(><ð ><ð ><ð@4ð 4ð 4ð$ð ð ð4ð 4ð 4ð"4ð 4ð 4ð$4ð 4ð 4ð"7ð 7ð 7ð$7ð 7ð 7ð$6ð 6ð 6ð&9ð 9ð 9ð&6ð 6ð 6ð&'=ð '=ð '=ðTð ð ð ð r6   