o
    *Î®c¸  ã                   @   s°   d dl mZ 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mZ d dlmZmZ d dlmZmZ eegZeeeegZd	d
„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS )é    )Úraises)ÚsinÚcos)ÚMatrix)Úsimplify)ÚArray)ÚImmutableDenseNDimArrayÚMutableDenseNDimArray)ÚImmutableSparseNDimArrayÚMutableSparseNDimArray)ÚxÚyc                     s–  t D ]Æ} | g d¢g d¢gƒ‰ ˆ d d …df tddgƒksJ ‚ˆ d d …df tddgƒks.J ‚ˆ d d …d	f td
dgƒks>J ‚ˆ d d …df tddgƒksNJ ‚ˆ d d …df tddgƒks^J ‚ˆ d d …df tddgƒksnJ ‚ˆ d d …df tddgƒks~J ‚ˆ d d …df td
dgƒksŽJ ‚ˆ d d …d
f tddgƒksžJ ‚ˆ d d …df tddgƒks®J ‚tt‡ fdd„ƒ tt‡ fdd„ƒ ˆ d dksÈJ ‚qd S )N)é   é   é   é   é   )é   é   é   é	   é
   éÿÿÿÿr   r   éþÿÿÿr   r   éýÿÿÿr   r   éüÿÿÿr   r   éûÿÿÿr   r   r   c                      s   ˆ d d …df S )Niúÿÿÿ© r   ©Ú
test_arrayr   úO/tmp/pip-target-vg8gfxp4/lib/python/sympy/tensor/array/tests/test_ndim_array.pyÚ<lambda>(   ó    z-test_array_negative_indices.<locals>.<lambda>c                      s   ˆ dd d …f S )Nr   r   r   r   r   r    r!   )   r"   )r   r   )Úarray_typesr   r   Ú
ValueError)Ú	ArrayTyper   r   r    Útest_array_negative_indices   s              ðr&   c                  C   sà   t tdt ƒdttƒ ttƒ  gƒ} t ttƒd ttƒd  dgƒ}t ttd  tttƒd  tttƒd    dttƒ ttƒ gƒ}t| ƒt dgƒksPJ ‚t|ƒt ddgƒks\J ‚t|ƒt td tdt ƒgƒksnJ ‚d S )Nr   r   r   )r   r   r   r   r   r   )ÚAÚBÚCr   r   r    Útest_issue_18361.   s   & D(r*   c                      s@   t ddgddggƒ‰ tddgddggƒ‰tt‡ ‡fdd„ƒ d S )Nr   r   r   r   c                      s   ˆ ˆ S )Nr   r   ©r'   r(   r   r    r!   :   s    z"test_issue_20222.<locals>.<lambda>)r   r   r   Ú	TypeErrorr   r   r+   r    Útest_issue_202227   s   r-   c                  C   sB   t D ]} | g ƒ}t|| ƒsJ ‚|jdksJ ‚t|ƒg ksJ ‚qd S )N)r   )r#   Ú
isinstanceÚshapeÚlist©Ú
array_typer'   r   r   r    Útest_issue_17851=   s   ür3   c                  C   s:   t D ]} | g d¢ƒ}|d  d7  < |d dksJ ‚qd S )N)r   r   r   r   r   )Úmutable_array_typesr1   r   r   r    Útest_issue_and_18715E   s
   ýr5   N)Úsympy.testing.pytestr   Ú(sympy.functions.elementary.trigonometricr   r   Úsympy.matrices.denser   Úsympy.simplifyr   Úsympy.tensor.arrayr   Ú#sympy.tensor.array.dense_ndim_arrayr   r	   Ú$sympy.tensor.array.sparse_ndim_arrayr
   r   Ú	sympy.abcr   r   r4   r#   r&   r*   r-   r3   r5   r   r   r   r    Ú<module>   s*    þü	