a
    kº”hJ  ã                   @   sÜ   d dl mZmZmZmZ d dlmZmZ d dlm	Z	 d dl
mZmZ d dlmZmZmZ d dlmZ d dlmZmZ edd	d	ƒZed
d	d	ƒZdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zedd„ ƒZdd„ Z dS )é    )ÚMatrixSymbolÚMatAddÚMatPowÚMatMul)ÚGenericZeroMatrixÚ
ZeroMatrix)Ú
ShapeError)ÚeyeÚImmutableMatrix)ÚAddÚBasicÚS)Úadd)ÚXFAILÚraisesÚXé   ÚYc                   C   s<   t ttddtttdd  kr2t ttƒ ¡ ks8n J ‚d S )NT)Úevaluate)r   r   r   Údoit© r   r   úZ/var/www/auris/lib/python3.9/site-packages/sympy/matrices/expressions/tests/test_matadd.pyÚtest_evaluate   s    r   c                   C   s:   t ttƒ ¡ jtttƒ ¡ j  kr0ttfks6n J ‚d S ©N)r   r   r   r   Úargsr   r   r   r   r   Útest_sort_key   s    r   c                   C   sH   t ttdƒtdƒƒjd tƒs"J ‚t ttdƒtdƒƒjd tƒsDJ ‚d S )Né   r   )Ú
isinstancer   r	   r   r   r   r   r   r   r   Útest_matadd_sympify   s    "r   c                   C   sl   t tdƒdtdƒ tdƒƒ ¡ tdtdƒ ƒks4J ‚ttdƒdtdƒ tdƒƒ ¡ tdtdƒ ƒkshJ ‚d S )Nr   é   é   )r   r	   r   r
   r   r   r   r   r   Útest_matadd_of_matrices   s    4r!   c               	   C   sæ   t ddgddggƒ} t ddgddggƒ}t| t|dƒƒ ¡ | |d  ksLJ ‚t| t| |ƒƒ ¡ | | |  kspJ ‚t| tt| |ƒttd|  |ƒƒ ¡ t| tt| |ƒttd|  |ƒƒ ¡   krÜtd|  | |  | ttƒksân J ‚d S )Nr   r   é   r   é   )r
   r   r   r   r   r   r   r   ©ÚAÚBr   r   r   Útest_doit_args   s    $$""ÿþr'   c                   C   s$   t jtƒ ksJ ‚t jtjks J ‚d S r   )r   Úidentityr   r   ZZeror   r   r   r   Útest_generic_identity'   s    r)   c                   C   s(   t tddƒtddƒƒtddƒks$J ‚d S )Nr   ©r   r   r   r   r   r   Útest_zero_matrix_add,   s    r+   c                   C   s   t tdd„ ƒ d S )Nc                   S   s   t dtddƒƒS )Nr   r   r*   r   r   r   r   Ú<lambda>1   ó    z-test_matrix_Add_with_scalar.<locals>.<lambda>)r   Ú	TypeErrorr   r   r   r   Útest_matrix_Add_with_scalar/   s    r/   c                      sP   t dddƒ‰ t dddƒ‰tt‡ ‡fdd„ƒ t dddƒ‰ tt‡ ‡fdd„ƒ d S )Nr%   r   r"   r&   c                      s
   t ˆ ˆƒS r   ©r   r   r$   r   r   r,   7   r-   z"test_shape_error.<locals>.<lambda>c                      s
   t ˆ ˆƒS r   r0   r   r$   r   r   r,   :   r-   )r   r   r   r   r   r$   r   Útest_shape_error4   s
    r1   N)!Zsympy.matrices.expressionsr   r   r   r   Z"sympy.matrices.expressions.specialr   r   Zsympy.matrices.exceptionsr   Zsympy.matricesr	   r
   Z
sympy.corer   r   r   Zsympy.core.addr   Zsympy.testing.pytestr   r   r   r   r   r   r   r!   r'   r)   r+   r/   r1   r   r   r   r   Ú<module>   s$   

