bgc.dZddlZddlZddlZddlZddlmZmZm Z m Z m Z m Z m Z dZdZdZdZdZd Zd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZ GddZ!dZ"dZ#dS)zTests of interaction of matrix with other parts of numpy. Note that tests with MaskedArray and linalg are done in separate files. N)assert_ assert_equal assert_raisesassert_raises_regexassert_array_equalassert_almost_equalassert_array_almost_equalctjddgddgg}tt|gdddftjtjtjddd}t|ddtjd f|ddd fj dS) N)rr r2 ) npmatrixr isinstanceasmatrixarangereshaperarrayT)mxs y/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/numpy/matrixlib/tests/test_interaction.pytest_fancy_indexingrs Aq6Aq6"##A JqAAA 2 2333 BIbMM))!R0011A2A2rx||#$aBik22222cddg}ddg}tj||g}tjj|||}t t |tjdS)Nrrr r )rr polynomial polyutils mapdomainrr)dom1dom2rress rtest_polynomial_mapdomainr'se q6D q6D 4,A - ! + +AtT : :C JsBI & &'''''rctjgdg}tj|d}tjgdg}t||t t |tjudS)Nr r raxisrr r )rrsortrrtypeaactualexpecteds rtest_sort_matrix_noner3)sq 999+A WQT " " "Fy)))%%H""" DNNbi '(((((rctjgdg}tj|dd}tjgdg}t||t t |tjudS)Nr)r r*r,)rr partitionrrr.r/s rtest_partition_matrix_noner62su 999+A \!QT * * *Fy)))%%H""" DNNbi '(((((rctjddgt}tjddggt}ttj|d|ttjd||dSNr r dtyper )rrobjectrdotarrdesireds r%test_dot_scalar_and_matrix_of_objectsrA<sp )QF& ) ) )Ci!Q///GQ)))3)))))rctjdtjdzdzD]}tjd|d}tjddgdd gg|}tjdd gd d gg|}t tj|||t tj|||dS) N AllIntegerAllFloat?r r9r r rr; )r typecodesrrrinner)dtscar?r@s rtest_inner_scalar_and_matrixrMEsl<(2< +CCcI22hq###B'i!Q!Q(333)aVaW-R888RXc3''111RXc3''1111 22rctjddgt}tjddggt}ttj|d|ttjd||dSr8)rrr<rrJr>s r'test_inner_scalar_and_matrix_of_objectsrOOst )QF& ) ) )Ci!Q///G#q!!7+++!S!!7+++++rc tjddgddgg}tjdddj}tj||dggdgdgddgg}t t|jdtjut t|jdtj ut|jdj dtjdddd}tttj||dggdgdgddggtj||dggdgdggd g}t t|jdtj ut t|jdtjut|jdj d dS) Nr r r rreadonly writeonlyallocate)r r )rRrS no_subtype)r r r )rrrrrnditerrr.operandsndarrayrshaper RuntimeError)r0bis r!test_iter_allocate_output_subtyper\Xs Aq6Aq6"##A ! Q""$A 1a,<* Z/HI K KA DA  29 ,--- DA  rz 1222A$f--- ! Q1%%A, Aq$<<* Z/HIKKK 1a,<*:::< = =A DA  2: -... DA  ry 0111A$i00000rcVtjddgddgg}tjtjtjfD]j}||}t t |tju||d}t t |tjukdS)Nr r r rF)subok)rr zeros_like ones_like empty_likerr.)r0 like_functionrZcs rrbrbss Aq6Aq6"##A bmC** M!  Q29$%%% M!5 ) ) )Qry()))) **rctjgdgdgd}|ddd}t||u|dd }t ||t t |tj|ddd}t ||t||utt |tjudS) Nr,)r rrf4r9TF)r^copyi4)rf)rrastyperrr.r0rZs rtest_array_astyperj~s 999iii(555A T..A AFOOO E""AAa")$$$ U//AA a DGG29 $%%%%%rctjddgddgg}ttdtj||gdS)Nr r r rzshape too large to be a matrix)rrr ValueErrorstack)rs r test_stackrnsL Aq6Aq6"##A $D1a&*****rctjddgt}tjddggt}ttj|d|ttjd||dSr8)rrr<rmultiplyr>s rtest_object_scalar_multiplyrqst )QF& ) ) )Ci!Q///GS!$$g...Q$$g.....rc tjtjd}tjtjfD]}||d}t t |tjt |jdk||d}t t |tjt |jdk||}t tj|tj |d<tjtjfD]}tj d5}tj d ||d}t t |tjt tj tj| t t|dkdddn #1swxYwYtj d5}tj d ||d}t t |tjt tj|d o5tj|d  otj|d  t t|dkd t t!|djt$dddn #1swxYwYtj d5}tj d ||}t tj|t |tj kt t|dkdddn #1swxYwYdS)Nr rr*r r r r r T)recordalways)r r)rr)r rzno warning raised)rreyenanminnanmaxrrrXisscalarnanwarningscatch_warnings simplefilteranyisnanlen issubclasscategoryRuntimeWarning)matfr&ws rtest_nanfunctions_matricesrs )BF1II  Ci #""a!nnn 3 **+++ V#$$$a!nnn 3 **+++ V#$$$aff C  !!!! VCFi #!!  $D 1 1 1 !Q  !( + + +!Ca...C JsBI.. / / / rx}}--- . . . CFFaK  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! $D 1 1 1 ?Q  !( + + +!Ca...C JsBI.. / / / BHSY''0T0C0C,C0HSY/// 1 1 1 CFFaK!4 5 5 5 Jqt}n== > > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? $D 1 1 1 !Q  !( + + +!C&&C BK$$ % % % C26M " " " CFFaK  ! ! ! ! ! ! ! ! ! ! ! ! ! ! !#!!s9BG..G2 5G2 C4LL L .A>N88N< ?N< cxtjtjd}tjtjtjtjtjtjtj fD]}||d}tt|tjt|j dk||d}tt|tjt|j dk||}ttj |tjtjfD]}||d}tt|tjt|j dk||d}tt|tjt|j dk||}tt|tjt|j dkdS) Nr rr*rsr rt)r r )r rG)rrrw nanargmin nanargmaxnansumnanprodnanmeannanvarnanstdrrrXrz nancumsum nancumprod)rrr&s r"test_nanfunctions_matrices_generalrs )BF1II  ClBL")RZj")RY0 " "a!nnn 3 **+++ V#$$$a!nnn 3 **+++ V#$$$aff C  !!!! \2= ( ' 'a!nnn 3 **+++ V#$$$a!nnn 3 **+++ V#$$$aff 3 **+++ X%&&&& ' 'rctjtjdd}t |dtj|dtjddgddgg}tjddgddgg}tj|d|}tt|tjt|dd ggdS) Nrrr r r r)r+weightsg@g @) rrrandomrandrmeanaveragerr.)yr0rrs rtest_average_matrixrs ")..A&&''Aqvvayy"*Q"2"2333 Aq6Aq6"##A Aq6Aq6"##A 11a(((Aa")$$$c6]O$$$$$rctjdd}||z}tj||}tj|}tj|}tj||}t ||dS)Nrr)rlinspacetrapzrr)rrrmxmymrs rtest_trapz_matrixrsn AqA AA AA 1B 1B "b  BArc ttjtjdtjsJttjtjddtjsJdS)Nr )to_begin)rrediff1drrFrrtest_ediff1d_matrixrsa bj1.. : :;; : bj1:::BI F FGG FGGrcd}tjddgddgg}tjddgddgg}tj|d|}tt |tjt ||tj|d|}tt |tjt ||dS)Nc |dzSNr rF)rows rdoublez,test_apply_along_axis_matrix..double s Qwrrr r r rr;)rrapply_along_axisrrr)rrr2results rtest_apply_along_axis_matrixrs Aq6Aq6"##Ay1a&1a&)**H  A . .F Jvry ) )***vx(((  A . .F Jvry ) )***vx(((((rc*tjddg}tj|}tt tj||tjtt tj||tjtt tj||tjtt tj||tjdSr)ronesrrr.kronrWr)r0rs rtest_kron_matrixrs AA AAbgamm$$bj111bgamm$$bi000bgamm$$bi000bgamm$$bi00000rc eZdZdZdZdZdS)TestConcatenatorMatrixcddgddgtjdf}tjdf}tt|tjtt|tjttj|gdgttj|dgdgdgdggt tfddS) Nr r r rrrc)r r r rc.tjdfS)Nrc)rr_risrz4TestConcatenatorMatrix.test_matrix..2s"%a *;r)rrrr.rrrrl)selfab_rab_cr0rZs @@r test_matrixz"TestConcatenatorMatrix.test_matrix%s F FuS!QYuS!QYT$ZZ+++T$ZZ+++RXd^^lll^444RXd^^qcA3aS%9:::j";";";";";<<<<>22222rN)__name__ __module__ __qualname__rrrrFrrrr#sA = = =/// 3 3 3 3 3rrcHtjt5}tt jddgt jddgdddn #1swxYwYt|j}tj d}t||dS)Nr r zl Arrays are not equal (shapes (2,), (1, 2) mismatch) x: array([1, 2]) y: matrix([[1, 2]])) pytestraisesAssertionErrorrrrrstrvaluetextwrapdedent)exc_infomsg msg_references r%test_array_equal_error_message_matrixrEs ~ & &:(RXq!f%%ry!Q'8'8999::::::::::::::: hn  CO%Mm$$$$$s9AA#&A#ctjddgg}tjdtjgg}tjdtj gg}tjtjtjgg}tjddgtjtjgg}tt fD]D}|||||fD]:}|||tj|}||||||;EdS)Ng?g@)rrr{infr rr)m1m2m3m4m5 assert_funcrr0s rtest_array_almost_equal_matrixrTs  RH:  B RL> " "B R"&M? # #B RVRV$% & &B RHrvrv./ 0 0B02EE RR#  A K1    A K1    K1      r)$__doc__rrr|numpyr numpy.testingrrrrrrr rr'r3r6rArMrOr\rbrjrnrqrrrrrrrrrrrFrrrs KKKKKKKKKKKKKKKKKK 3 3 3((())))))***222,,,1116***&&&&***///&!&!&!R'''8 % % %   HHH )))&11133333333D % % %r