§
    fŠtjÐ.  ã                   ó  — d Z ddlZddlZddlmZmZ ddlmZm	Z	 ddl
mZ ee	gZej        ej        ej        gZd„ Zej        d„ ¦   «         Zej        d„ ¦   «         Zej                             d	e¦  «         G d
„ d¦  «        ¦   «         ZdS )z Test of 1D arithmetic operationsé    N)Úassert_equalÚassert_allclose)Ú	coo_arrayÚ	csr_array)Úisscalarlikec                 ó€   — t          | t          j        ¦  «        st          | ¦  «        r| S |                      ¦   «         S )N)Ú
isinstanceÚnpÚndarrayr   Útoarray)Úas    úb/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/sparse/tests/test_arithmetic1d.pyr   r      s6   € Ý�!•R”ZÑ Ô ð ¥L°¡O¤Oð ØˆØ�9Š9‰;Œ;Ðó    c                  ó0   — t          j        g d¢d¦  «        S )N)é   r   é   r   Úd)r
   Úarray© r   r   Údat1dr      s   € åŒ8�L�L�L #Ñ&Ô&Ð&r   c                 óR   ‡ ‡— ˆ fd„t           D ¦   «         Šˆfd„t          D ¦   «         S )Nc                 ó<   •— i | ]}|‰                      |¦  «        “ŒS r   )Úastype)Ú.0Údtyper   s     €r   ú
<dictcomp>z%datsp_math_dtypes.<locals>.<dictcomp>   s'   ø€ ÐFÐFÐF°�%˜Ÿš eÑ,Ô,ÐFÐFÐFr   c                 óT   •‡— i | ]#Š‰ˆfd „‰                      ¦   «         D ¦   «         “Œ$S )c                 ó2   •— g | ]\  }}|| ‰|¦  «        f‘ŒS r   r   )r   r   ÚdatÚsps      €r   ú
<listcomp>z0datsp_math_dtypes.<locals>.<dictcomp>.<listcomp>   s,   ø€ ÐHÐHÐH¡z u¨cˆe�S˜"˜"˜S™'œ'Ð"ÐHÐHÐHr   )Úitems)r   r    Ú
dat_dtypess    @€r   r   z%datsp_math_dtypes.<locals>.<dictcomp>   sM   øø€ ð ð ð àð 	ÐHÐHÐHÐH°Z×5EÒ5EÑ5GÔ5GÐHÑHÔHðð ð r   )Úmath_dtypesÚ
spcreators)r   r#   s   `@r   Údatsp_math_dtypesr&      sH   øø€ àFÐFÐFÐF½+ÐFÑFÔF€Jðð ð ð åðñ ô ð r   Ú	spcreatorc                   óz   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestArithmetic1Dc                 ó†  — d}t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        fD ]Ü} |||¬¦  «        }||z   }d|z  }t          ||                     ¦   «         z  t           j        ¦  «        sJ ‚t          ||                     ¦   «         z  t           j        ¦  «        sJ ‚|||fD ][}||z  |                     ¦   «         |                     ¦   «         z  k    sJ ‚|j        |k    sJ ‚t          |¦  «        j        |k    sJ ‚Œ\ŒÝd S )	N)é   Úint32Úfloat32Úfloat64Ú	complex64Ú
complex128©r   é   )r
   r   r	   Útocsrr   Útocoor   )Úselfr'   ÚshapeÚmytyper   ÚbÚcÚms           r   Útest_empty_arithmeticz&TestArithmetic1D.test_empty_arithmetic%   sG  € ØˆåŒH�WÑÔÝŒH�YÑÔÝŒH�YÑÔÝŒH�[Ñ!Ô!ÝŒH�\Ñ"Ô"ð
ð 	2ð 	2ˆFð �	˜% vÐ.Ñ.Ô.ˆAØ�A‘ˆAØ�A‘ˆAÝ˜a !§'¢'¡)¤)™m­R¬ZÑ8Ô8Ð8Ð8Ð8Ý˜a !§'¢'¡)¤)™m­R¬ZÑ8Ô8Ð8Ð8Ð8Ø˜˜A�Yð 2ð 2�Ø˜1‘u §	¢	¡¤¨a¯iªi©k¬kÑ 9Ò9Ð9Ð9Ð9Ø”w &Ò(Ð(Ð(Ð(Ý˜q‘z”zÔ'¨6Ò1Ð1Ð1Ð1Ð1ð2ð	2ð 	2r   c                 ó¾   — t          j        g d¢d¦  «        }t          t          |¦  «        t           ||¦  «        ¦  «                             ¦   «         ¦  «         d S )N)éÿÿÿÿr   é   r   éûÿÿÿr   r   éüÿÿÿr   r   r   r   r   )r
   r   r   Úabsr   )r5   r'   ÚAs      r   Útest_abszTestArithmetic1D.test_abs8   sR   € ÝŒHÐ=Ð=Ð=¸sÑCÔCˆÝ•S˜‘V”V�S  ¨1¡¤Ñ.Ô.×6Ò6Ñ8Ô8Ñ9Ô9Ð9Ð9Ð9r   c                 óÔ   — t          j        g d¢d¦  «        } ||¦  «        }t          t          j        |d¬¦  «        t	          |d¬¦  «                             ¦   «         ¦  «         d S )N)gš™™™™™õ¿gìQ¸…ëá?g     @1@gìQ¸…ëÀr   r   )Údecimals)Úndigits)r
   r   r   ÚaroundÚroundr   ©r5   r'   rB   ÚAsps       r   Ú
test_roundzTestArithmetic1D.test_round<   se   € ÝŒHÐ0Ð0Ð0°#Ñ6Ô6ˆØˆi˜‰lŒlˆÝ•R”Y˜q¨1Ð-Ñ-Ô-­u°SÀ!Ð/DÑ/DÔ/D×/LÒ/LÑ/NÔ/NÑOÔOÐOÐOÐOr   c                 ó~  — t          j        g d¢d¦  «        } ||¦  «        }t          t          j        |d¦  «        |                     d¦  «                             ¦   «         ¦  «         t          j        t          d¬¦  «        5   ||¦  «                             |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)	r@   éýÿÿÿéþÿÿÿr=   r   r   r2   r   é   r   r2   zinput is not scalar©Úmatch)r
   r   r   Úpowerr   ÚpytestÚraisesÚNotImplementedErrorrI   s       r   Útest_elementwise_powerz'TestArithmetic1D.test_elementwise_powerA   sð   € ÝŒHÐ4Ð4Ð4°cÑ:Ô:ˆØˆi˜‰lŒlˆÝ•R”X˜a ‘^”^ S§Y¢Y¨q¡\¤\×%9Ò%9Ñ%;Ô%;Ñ<Ô<Ð<õ Œ]Õ.Ð6KÐLÑLÔLð 	"ð 	"ØˆI�a‰LŒL×Ò˜qÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   ÂB2Â2B6Â9B6c                 ó    — t          j        ddg¦  «        } ||¦  «        }t          |j                             ¦   «         |j        ¦  «         d S ©Ny      ð?      @y       @      À)r
   r   r   Úrealr   ©r5   r'   ÚDrB   s       r   Ú	test_realzTestArithmetic1D.test_realJ   óG   € ÝŒH�f˜fÐ%Ñ&Ô&ˆØˆI�a‰LŒLˆÝ�Q”V—^’^Ñ%Ô% q¤vÑ.Ô.Ð.Ð.Ð.r   c                 ó    — t          j        ddg¦  «        } ||¦  «        }t          |j                             ¦   «         |j        ¦  «         d S rX   )r
   r   r   Úimagr   rZ   s       r   Ú	test_imagzTestArithmetic1D.test_imagO   r]   r   c                 óÄ   — ||         D ]V\  }}}t          |dz  |dz                       ¦   «         ¦  «         t          |dz  |dz                       ¦   «         ¦  «         ŒWd S ©Nr2   gÍÌÌÌÌL1@©r   r   ©r5   r'   r&   r   r   Údatsps         r   Útest_mul_scalarz TestArithmetic1D.test_mul_scalarT   sr   € Ø!2°9Ô!=ð 	?ð 	?ÑˆE�3˜Ý˜˜q™ 5¨1¡9×"5Ò"5Ñ"7Ô"7Ñ8Ô8Ð8Ý˜˜t™ e¨d¡l×%;Ò%;Ñ%=Ô%=Ñ>Ô>Ð>Ð>ð	?ð 	?r   c                 óÄ   — ||         D ]V\  }}}t          d|z  d|z                       ¦   «         ¦  «         t          d|z  d|z                       ¦   «         ¦  «         ŒWd S rb   rc   rd   s         r   Útest_rmul_scalarz!TestArithmetic1D.test_rmul_scalarY   sr   € Ø!2°9Ô!=ð 	?ð 	?ÑˆE�3˜Ý˜˜S™ 1 u¡9×"5Ò"5Ñ"7Ô"7Ñ8Ô8Ð8Ý˜ ™ d¨U¡l×%;Ò%;Ñ%=Ô%=Ñ>Ô>Ð>Ð>ð	?ð 	?r   c                 ó€  — ||         D �]3\  }}}|t          j        d¦  «        k    rŒ t          ||z
                       ¦   «         t          j        d¦  «        ¦  «         t          |dz
                       ¦   «         |¦  «          |g d¢d¬¦  «        }t          ||z
                       ¦   «         ||                     ¦   «         z
  ¦  «         t          ||z
                       ¦   «         |                     ¦   «         |z
  ¦  «         t          |                     ¦   «         |d         z
  ||d         z
  ¦  «         �Œ5d S )NÚboolrO   r   )r   r@   r   r2   r   r1   )r
   r   r   r   Úzeros)r5   r'   r&   r   r   re   rB   s          r   Útest_subzTestArithmetic1D.test_sub^   s+  € Ø!2°9Ô!=ð 	Añ 	AÑˆE�3˜Ø�œ Ñ(Ô(Ò(Ð(àå˜% %™-×0Ò0Ñ2Ô2µB´H¸Q±K´KÑ@Ô@Ð@Ý˜% !™)×,Ò,Ñ.Ô.°Ñ4Ô4Ð4à�	˜-˜-˜-¨sÐ3Ñ3Ô3ˆAÝ˜% !™)×,Ò,Ñ.Ô.°°a·i²i±k´kÑ0AÑBÔBÐBÝ˜!˜e™)×,Ò,Ñ.Ô.°·	²	±´¸cÑ0AÑBÔBÐBõ ˜Ÿš™œ¨3¨q¬6Ñ1°3¸¸Q¼±<Ñ@Ô@Ð@Ñ@ð	Að 	Ar   c                 óZ  ‡‡— ||         D ]Ÿ\  }ŠŠt          ‰dz                        ¦   «         ‰¦  «         t          ˆfd„t          dd¦  «        D ¦   «         ¦  «        }t          ˆfd„t          dd¦  «        D ¦   «         ¦  «        }t	          |                     ¦   «         |¦  «         Œ d S )Nr   c                 ó   •— g | ]}|‰z  ‘ŒS r   r   )r   Úkre   s     €r   r!   z.TestArithmetic1D.test_add0.<locals>.<listcomp>s   s   ø€ Ð7Ð7Ð7 a˜˜E™	Ð7Ð7Ð7r   r   r   c                 ó   •— g | ]}|‰z  ‘ŒS r   r   )r   ro   r   s     €r   r!   z.TestArithmetic1D.test_add0.<locals>.<listcomp>t   s   ø€ Ð5Ð5Ð5 A˜˜C™Ð5Ð5Ð5r   )r   r   ÚsumÚranger   )r5   r'   r&   r   ÚsumSÚsumDr   re   s         @@r   Ú	test_add0zTestArithmetic1D.test_add0n   s¸   øø€ Ø!2°9Ô!=ð 	2ð 	2ÑˆE�3˜å˜% !™)×,Ò,Ñ.Ô.°Ñ4Ô4Ð4åÐ7Ð7Ð7Ð7­5°°A©;¬;Ð7Ñ7Ô7Ñ8Ô8ˆDÝÐ5Ð5Ð5Ð5­¨q°!©¬Ð5Ñ5Ô5Ñ6Ô6ˆDÝ˜DŸLšL™NœN¨DÑ1Ô1Ð1Ð1ð	2ð 	2r   c                 ó®  — t          j        g d¢¦  «        }t          j        g d¢¦  «        } ||¦  «        } ||¦  «        }t          |                     |¦  «                             ¦   «         ||z  ¦  «         t          |                     |¦  «                             ¦   «         ||z  ¦  «         t          j        g d¢¦  «        }t          j        g d¢¦  «        } ||¦  «        } ||¦  «        }	t          |                     |	¦  «                             ¦   «         ||z  ¦  «         t          |                     |¦  «                             ¦   «         ||z  ¦  «         t          |                     |	¦  «                             ¦   «         ||z  ¦  «         t          |                     |¦  «                             ¦   «         ||z  ¦  «         d S )N)rO   r   é	   )r   é   r=   ©y      ð?       Ày              @y      ð¿        ©y      @       @y      @      Ày       À      ð?)r
   r   r   Úmultiplyr   )
r5   r'   rB   ÚBrJ   ÚBspÚCr[   ÚCspÚDsps
             r   Útest_elementwise_multiplyz*TestArithmetic1D.test_elementwise_multiplyw   s”  € åŒH�Y�Y�YÑÔˆÝŒH�Z�Z�ZÑ Ô ˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆÝ˜Ÿš SÑ)Ô)×1Ò1Ñ3Ô3°Q¸±UÑ;Ô;Ð;Ý˜Ÿš Q™œ×/Ò/Ñ1Ô1°1°q±5Ñ9Ô9Ð9õ ŒHÐ.Ð.Ð.Ñ/Ô/ˆÝŒHÐ.Ð.Ð.Ñ/Ô/ˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆÝ˜Ÿš SÑ)Ô)×1Ò1Ñ3Ô3°Q¸±UÑ;Ô;Ð;Ý˜Ÿš Q™œ×/Ò/Ñ1Ô1°1°q±5Ñ9Ô9Ð9õ 	˜Ÿš SÑ)Ô)×1Ò1Ñ3Ô3°Q¸±UÑ;Ô;Ð;Ý˜Ÿš Q™œ×/Ò/Ñ1Ô1°1°q±5Ñ9Ô9Ð9Ð9Ð9r   c                 óN  — t          j        dg¦  «        }t          j        dgg¦  «        }t          j        g d¢¦  «        }t          j        g d¢g¦  «        }t          j        dgdgdgg¦  «        }t          j        g d¢g d	¢g d
¢g¦  «        }g d¢}t          j        d¦  «        }	|	j        }
t          j        dgg¦  «        }t          j        ddgddggg¦  «        } ||¦  «        } ||¦  «        } ||¦  «        } ||¦  «        } ||¦  «        } ||¦  «        } ||¦  «        } ||	¦  «        } ||	d         ¦  «        } ||
¦  «        } ||
d d …dd f         ¦  «        } ||¦  «        }||||||||	|
||g}||||||||||||g}|||g}|D ]Á}|D ]¼}	 |                     ¦   «         |                     ¦   «         z  }nX# t
          $ rK t          j        t
          d¬¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   Y Œ�w xY w|                     |¦  «        }t          |                     ¦   «         |¦  «         Œ½ŒÂ|D ]É}|D ]Ä}	 |                     ¦   «         |z  }ne# t          $ r Y Œ't
          $ rM d} t          j        t
          | ¬¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   Y Œ|w xY w	 |                     |¦  «        }n# t
          $ r Y Œ£w xY wt          t	          |¦  «        |¦  «         ŒÅŒÊd S )NrO   é÷ÿÿÿ)r   r=   r   )rx   rw   rƒ   r   r2   r   )é   é   r   )r@   r   r2   )r…   r…   r…   ©r   r2   r   )r   rO   r   )r   Núinconsistent shapesrP   z&broadcast together|inconsistent shapes)r
   r   ÚonesÚTr   Ú
ValueErrorrS   rT   r{   r   Ú	TypeError)!r5   r'   rB   r|   r~   r[   ÚEÚFÚGÚHÚJÚKÚLrJ   r   ÚGspr}   r€   ÚEspÚFspÚHspÚHsppÚJspÚJsppÚKspÚmatricesÚ
spmatricesÚsp1dmatricesÚiÚjÚ
dense_multÚsp_multÚmatchmes!                                    r   Ú#test_elementwise_multiply_broadcastz4TestArithmetic1D.test_elementwise_multiply_broadcastŒ   s*  € ÝŒH�a�S‰MŒMˆÝŒH�r�d�VÑÔˆÝŒH�Z�Z�ZÑ Ô ˆÝŒH�j�j�j�\Ñ"Ô"ˆÝŒH�q�c˜A˜3  �_Ñ%Ô%ˆÝŒH�i�i�i   ¨Y¨Y¨YÐ7Ñ8Ô8ˆØˆIˆIˆÝŒG�F‰OŒOˆØŒCˆÝŒH�q�c�U‰OŒOˆÝŒH˜˜1�v  1˜vÐ&Ð'Ñ(Ô(ˆð ˆi˜‰lŒlˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆàˆi˜‰lŒlˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆØˆy˜˜7œÑ$Ô$ˆØˆi˜‰lŒlˆØˆy˜˜1˜1˜1˜a ˜:œÑ'Ô'ˆØˆi˜‰lŒlˆà�q˜!˜Q  1 a¨¨A¨q°!Ð4ˆØ˜3  S¨#¨s°C¸¸dÀCÈÈsÐSˆ
Ø˜S #�ˆð ð 		?ð 		?ˆAØð ?ð ?�ðØ!"§¢¡¤¨q¯yªy©{¬{Ñ!:�J�JøÝ!ð ð ð Ýœ¥zÐ9NÐOÑOÔOð &ð &ØŸ
š
 1™œ˜ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &à�Hðøøøð Ÿ*š* Q™-œ-�Ý §¢Ñ 1Ô 1°:Ñ>Ô>Ð>Ð>ð?ð ð 	>ð 	>ˆAØð >ð >�ðØ!"§¢¡¤¨q¡�J�JøÝ ð ð ð Ø�HÝ!ð ð ð ØF�GÝœ¥z¸ÐAÑAÔAð &ð &ØŸ
š
 1™œ˜ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &à�Hð	øøøð
ØŸjšj¨™mœm�G�GøÝ!ð ð ð Ø�Hðøøøå¥¨Ñ 0Ô 0°*Ñ=Ô=Ð=Ð=ð>ð	>ð 	>s„   Æ)GÇ%HÇ-H	ÈHÈHÈHÈHÈHÈHÉ"I:É:
KÊ&KÊ,K	ËKËKËKËKËKËKË K6Ë6
LÌLc                 ó  —  ||¦  «        }t          j        dt           j        dt           j        g¦  «        }||z  }t           j                             ||¦  «          |g d¢d¬¦  «        }dt           j        t           j        dg}t           j                             ||z  |¦  «         t          j        g d¢¦  «        }t          j        g d¢¦  «        } ||¦  «        }	 ||¦  «        }
t          |	|
z  ||z  ¦  «         t          j        g d	¢¦  «        }t          j        g d
¢¦  «        } ||¦  «        }	 ||¦  «        }
t          j        d¬¦  «        5  t          |	|
z  ||z  ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ddg¦  «        }t          j        ddg¦  «        } ||¦  «        }	 ||¦  «        }
t          j        dd¬¦  «        5  t          |	|
z  ||z  ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   )r   r   r   rO   r   r1   r   r   ry   rz   r†   )r   r   r2   Úignore)Údivide)r¦   Úinvalid)	r
   r   ÚnanÚtestingÚassert_array_equalÚinfr   Úerrstater   )r5   r'   r   re   ÚexpectedÚactualÚdenomrB   r|   rJ   r}   s              r   Útest_elementwise_dividez(TestArithmetic1D.test_elementwise_divideË   s‰  € Ø�	˜%Ñ Ô ˆÝ”8˜Q¥¤¨­2¬6Ð2Ñ3Ô3ˆØ˜‘ˆå
Œ
×%Ò% f¨hÑ7Ô7Ð7à�	˜,˜,˜,¨cÐ2Ñ2Ô2ˆØ•r”v�rœv qÐ)ˆÝ
Œ
×%Ò% e¨e¡m°XÑ>Ô>Ð>õ ŒHÐ.Ð.Ð.Ñ/Ô/ˆÝŒHÐ.Ð.Ð.Ñ/Ô/ˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆÝ˜˜c™	 1 q¡5Ñ)Ô)Ð)õ ŒH�Y�Y�YÑÔˆÝŒH�Y�Y�YÑÔˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆÝŒ[ Ð)Ñ)Ô)ð 	+ð 	+Ý˜˜s™ A¨¡EÑ*Ô*Ð*ð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+õ ŒH�a˜�VÑÔˆÝŒH�a˜�VÑÔˆØˆi˜‰lŒlˆØˆi˜‰lŒlˆÝŒ[ °(Ð;Ñ;Ô;ð 	+ð 	+Ý˜˜s™ A¨¡EÑ*Ô*Ð*ð	+ð 	+ð 	+ñ 	+ô 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+ð 	+øøøð 	+ð 	+ð 	+ð 	+ð 	+ð 	+s$   ÅE;Å;E?ÆE?ÇHÈHÈ	Hc                 ó¾  — t          j        g d¢¦  «        } ||¦  «        }t          j        t          d¬¦  «        5  |dz   d d d ¦  «         n# 1 swxY w Y   t          j        t
          d¬¦  «        5  |dz   d d d ¦  «         n# 1 swxY w Y   dD ]H}||z  }||z  }t          |                     ¦   «         |¦  «         t          |j        |j        ¦  «         ŒId S )N)r   r   r2   r   znegative integer powersrP   r=   z
zero powerr   )r   r2   r   gš™™™™™@)	r
   r   rS   rT   rŠ   rU   r   r   r   )r5   r'   rB   r|   ÚexponentÚret_spÚret_nps          r   Útest_powzTestArithmetic1D.test_powí   sj  € ÝŒH�\�\�\Ñ"Ô"ˆØˆI�a‰LŒLˆõ Œ]�:Ð-FÐGÑGÔGð 	ð 	Øˆr‰EˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	åŒ]Õ.°lÐCÑCÔCð 	ð 	Øˆq‰DˆDð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 'ð 	5ð 	5ˆHØ˜‘[ˆFØ˜‘[ˆFÝ˜ŸšÑ)Ô)¨6Ñ2Ô2Ð2Ý˜œ v¤|Ñ4Ô4Ð4Ð4ð		5ð 	5s#   ½AÁAÁAÁ5BÂBÂBc                 ó¼   —  ||¦  «        }d}|                      |¦  «        }||z  }t          |                     ¦   «         |                     ¦   «         ¦  «         d S )Né
   )Údotr   r   )r5   r'   r   rB   Úscalarr®   r­   s          r   Útest_dot_scalarz TestArithmetic1D.test_dot_scalarý   sZ   € ØˆI�eÑÔˆØˆØ—’�v‘”ˆØ�v‘:ˆå˜ŸšÑ(Ô(¨(×*:Ò*:Ñ*<Ô*<Ñ=Ô=Ð=Ð=Ð=r   c                 óÔ  —  |g d¢¦  «        } |t          j        ddgddgddggd¦  «        ¦  «        }t          j        g d¢g¦  «        j        }t          ||z  |                     ¦   «         |z  ¦  «         t          ||z                       ¦   «         ||z                       ¦   «         ¦  «         t          |                     ¦   «         |z  ||z                       ¦   «         ¦  «         t          ||                     ¦   «         z  ||z                       ¦   «         ¦  «         t          j        g d¢¦  «        }t          ||z  |                     ¦   «         |z  ¦  «          ||¦  «        }||z  }t          |t           j        ¦  «        sJ ‚|j        dk    sJ ‚t          t          j        d	¦  «        |¦  «         t          t          j        d	¦  «        |                     ¦   «         |z  ¦  «         t          t          j        d	¦  «        ||                     ¦   «         z  ¦  «         t          t          j        d	¦  «        |                     ¦   «         |                     ¦   «         z  ¦  «         t          j	        t          d
¬¦  «        5  |dz   d d d ¦  «         n# 1 swxY w Y   t          j	        t          d
¬¦  «        5  d|z   d d d ¦  «         d S # 1 swxY w Y   d S )N)r2   r   g      @r   r   r2   r   r†   )r   r   r   r   r   zScalar operands are not allowedrP   )r
   r   r‰   r   r   r	   r   r6   rS   rT   rŠ   )r5   r'   ÚMspr|   ÚcolÚVÚVspÚMsp_Vsps           r   Útest_matmulzTestArithmetic1D.test_matmul  s  € Øˆi˜˜˜Ñ$Ô$ˆØˆI•b”h  A ¨¨A¨°°A°Ð7¸Ñ=Ô=Ñ>Ô>ˆÝŒh˜	˜	˜	�{Ñ#Ô#Ô%ˆõ 	˜˜c™	 3§;¢;¡=¤=°3Ñ#6Ñ7Ô7Ð7õ 	˜˜q™×)Ò)Ñ+Ô+¨c°A©g×->Ò->Ñ-@Ô-@ÑAÔAÐAÝ˜Ÿš™œ¨Ñ)¨C°!©G×+<Ò+<Ñ+>Ô+>Ñ?Ô?Ð?Ý˜˜aŸiši™kœkÑ)¨C°!©G×+<Ò+<Ñ+>Ô+>Ñ?Ô?Ð?õ ŒH�Y�Y�YÑÔˆÝ˜˜a™ §¢¡¤°Ñ!2Ñ3Ô3Ð3àˆi˜‰lŒlˆØ˜‘)ˆÝ˜'¥2¤:Ñ.Ô.Ð.Ð.Ð.ØŒ} Ò"Ð"Ð"Ð"õ 	�œ ™œ WÑ-Ô-Ð-Ý�œ ™œ S§[¢[¡]¤]°SÑ%8Ñ9Ô9Ð9Ý�œ ™œ S¨3¯;ª;©=¬=Ñ%8Ñ9Ô9Ð9Ý�œ ™œ S§[¢[¡]¤]°S·[²[±]´]Ñ%BÑCÔCÐCõ Œ]�:Ð-NÐOÑOÔOð 	ð 	Ø�!‰GˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	åŒ]�:Ð-NÐOÑOÔOð 	ð 	Ø�‰GˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s$   ÊJ$Ê$J(Ê+J(Ë
KËK!Ë$K!c                 óÎ   — ||         D ][\  }}}|t          j        d¦  «        k    rŒ||z   |z   |z
  }t          |||z   ¦  «         ||z   |z   |z
  }t          |||z   ¦  «         Œ\d S )Nrj   )r
   r   r   )r5   r'   r&   r   r   re   Úsum1Úsum2s           r   Útest_sub_densezTestArithmetic1D.test_sub_dense'  s‘   € à!2°9Ô!=ð 
	*ð 
	*ÑˆE�3˜Ø�œ Ñ(Ô(Ò(Ð(àð ˜#‘I ‘O uÑ,ˆDÝ˜˜s S™yÑ)Ô)Ð)Ø˜E‘M EÑ)¨SÑ0ˆDÝ˜˜s S™yÑ)Ô)Ð)Ð)ð
	*ð 
	*r   c                 ó6  — t          j        g ¦  «        }|                     d¦  «        }|                     d¦  «        }t          j        ddg¦  «        } ||¦  «        } ||¦  «        }t	          j        t          d¬¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   t          | 	                    |¦  «        t          j	        ||¦  «        ¦  «         t	          j        t          d¬¦  «        5  | 	                    |¦  «         d d d ¦  «         n# 1 swxY w Y   t          | 
                    |¦  «                             ¦   «         t          j
        ||¦  «        ¦  «         t          | 
                    |¦  «                             ¦   «         t          j
        ||¦  «        ¦  «         t          | 
                    d¦  «                             ¦   «         t          j
        |d¦  «        ¦  «         t	          j        t          d¬¦  «        5  | 
                    |¦  «         d d d ¦  «         n# 1 swxY w Y   t          |                     |¦  «                             ¦   «         |                     |¦  «        ¦  «         d S )Nr   )r   r   r+   r‡   rP   z&dimension mismatch|shapes.*not alignedr…   )r
   r   Úreshaperˆ   rS   rT   rŠ   Ú__add__r   r¸   r{   r   )r5   r'   Úmatr   r   ÚfÚaspÚdsps           r   Ú test_size_zero_matrix_arithmeticz1TestArithmetic1D.test_size_zero_matrix_arithmetic5  sÉ  € åŒh�r‰lŒlˆØ�KŠK˜‰NŒNˆØ�KŠK˜ÑÔˆÝŒG�Q˜�F‰OŒOˆàˆi˜‰lŒlˆØˆi˜‰lŒlˆåŒ]�:Ð-BÐCÑCÔCð 	ð 	Ø�KŠK˜ÑÔÐð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	�S—W’W˜S‘\”\¥2¤6¨!¨Q¡<¤<Ñ0Ô0Ð0õ Œ]�:Ð-UÐVÑVÔVð 	ð 	Ø�GŠG�A‰JŒJˆJð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	�S—\’\ #Ñ&Ô&×.Ò.Ñ0Ô0µ"´+¸aÀÑ2CÔ2CÑDÔDÐDå�S—\’\ !‘_”_×,Ò,Ñ.Ô.µ´¸A¸qÑ0AÔ0AÑBÔBÐBå�S—\’\ !‘_”_×,Ò,Ñ.Ô.µ´¸A¸qÑ0AÔ0AÑBÔBÐBõ Œ]�:Ð-BÐCÑCÔCð 	ð 	Ø�LŠL˜‰OŒOˆOð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	�S—[’[ Ñ%Ô%×-Ò-Ñ/Ô/°·²¸1±´Ñ>Ô>Ð>Ð>Ð>s6   ÂB(Â(B,Â/B,ÄD&Ä&D*Ä-D*È$IÉI
ÉI
N)Ú__name__Ú
__module__Ú__qualname__r;   rC   rK   rV   r\   r`   rf   rh   rl   ru   r�   r£   r°   rµ   rº   rÁ   rÅ   rÍ   r   r   r   r)   r)   #   s+  € € € € € ð2ð 2ð 2ð&:ð :ð :ðPð Pð Pð
"ð "ð "ð/ð /ð /ð
/ð /ð /ð
?ð ?ð ?ð
?ð ?ð ?ð
Að Að Að 2ð 2ð 2ð:ð :ð :ð*=>ð =>ð =>ð~ +ð  +ð  +ðD5ð 5ð 5ð >ð >ð >ð ð  ð  ðD*ð *ð *ð ?ð  ?ð  ?ð  ?ð  ?r   r)   )Ú__doc__rS   Únumpyr
   Únumpy.testingr   r   Úscipy.sparser   r   Úscipy.sparse._sputilsr   r%   Úint64r.   r0   r$   r   Úfixturer   r&   ÚmarkÚparametrizer)   r   r   r   ú<module>rÚ      s$  ðØ &Ð &à €€€à Ð Ð Ð Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7à -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ø .Ð .Ð .Ð .Ð .Ð .ð ˜Ð#€
ØŒx˜œ R¤]Ð3€ðð ð ð
 „ð'ð 'ñ „ð'ð „ðð ñ „ðð „×Ò˜ jÑ1Ô1ðq?ð q?ð q?ð q?ð q?ñ q?ô q?ñ 2Ô1ðq?ð q?ð q?r   