
    g                     @   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                                Z ed          \  ZZZZd Zd Zd Zd Z d Z!dS )    )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 |                                t                              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	          |                                t                    sJ |t                              |          k    sJ  |j        |j	         |k    sJ t          t          t          t          z            }|j        t          t          z  k    sJ |j                            t          | t          |                               sJ |                    t          t          z                      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                            t          | t1          |                               sJ |j        |k    sJ |                                |                    t0                    k    sJ |                                t)          t1          |           t1          t*                    gt1          t,                    t1          t.                    gg          k    sJ  |j        |j	         |k    sJ t          |t2                    }|                                |k    sJ |                    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                    }||k    sJ d S )Nx   c                     | dz  S )Nr    r   s    k/var/www/html/ai-engine/env/lib/python3.11/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5599;;",,~~666666:49di D((((D>>T!!!!:4))))))#FA..Dd455555diikk#;<<<<<1;;v&&&&&&49di D((((#C1--D9!=!!&CFF"3"344444==!A#--.....49di D((((aff%%%%%dF>V####S!QAdF>V#####C--.FsA.N.NND:#C++,DS!#,N,NND:AA  A#C++Dd455555=!!&CFF"3"3444449>>>>99;;!++c******99;;&3q663q66"2SVVSVV4D!EFFFFFF49di D((((#FB//D99;;$99Q?? F****IA&&&&S!QACHQJEeV$$$$$:a=D    ;1a&    FE;1a&    $]]B77E$[["55EE>>>>>>r   c                     t                               t                    } | d         t          t           d                   k    sJ t                              t                    } | d         t          t           d                   k    sJ d S )Nr   )r   r%   r   r"   afs    r   test_applyfunc_entryr:   S   sh    	
S		Bd8s1T7||####	c		Bd8s1T7||######r   c                  Z   t                               t                    } |                                 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 d S )
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                               t                    } | j                            t           j                            t                              sJ d S r!   )r0   r%   r   r,   r+   r8   s    r   test_applyfunc_transposer?   f   sA    	c		B4==,,-------r   c                  2   t          ddd          } t          t          t          dz            }|                     t                    }t          |t                    sJ |                     |          }t          |t                    sJ |d| z  k    sJ d S )Nr   r   r   )r
   r   r   r%   r   r#   r   r   )r   r2   r)   s      r    test_applyfunc_shape_11_matricesrA   l   s    S!QAAqs^^F;;sDd455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      so   , , , , , , , , I I I I I I & & & & & & 6 6 6 6 6 6 8 8 8 8 8 8 ' ' ' ' ' ' ; ; ; ; ; ; 4 4 4 4 4 4 , , , , , , LaLaGCLL\#q!]]__WY
1a9 9 9x$ $ $  . . .
 
 
 
 
r   