
    sg                        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
Z
 d dlmZ d dlmZ d dlmZ d d	lmZ  ed
dd      Z eddd      Z ed      Z ed
ee      Zej/                         Z ed      \  ZZZZd Zd Zd Zd Z d Z!y)    )symbolsDummy)ElementwiseApplyFunction)Lambda)exp)sin)Matrix)MatrixSymbol)MatMul)simplifyX   Ykzx y z tc                  	   t        d      } t        | | dz        }t        |t              }t	        |t              sJ |j                         t        j                  d       k(  sJ |j                  dk(  sJ  |j                  |j                   |k(  sJ t        |      |k(  sJ |d    |t        d         k(  sJ t        |t              }t	        |t              sJ t	        |j                         t              sJ |t        j                  |      k(  sJ  |j                  |j                   |k(  sJ t        t        t        t        z        }|j                  t        t        z  k(  sJ |j                  j!                  t        | t        |                   sJ |j!                  t        t        z  j                  t                    sJ  |j                  |j                   |k(  sJ t	        t        |z  t"              sJ t        |z  j                  dk(  sJ t%        ddd      }||z  j                  dk(  sJ t        t        |j&                        t        t        |      z  }|j                  dk(  sJ t        t        |      t        t        |j&                        z  }|j                  d	k(  sJ t)        | t*        gt,        t.        gg      }t        t0        |      }t	        |t              sJ |j                  j!                  t        | t1        |                   sJ |j                  |k(  sJ |j                         |j                  t0              k(  sJ |j                         t)        t1        |       t1        t*              gt1        t,              t1        t.              gg      k(  sJ  |j                  |j                   |k(  sJ t        |t2              }|j                         |k(  sJ |j5                  t6        d      j                  d	k(  sJ ||z  j                  t6        t6        fk(  sJ t%        d
t6        t.              }|j&                  |z  |z  }t	        |t"              sJ |j                  d   |k(  sJ |j                  t.        t.        fk(  sJ ||z  }|j                  t6        t.        fk(  sJ t        d t2              }t        d t2              }||k7  sJ y )Nx   c                     | dz  S )Nr    r   s    b/var/www/html/venv/lib/python3.12/site-packages/sympy/matrices/expressions/tests/test_applyfunc.py<lambda>z'test_applyfunc_matrix.<locals>.<lambda>   s
    A     )r   r   r   r   Zr   )r   r   r   r   M   c                     | dz   S )Nr   r   r   s    r   r   z'test_applyfunc_matrix.<locals>.<lambda>N   s
    qs r   c                     | S Nr   r   s    r   r   z'test_applyfunc_matrix.<locals>.<lambda>O   s    q r   )r   r   r   Xd
isinstancedoit	applyfuncshapefuncargsr   r   r   r   exprfunctiondummy_eqr   r
   Tr	   yztr   Xksubsr   )r   doubler)   r   r   expr2expr3expr1s           r   test_applyfunc_matrixr6      s   c
AAq!t_F#FB/Dd455599;",,~6666::499dii D(((D>T!!!:4))))#FA.Dd4555diik#;<<<1;;v&&&&499dii D(((#C1-D99!==!!&CF"3444==!A#-...499dii D(((aff%%%dF>>V###S!QAdF>>V####C-.FsA.NND::#C+,DS!##,NND::AA A#C+Dd4555==!!&CF"344499>>99;!++c****99;&3q63q6"2SVSV4D!EFFFF499dii D(((#FB/D99;$99Q?  F***IA&&&S!QACCHQJEeV$$$::a=D   ;;1a&   FE;;1a&   $]B7E$["5EE>>r   c                      t         j                  t              } | d   t        t         d         k(  sJ t        j                  t              } | d   t        t         d         k(  sJ y )Nr   )r   r%   r   r"   afs    r   test_applyfunc_entryr:   S   sR    	
S	Bd8s1T7|###	c	Bd8s1T7|###r   c                     t         j                  t              } | j                         t	        t        t         d         t        t         d         t        t         d         gt        t         d         t        t         d         t        t         d         gt        t         d         t        t         d         t        t         d	         gg      k(  sJ y )
Nr   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   r   )r   r%   r   as_explicitr	   r8   s    r   test_applyfunc_as_explicitr=   \   s    	
S	B>>v	QtWs1T7|S4\2	QtWs1T7|S4\2	QtWs1T7|S4\2'     r   c                      t         j                  t              } | j                  j	                  t         j                  j                  t                    sJ y r!   )r0   r%   r   r,   r+   r8   s    r   test_applyfunc_transposer?   f   s3    	c	B44==,---r   c                      t        ddd      } t        t        t        dz        }| j                  t              }t        |t              sJ | j                  |      }t        |t              sJ |d| z  k(  sJ y )Nr   r   r   )r
   r   r   r%   r   r#   r   r   )r   r2   r)   s      r    test_applyfunc_shape_11_matricesrA   l   sl    S!QAAqs^F;;sDd4555;;vDdF###1Q3;;r   N)"sympy.core.symbolr   r   $sympy.matrices.expressions.applyfuncr   sympy.core.functionr   &sympy.functions.elementary.exponentialr   (sympy.functions.elementary.trigonometricr   sympy.matrices.denser	   "sympy.matrices.expressions.matexprr
   !sympy.matrices.expressions.matmulr   sympy.simplify.simplifyr   r   r   r   r0   r<   r"   r   r-   r.   r/   r6   r:   r=   r?   rA   r   r   r   <module>rK      s    , I & 6 8 ' ; 4 , aaCL#q!]]_Y
1a9x$.
r   