
    \h                         S r SSKJr  SSKJr  SSKJr  SSKJ	r	  SSK
Jr  SSKJrJrJrJrJrJrJrJrJr  SSKJrJrJr  S	 rS
 rS rS rS rS rS r S r!S r"g)zETests for efficient functions for generating orthogonal polynomials.     )Rational)S)symbols)Poly)raises)	jacobi_polygegenbauer_polychebyshevt_polychebyshevu_polyhermite_polyhermite_prob_polylegendre_polylaguerre_polyspherical_bessel_fn)xabc            	         [        [        S 5        [        S[        [        [
        SS9[        [        S-  [        S-  -   S-   [
        -  [        S-  -   [        S-  -
  [
        SS9:X  d   e[        S[        [        [
        5      S:X  d   e[        S[        [        [
        5      [        S-  [        S-  -
  [
        [        S-  [        S-  -   S-   -  -   :X  d   e[        S[        [        [
        5      [        S-  S	-  [        [        -  S
-  -
  [        S	-  -
  [        S-  S	-  -   [        S	-  -
  [
        S-  [        S-  S	-  [        [        -  S
-  -   [        [        SS	5      -  -   [        S-  S	-  -   [        [        SS	5      -  -   [        SS5      -   -  -   [
        [        S-  S
-  [        [        SS
5      -  -   [        S-  S
-  -
  [        [        SS
5      -  -
  -  -   [        R                  -
  :X  d   e[        S[        [        SS9[        [        S-  [        S-  -   S-   [
        -  [        S-  -   [        S-  -
  [
        SS9:X  d   eg )Nc                  6    [        S[        [        [        5      $ N)r   r   r   r        Y/var/www/auris/envauris/lib/python3.13/site-packages/sympy/polys/tests/test_orthopolys.py<lambda>"test_jacobi_poly.<locals>.<lambda>   s    {2q!Q7r      Tpolys   zZZ(a,b)domainr               )
r   
ValueErrorr   r   r   r   r   Qr   Halfr   r   r   test_jacobi_polyr*      s-   
:78q!Q.$	
1qsQAaC!A#%q3< < < < q!Q"a'''q!Q"acAaCi!QqS1Q3Y]2C&CCCCq!Q"q!tAv!A~!';ad1f'Dqs'J'(!tQT!Vac!e^a!Qi-G!Q$q&-P-.qAwY.79:1a.A (B(BDEq!tAv,-a1gIH6891QH?AB1Q7HK EL(L OPff(U V V V
 q!Qd+t	
1qsQAaC!A#%q0< < < <r   c                  D   [        [        S 5        [        S[        [        SS9[        S[        -  [        -  [        SS9:X  d   e[        S[        [        5      S:X  d   e[        S[        [        5      S[        -  [        -  :X  d   e[        S[        [        5      [        * [        S-  S[        S-  -  S[        -  -   -  -   :X  d   e[        S	[        [        5      [        S	-  S
[        S	-  -  S	-  S
[        S-  -  -   [        [        SS	5      -  -   -  [        S[        S-  -  S[        -  -
  -  -   :X  d   e[        S[        R                  5      R                  [        5      (       d   e[        S[        SS9[        S[        -  [        -  [        SS9:X  d   eg )Nc                  ,    [        S[        [        5      $ r   )r	   r   r   r   r   r   r   &test_gegenbauer_poly.<locals>.<lambda>*   s    r1a8r   r   Tr   r    zZZ(a)r!   r   r&   r$   r#   )
r   r'   r	   r   r   r   r(   r   r)   dummy_eqr   r   r   test_gegenbauer_polyr0   )   sk   
:89	1at $QqSUAg >? ? ? 1a#q(((1a#qs1u,,,1a#rAqD!AqD&1Q3,,?'????	1aqD!AqD&(Qq!tV+a!Qi781bAg!m;LLM M M 1aff%..q11111at,QqSUAg0NNNNr   c                  @   [        [        S 5        [        S[        SS9[	        [        5      :X  d   e[        S[        5      S:X  d   e[        S[        5      [        :X  d   e[        S[        5      S[        S-  -  S-
  :X  d   e[        S[        5      S[        S-  -  S[        -  -
  :X  d   e[        S[        5      S	[        S-  -  S	[        S-  -  -
  S-   :X  d   e[        S
[        5      S[        S
-  -  S[        S-  -  -
  S
[        -  -   :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S[        S-  -  -   S-
  :X  d   e[        S[        5      S[        S[        5      -  [        S[        5      -  [        -
  R                  5       :X  d   e[        S[        5      S[        S[        5      S-  -  S-
  R                  5       :X  d   e[        S5      R                  [        5      (       d   e[        SSS9[	        [        5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r
   r   r   r   r   r   &test_chebyshevt_poly.<locals>.<lambda>:       r15r   r   Tr   r   r    r&   r$   r#                   0      K   %   &   d   2   )r   r'   r
   r   r   expandr/   r   r   r   test_chebyshevt_polyrB   9   s   
:561at,Q7771a A%%%1a A%%%1a AadFQJ...1a AadFQqSL0001a AadFQq!tVOa$77771a Bq!tGbAg$5!$;;;;1a Bq!tGbAg$51a4$?!$CCCC2q!aA(>&>rST?U&UXY&Y%a%a%cccc3"qQ)?)B'BQ'F&N&N&PPPP1&&q))))1D)T!W444r   c                  H   [        [        S 5        [        S[        SS9[	        S[        -  5      :X  d   e[        S[        5      S:X  d   e[        S[        5      S[        -  :X  d   e[        S[        5      S[        S-  -  S-
  :X  d   e[        S[        5      S	[        S-  -  S[        -  -
  :X  d   e[        S[        5      S
[        S-  -  S[        S-  -  -
  S-   :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S[        -  -   :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S[        S-  -  -   S-
  :X  d   e[        S5      R                  S[        -  5      (       d   e[        SSS9[	        S[        -  5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r   r   r   r   r   r   &test_chebyshevu_poly.<locals>.<lambda>M   r4   r   r   Tr   r    r   r$   r&   r#   r6      r5   r9   r8   @   P      )r   r'   r   r   r   r/   r   r   r   test_chebyshevu_polyrJ   L   s{   
:561at,QqS	9991a A%%%1a AaC'''1a AadFQJ...1a AadFQqSL0001a Bq!tGbAg$5$99991a Bq!tGbAg$5!$;;;;1a Bq!tGbAg$51a4$?!$CCCC1&&qs++++1D)T!A#Y666r   c                  H   [        [        S 5        [        S[        SS9[	        S[        -  5      :X  d   e[        S[        5      S:X  d   e[        S[        5      S[        -  :X  d   e[        S[        5      S[        S-  -  S-
  :X  d   e[        S[        5      S	[        S-  -  S
[        -  -
  :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S
-   :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S[        -  -   :X  d   e[        S[        5      S[        S-  -  S[        S-  -  -
  S[        S-  -  -   S-
  :X  d   e[        S5      R                  S[        -  5      (       d   e[        SSS9[	        S[        -  5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r   r   r   r   r   r   #test_hermite_poly.<locals>.<lambda>^   s    |B2r   r   Tr   r    r   r$   r&   r#   rF   r6   r:   r5   r9      x   r8   rG   i    )r   r'   r   r   r   r/   r   r   r   test_hermite_polyrQ   ]   sz   
:231D)T!A#Y6661"""11$$$11a4!+++11a4"Q$...1AqD2ad7!2R!77771AqD3q!t8!3c!e!;;;;1AqD3q!t8!3c!Q$h!>!DDDD?##AaC((((&$qs)333r   c                     [        [        S 5        [        S[        SS9[	        [        5      :X  d   e[        S[        5      S:X  d   e[        S[        5      [        :X  d   e[        S[        5      [        S-  S-
  :X  d   e[        S[        5      [        S-  S[        -  -
  :X  d   e[        S[        5      [        S-  S	[        S-  -  -
  S-   :X  d   e[        S
[        5      [        S
-  S[        S-  -  -
  S[        -  -   :X  d   e[        S	[        5      [        S	-  S[        S-  -  -
  S[        S-  -  -   S-
  :X  d   e[        S5      R                  [        5      (       d   e[        SSS9[	        [        5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r   r   r   r   r   r   (test_hermite_prob_poly.<locals>.<lambda>o   s    0Q7r   r   Tr   r   r    r&   r$   r8   r5   
      -   )r   r'   r   r   r   r/   r   r   r   test_hermite_prob_polyrX   n   sT   
:78Q.$q'999Q"a'''Q"a'''Q"adQh...Q"adQqSj000Q"adQq!tVma&7777Q"adR1Wnr!t&;;;;Q"adR1Wnr!Q$w&>&CCCCQ((++++Qd+tAw666r   c                  F   [        [        S 5        [        S[        SS9[	        [        SS9:X  d   e[        S[        5      S:X  d   e[        S[        5      [        :X  d   e[        S[        5      [        S	S5      [        S-  -  [        SS5      -
  :X  d   e[        S	[        5      [        S
S5      [        S	-  -  [        S	S5      [        -  -
  :X  d   e[        S[        5      [        SS5      [        S-  -  [        SS5      [        S-  -  -
  [        S	S5      -   :X  d   e[        S
[        5      [        SS5      [        S
-  -  [        SS5      [        S	-  -  -
  [        SS5      [        -  -   :X  d   e[        S[        5      [        SS5      [        S-  -  [        SS5      [        S-  -  -
  [        SS5      [        S-  -  -   [        S
S5      -
  :X  d   e[        S5      R                  [        5      (       d   e[        SSS9[	        [        5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r   r   r   r   r   r   $test_legendre_poly.<locals>.<lambda>       }R3r   r   Tr   QQr!   r   r    r&   r5   r$   #   r#      ?   F   rV   r8      r6   i;  i   )r   r'   r   r   r   r(   r/   r   r   r   test_legendre_polyrd      s   
:34AT*d1T.BBBBA!###A!###A!Aq'!Q$,1a"8888A!Aq'!Q$,1a"::::A!B(1a4-!B(1a4-"?!Aq'"IIIIA!B(1a4-!B(1a4-"?!B(1*"LLLLA!R#A##r
1a4#(*+C*QT/#:<=aH#E E E E $$Q''''$'47222r   c                  L   [        [        S 5        [        S[        SS9[	        [        * S-   SS9:X  d   e[        S[        5      S:X  d   e[        S[        5      [        * S-   :X  d   e[        S[        5      [        SS5      [        S-  -  [        S	S5      [        -  -
  S-   :X  d   e[        S
[        5      [        SS5      * [        S
-  -  [        SS5      [        S-  -  -   [        SS5      [        -  -
  S-   :X  d   e[        S	[        5      [        SS5      [        S	-  -  [        SS5      [        S
-  -  -
  [        SS5      [        S-  -  -   [        SS5      [        -  -
  S-   :X  d   e[        S[        5      [        SS5      * [        S-  -  [        SS5      [        S	-  -  -   [        SS5      [        S
-  -  -
  [        SS5      [        S-  -  -   [        SS5      [        -  -
  S-   :X  d   e[        S[        5      [        SS5      [        S-  -  [        SS5      [        S-  -  -
  [        SS5      [        S	-  -  -   [        SS5      [        S
-  -  -
  [        SS5      [        S-  -  -   [        SS5      [        -  -
  S-   :X  d   e[        S[        [        5      S:X  d   e[        S[        [        5      [        * [        -   S-   :X  d   e[        S[        [        5      [        S-  S-  [        * S-
  [        -  -   [        S-  S-  -   [        [        S
S5      -  -   S-   :X  d   e[        S
[        [        5      [        S
-  * S-  [        S-  [        S
5      S-  -   [        S-  -  -   [        S-  * S-  [        [        SS5      -  -
  S
-
  [        -  -   [        S
-  S-  -   [        S-  -   [        [        SS5      -  -   S-   :X  d   e[        S5      R                  [        * S-   5      (       d   e[        SSS9[	        [        * S-   5      :X  d   eg )Nc                  "    [        S[        5      $ r   )r   r   r   r   r   r   $test_laguerre_poly.<locals>.<lambda>   r\   r   r   Tr   r]   r!   r   r    r$   r&   r8   	   r;   rI   r6   H   `   r5   rO         iX  rP   $   i  i`	  i  i     )r   r'   r   r   r   r(   r   r/   r   r   r   test_laguerre_polyro      s>   
:34AT*dA26$.GGGGA!###A1"q&(((A!Aq'!Q$,1a":Q">>>>A1Q7(1a4-!Aq'!Q$,">2q!"Ka"OOOOA!	2#!t#Bi1n#%'(RyA~#689"b	!#DFG#H H H HA1Q9*QT/Ab#Jq!tO"CaSGQ$G #3QT)#*,-c3KM#:<=#> > > >A!As)AqD.1R:ad?"BQsC[QRTUQUEU"UXYZ^`cXdefhieiXi"ilmnrtwlxyz|}y}l}"}  AB  CG  IL  AM  NO  AO  #O  RS  #S  S  S  SAq!Q&&&Aq!aR!VaZ///Aq!QT!VrAvqj%81a46%AAa1gI%MPQ%QQQQAq!adU1W!a	77 1d0 &!teAg!Aq'	)A-q0&134a46&:<=qD&ACDQr1X:&NPQ&R R R R $$aR!V,,,,$'4Q<777r   c                     [        S5      u  p[        SU5      SUS-  -  :X  d   e[        SU5      SU-  SUS-  -  -   :X  d   e[        SU5      SUS-  -  SUS-  -  -   :X  d   e[        SU5      SU-  S	US-  -  -
  S
US-  -  -   :X  d   eg )Nzx zr   r    r   r&   irV   r$   rW   rc   r5   )r   r   )r   zs     r   test_spherical_bessel_fnrr      s    5>DAq!$!Q$...q!$1qAv555q!$1a4"QT'(9999q!$!bAgAqD(@@@@r   N)#__doc__sympy.core.numbersr   r(   sympy.core.singletonr   sympy.core.symbolr   sympy.polys.polytoolsr   sympy.testing.pytestr   sympy.polys.orthopolysr   r	   r
   r   r   r   r   r   r   	sympy.abcr   r   r   r*   r0   rB   rJ   rQ   rX   rd   ro   rr   r   r   r   <module>r{      s]    K , " % & '
 
 
  <"O 5&7"4"7"3$82Ar   