
    \h3(                        S SK Jr  S SKJr  \" S5      r\(       a&  \R
                  \R                  \R                  srrrOSrS SK	J
r
JrJr  S SKJrJr  S SKJr  S SKJrJrJrJr  S S	KJr  S S
KrS S
KrS SKJrJrJr  S SKJ r   S SK!J"r"  S SK#J$r$  S r%S r&S r'S r(S r)S r*S r+S r,S r-S r.S r/S r0S r1S r2S r3S r4\ S 5       r5S  r6S! r7S" r8S# r9S$ r:S% r;g
)&    )version_tuple)import_modulenumpyT)FloatIntegerRational)Symbolsymbols)sin)Matrix
list2numpymatrix2numpysymarray)lambdifyN)xyz)conserve_mpmath_dps)ignore_warnings)raisesc            
         S n [        S5      n[        S5      n[        SS5      [        S5      UU[        X5      U-  [	        S5      [        S5      /n[        S	/5      [        / S
Q5      [        XS-  [        S5      /5      [        X-  [        U5      -  S[        S5      /5      /nU H  nU H  nU " X5        M     M     g )Nc                 D    X-   X-   X-
  X-
  X-  X-  X-  X-  X-  X-  /
ng )N )sympy_objectnumpy_array_s      W/var/www/auris/envauris/lib/python3.13/site-packages/sympy/external/tests/test_numpy.pys test_systematic_basic.<locals>.s%   sE    '"""""""##	%    r   r         z1.3   g      @   )r"      )r	   r   r   powr   arrayr   )r   r   r   
sympy_objs
numpy_objss        r   test_systematic_basicr+   $   s    
% 	sAsAAe		A	!
c
J 	qc
jqQ$$%qs3q6z1hqk*+	J AaG  r    c                  2   [        S5      n [        S5      n[        S5      [        U 5      :X  d   e[        U /5      [        U /5      :X  d   e[        [        /5      [        [        /5      :X  d   e[        [        5      [        [        S5      5      :X  d   e[        U [        -   5      [        S[        -   5      :X  d   e[        XU/5      nU[        XU/5      :H  R	                  5       (       d   eU[        U SS/5      :H  R	                  5       (       d   eg )Nr$   r   r   )r   r(   r   r	   all)onezeroXs      r   test_basicsr1   I   s    
1+CA;D8uSz!!!#<5#<'''!:s###8uVC[))))q>U1q5\)))s$ A4())..0000Q{##((****r    c                  X   [        S5      n [        S5      n[        XU/5      nX-  n[        [        S5      [        SS5      -   /5      nX"-   nU[        SS[        S5      -  -   /5      :X  d   eUS-   nU[        SS[        S5      -  -   /5      :X  d   eX"-
  nU[        S/5      :X  d   eg )Nr$   r   ar!   )r   r(   r	   )r.   r/   r0   Ys       r   test_arraysr5   W   s    
1+CA;Ds$ AAvc{Xa^+,-A	Aq1VC[=()****	AAq1VC[=()****	Aqc
??r    c                      [        [        S-  [        /5      n [        U [        5      (       d   eU S   [        S-  :X  d   eU S   [        :X  d   e[	        U 5      S:X  d   eg )Nr!   r   r$   )r   r   
isinstancendarraylenr3   s    r   test_conversion1r;   e   s[    AqD!9Aa!!!!Q41a4<<Q4199q6Q;;r    c                     S[        [        S-  [        /5      -  n [        S[        S-  -  S[        -  /5      nX:H  R                  5       (       d   e[        S5      n[        S5      n[        X#U/5      nX$-  n[        [	        S5      [        SS5      -   /5      nXD-   nU[        SS[	        S5      -  -   /5      :X  d   eUS-   nU[        SS[	        S5      -  -   /5      :X  d   eXD-
  nU[        S/5      :X  d   eg )Nr!   r$   r   r3   )r   r   r-   r   r	   r(   )r3   br.   r/   r0   r4   s         r   test_conversion2r>   o   s    	*adAY
AAadFAaC=!AF<<>>>
1+CA;DCt$%AAF3K(1a.012A	Aq1VC[=()****	AAq1VC[=()****	Aqc
??r    c                      [        [        S-  [        /5      [        [        S-  [        /5      :H  R                  5       (       d   eg )Nr!   )r(   r   r   r-   r   r    r   test_list2numpyr@      s6    1a4)
AqD!9 55::<<<<r    c                     [        [        [        S-  /SS[        -  //5      n [        U R                  [        S5      5      [        SS/SS//5      :H  R	                  5       (       d   e[        [        [        5      [        S-  /SS[        -  //5      n [        U R                  [        S5      5      [        [        S5      S/SS//5      :H  R	                  5       (       d   eg Nr!   r#      r$   )r   r   r(   subsr-   r   ms    r   test_Matrix1rG      s    AqD	Aqs8$%A!&&A,51a&1a&)9#::??AAAAQAAaC)*A!&&A,53q61+1v)>#??DDFFFFr    c                  t   [        [        [        S-  /SS[        -  //5      n [        [        5         [	        U R                  [        S5      5      [	        SS/SS//5      :H  R                  5       (       d   e S S S 5        [        [        [        5      [        S-  /SS[        -  //5      n [        [        5         [	        U R                  [        S5      5      [	        [        S5      S/SS//5      :H  R                  5       (       d   e S S S 5        g ! , (       d  f       N= f! , (       d  f       g = frB   )r   r   r   PendingDeprecationWarningmatrixrD   r-   r   rE   s    r   test_Matrix2rK      s    AqD	Aqs8$%A	2	3qvva|$AA/?(@@EEGGGG 
4QAAaC)*A	2	3qvva|$QaV/D(EEJJLLLL 
4	3 
4	3 
4	3s   AD>AD)
D&)
D7c                  ~   [        SS/SS//5      n [        U 5      [        SS/SS//5      :X  d   e[        U 5      [        SS/SS//5      :w  d   e[        [        S5      S/SS//5      n [        U 5      [        [        S5      S/SS//5      :X  d   e[        U 5      [        [        S5      S/SS//5      :w  d   eg Nr!   rC   r#   r$   r   )r(   r   r   r:   s    r   test_Matrix3rN      s    1v1vA!9AA/0000!9AA/0000A{QF#$A!9QaV45555!9QaV45555r    c                  "   [        [        5         [        SS/SS//5      n S S S 5        [        W 5      [        SS/SS//5      :X  d   e[        U 5      [        SS/SS//5      :w  d   e[        [        5         [        [	        S5      S/SS//5      n S S S 5        [        U 5      [        [	        S5      S/SS//5      :X  d   e[        U 5      [        [	        S5      S/SS//5      :w  d   eg ! , (       d  f       N= f! , (       d  f       Nr= frM   )r   rI   rJ   r   r   r:   s    r   test_Matrix4rP      s    	2	3QFQF#$ 
4!9AA/0000!9AA/0000	2	3SVQK!Q() 
4!9QaV45555!9QaV45555 
4	3 
4	3s   C/9D /
C= 
Dc            
         [        / SQ[        [        [        /S[        -  S[        [        -  //5      n [	        [
        5         [        / SQ[        SS/[        [        [        S-  //5      nS S S 5        U W-   [        / SQS[        -  [        S-   [        S-   /S[        -  [        -   [        S-
  [        [        -  [        S-  -   //5      :X  d   eX-   [        / SQS[        -  [        S-   [        S-   /S[        -  [        -   [        S-
  [        [        -  [        S-  -   //5      :X  d   eX-   U R                  U5      :X  d   eg ! , (       d  f       N= f)	Nr$   r!   r"   r!   i)r!   r"   rC   r#      )r"   r#      2   )r   r   r   r   r   rI   rJ   add)MrF   s     r   test_Matrix_sumrX      s   	Aq!9qsC1o67A	2	3I1ay1aA,78 
4q5FI!QUAE':QqS1Wa"faPQcTUWXTXj<YZ[[[[5FI!QUAE':QqS1Wa"faPQcTUWXTXj<YZ[[[[5AEE!H	 
4	3s   *E
Ec                  Z   [        / SQ[        [        [        //5      n [        [        5         [        SS/[        S/[        [        S-  //5      nS S S 5        U W-  [        SS[        -  -   SS[        S-  -  -   /S[        -  [        [        -  -   [        S-  -   S[        -  S[        -  -   [        [        S-  -  -   //5      :X  d   eX-  [        SS[        -  -   SS[        -  -   SS[        -  -   /S[        -  S[        -  S[        -  -   S	[        -  /[        [        [        S-  -  -   S[        -  [        [        S-  -  -   S[        -  [        [        S-  -  -   //5      :X  d   e[        S/5      nUS
   U -  SU -  :X  d   eXS
   -  SU -  :X  d   eg ! , (       d  f       GNP= f)NrR   r!   rC   rS   r#      r"   rT   	   r   )r   r   r   r   rI   rJ   r   r(   )rW   rF   r3   s      r   test_Matrix_mulr\      s   	Aq!9%&A	2	3QFQFQ1I./ 
4Q3&ac'"qAv+.	
1qsQT	1Q319qAv-.    
 3&!G!ac'AaC0!!ac	AaC0	
Qq!tVQqS1QT6\1Q31a4<0    
 	qc
AQ4!8q1ut8q1u 
4	3s   $F
F*c                  l     " S S5      n U " 5       n[        U5      [        / SQ/ SQ/ SQ/5      :X  d   eg )Nc                   "    \ rS rSr\S4S jrSrg)#test_Matrix_array.<locals>.matarray   Nc                 Z    Ub  U(       d  [        S5      eSSKJn  U" / SQ/ SQ/ SQ/5      $ )Nz=Cannot implement copy=False when converting Matrix to ndarrayr   )r(   rR   rC   r#   rS   rT   r%   r[   )	TypeErrorr   r(   )selfdtypecopyr(   s       r   	__array__-test_Matrix_array.<locals>.matarray.__array__   s+     _``#)Y	:;;r    r   )__name__
__module____qualname____firstlineno__objectrh   __static_attributes__r   r    r   matarrayr_      s    "(t 	<r    rp   rR   rb   rc   )r   )rp   matarrs     r   test_Matrix_arrayrr      s3    < < ZF&>VY	9$EFFFFr    c            	      >   [        [        S[        S-  /S[        [        5      -  S//5      5      n [	        U [
        5      (       d   eU R                  S:X  d   eU S   S:X  d   eU S   [        S-  :X  d   eU S   S[        [        5      -  :X  d   eU S	   S:X  d   eg )
Nr$   r!   r"   r   )r!   r!   r   r   )r   r$   )r$   r   )r$   r$   )r   r   r   r   r7   r8   shaper:   s    r   test_matrix2numpyrv      s    VaAY3q61678Aa!!!!77fT7a<<T7ad??T7aAhT7a<<r    c            	      r   [        SS[        [        5      /[        S-  [        [        SS5      //5      n [	        SS[        [        5      /[        S-  [        [        SS5      //5      n[        U 5      U:H  R                  5       (       d   e[        U 5      R                  [        R                  S5      :X  d   e[        [        SS/SS//5      SS9n[        [        SS/SS//5      SS9nUR                  [        R                  S5      :X  d   eUR                  [        R                  S5      :X  d   eg )	Nr$   r!   rn   
      int8rf   float64)	r   r   r   r   r(   r   r-   rf   r   )r3   r=   cds       r   test_matrix2numpy_conversionr      s   As1vAq(1a. 9:;A1c!f~1a!Q89:AOq %%''''?  EKK$9999VaVb"X./v>AVaVb"X./yAA77ekk&))))77ekk),,,,r    c                     [        SS5      [        S[        -  S/5      -  [        [        S/5      :H  R                  5       (       d   e[        SS5      [        S[        -  S/5      -   [        S[        -  [        SS5      -   [        SS5      /5      :H  R                  5       (       d   e[	        S5      [        S[        -  S/5      -  [        [	        S5      [        -  S/5      :H  R                  5       (       d   e[	        S5      [        S[        -  S/5      -   [        S[        -  [	        S5      -   [	        S5      /5      :H  R                  5       (       d   eg )Nr$   r!   r   z0.5z1.0)r   r(   r   r-   r   r   r    r   test_issue_3728r      s7   QN5!A#q?*eQFm;@@BBBBQNU	
1a AaC(1a.0(1a.ABCDGCEJ J J%L!Qx(E5<>12E,FFKKMMMM%L5	
1a AaC%,.e=>?@CF F Fr    c                     S[         R                  l        [         R                  " S5      n [	        [
        [        [
        5      S5      nSnU* U" S5      U -
  s=:  a  U:  d   e   e[        [        R                  5      [        S5      :  a%  [        [        5         U" [
        5        S S S 5        g [        [        5         U" [
        5        S S S 5        g ! , (       d  f       g = f! , (       d  f       g = f)NrZ   z0.198669330795061215459412627r   gV瞯<g?z1.17)mpmathmpdpsmpfr   r   r   r   r   __version__r   rd   AttributeError)sin02fprecs      r   test_lambdifyr      s    FIIMJJ67ECFG$AD51S6E>(D((((( U&&'=+@@IaD  N#aD $#  $#s   CC)
C&)
C7c                      [        [        [        [        S[        -  /SS//5      S[        R                  0S/5      n U " S5      [	        SS/SS//5      :H  R                  5       (       d   eg )Nr!   r$   ImmutableMatrixr   )r   r   r   r   r(   r-   )r   s    r   test_lambdify_matrixr     sf    FQ!Hq!f-.2CU[[1QSZ0[\AaDEAq6Aq6*++002222r    c                     [         R                  " [        S-  [        [        -  [        [        -  /[        [        -  [        S-  [        [        -  /[        [        -  [        [        -  [        S-  //5      n [        [        [        [        4U S[        R                  0S/5      nSu  p#n[        US-  X#-  X$-  /X2-  US-  X4-  /XB-  XC-  US-  //5      nU" X#U5      n[        R                  Xe5      (       d   eg )Nr!   r   r   g      ?g       @g      @)	sympyr   r   r   r   r   r   r(   allclose)rW   r   xhyhzhexpectedactuals          r    test_lambdify_matrix_multi_inputr     s    q!tQqS!A#&sAqD!A#&sAaCA&( 	)A 	!QA!2EKK @'JKAJBBr1ubeRU+ub!eRU+ubeRU+- .H rr]F>>&++++r    c                  J   [         R                  " S5      n [        U S   S-  U S   U S   -  U S   U S   -  /U S   U S   -  U S   S-  U S   U S   -  /U S   U S   -  U S   U S   -  U S   S-  //5      n[        XS[        R
                  0S/5      n[        / SQ5      n[        US   S-  US   US   -  US   US   -  /US   US   -  US   S-  US   US   -  /US   US   -  US   US   -  US   S-  //5      nU" U5      n[        R                  XT5      (       d   eg )Nr0   r   r!   r$   r   r   r   )r   DeferredVectorr   r   r   r(   r   )r0   rW   r   Xhr   r   s         r   test_lambdify_matrix_vec_inputr     sr   S!A	
1q!A$qt)QqT!A$Y'	
1adAaD!GQqT!A$Y'	
1adAaD1IqtQw') 	*A 	*EKK8'BCA		Br!uaxAr!ubeBqEk:!uRU{BqE1HbeBqEk:!uRU{BqE"Q%KA:< =H rUF>>&++++r    c                      SSK Jn   U R                  5        H1  u  pU[        R                  ;   d   eU[
        R                  ;   a  M1   e   g )Nr   )NUMPY_TRANSLATIONS)sympy.utilities.lambdifyr   itemsr   __dict__r   )r   symmats      r   test_lambdify_translr   $  s>    ;&,,.enn$$$enn$$$ /r    c                     SSK n SSKJn  [        S5      n[	        SS5      n[	        SS5      nUR                  X0R                  U[        S95        US   US   :X  d   e[	        SS5      n[	        SS5      nUS   US   :X  a   e[        S	5      nUR                  XPR                  U[        S95        [	        SS
5      nUR                  S
:X  d   e[        S5      u  pUS   U	:X  d   eUS   U
:X  d   e[	        SS5      nUR                  S:X  d   e[        S5      u  pnUS   U:X  d   eUS   U:X  d   eUS   U:X  d   eg)z/Test creation of numpy arrays of SymPy symbols.r   Nz_0,_1,_2 r"   r{   r3   r=   za_0,a_1,a_2)r!   r"   za_0_0,a_1_2rt   )r$   r!   )r!   r"   r!   za_0_0_0,a_1_2_0,a_1_2_1)r   r   r   )r$   r!   r   )r$   r!   r$   )	r   numpy.testingtestingr
   r   assert_array_equalr(   rn   ru   )npnptsymss1s2r3   r=   asymsa2da00a12a3da000a120a121s                  r   test_symarrayr   +  s_    :D	"aB	"aB2xxFx;<a5BqE>>aAaAtqt|M"E1hhuFh;< 3
C99}%HCt9t9
3	
"C99	!!!89Dw<4w<4w<4r    c                      [         R                  [        5      " / SQ5      [         R                  [        S5      [        S5      [        S5      /5      :H  R	                  5       (       d   eg )NrR   r$   r!   r"   )r   	vectorizer   r(   r-   r   r    r   test_vectorizer   M  sW    OO ;;AAA'?@ABE#%H H Hr    )<sympy.external.importtoolsr   sympy.externalr   r   r(   rJ   r8   disabledsympy.core.numbersr   r   r   sympy.core.symbolr	   r
   (sympy.functions.elementary.trigonometricr   sympy.matrices.denser   r   r   r   r   r   r   r   	sympy.abcr   r   r   sympy.utilities.decoratorr   sympy.utilities.exceptionsr   sympy.testing.pytestr   r+   r1   r5   r;   r>   r@   rG   rK   rN   rP   rX   r\   rr   rv   r   r   r   r   r   r   r   r   r   r   r    r   <module>r      s    5 (g"[[%,,E67 H : 9 / 8 M M -     9 6 'J+$=GM66&G	-F  "3
,, % DHr    