bg:LddlZddlZddlmZmZmZddlmZm Z m Z m Z m Z m Z ddlmZddlmZGddZGdd ZGd d ZGd d ZGddZGddZGddZGddZGddZdS)N)matrixasmatrixbmat)assert_ assert_equalassert_almost_equalassert_array_equalassert_array_almost_equal assert_raises) matrix_power)matc eZdZdZdZdZdS)TestCtorctjddgddgg}t|}ttj|j|kt d}t ||g||gg}tjgdgdgdgdg}ttj|j|kttj|j|ktjdd gd d gg}tgd gd g}ttjt ||g|ktjd}t|} t| jdkdS)NA,A;A,Arrrrrrrrrrrrrrrr)rr) nparrayrrallArarangeshape) selfr!mABCDEAEresultvecmvecs w/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/numpy/matrixlib/tests/test_defmatrix.py test_basiczTestCtor.test_basic sk Hq!fq!f% & & AYYrtqy!!""" OO 1a&1a&! " " Hlll"ll"ll"ll$ % % qsax  !!!qsax  !!! Hq!fq!f% & &<<<677tQF||x/00111illc{{ f$%%%%%c<tttddS)Ninvalid)r ValueErrorrr$s r-test_exceptionszTestCtor.test_exceptions#sj&)44444r/c tjddgddgg}tjddgddgg}tjgd gd gd gd g}tjgd gd gd gdg}ttjt d|kttjt dd|i|kt t tdd|ittjt dd|id|i|kt d||d||d}ttj||kdS)Nrrrrrrrrrrrr)rrrr)rrrrrr!)ldict)gdict)r6r7zA,B;C,D)r!r&)r'r()rrrr rr TypeError)r$r!r&Aresult mixresultb2s r-test_bmat_nondefault_strz!TestCtor.test_bmat_nondefault_str's Hq!fq!f% & & Hq!fq!f% & &(LLL(LL(LL(LL*++Hlll*ll*ll*ll,--  tI'122333tIc!W555@AABBBiyQ@@@@ F4 #aQ@@@GK L L N N N )a==Q1 F F FrY''(((((r/N)__name__ __module__ __qualname__r.r4r<r/r-rr sA&&&,555)))))r/rc\eZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdS)TestPropertiesc6tgdgdgdgdg}tgd}tgdj}d}t||d t||d t ||t|t j|d t|t j|d t |t j|d S) zeTest whether matrix.sum(axis=1) preserves orientation. Fails in NumPy <= 0.9.6.2127. )rrrr)rrrrrr)r rr)rrrraxisrN)rTr sumrr)r$Msum0sum1sumalls r-test_sumzTestProperties.test_sum<s  LLL<<<<<<! " "mmm$$mmm$$&4A///4A///VQUUWW%%%4!2!2!23334!2!2!2333VRVAYY'''''r/ctgdgdg}t|dt|dtgdgt|dtdgdggttj|dttj|d tgdgttj|d tdgdggtgd }t |dkdS) Nrrrrrrir)r rrxrG)rrr)rrprodrrr$xys r- test_prodzTestProperties.test_prodOs+ IIIyyy) * *QVVXXs###QVVAYY } 5 5666QVVAYYcU| 4 4555RWQZZ%%%RWQQ''' )>)>???RWQQ'''!se )=)=>>> 999  A r/cXtgdgdg}t|dt|dtgdgt|dtdgdggttj|dttj|dtgdgttj|dtdgdggdS)NrQrRrrrrrG)rrmaxrr$rXs r-test_maxzTestProperties.test_max\ IIIyyy) * *QUUWWa   QUU1XXvyyyk22333QUU1XXvsQCj11222RVAYY"""RVAA&&& {(;(;<<<RVAA&&&aSz(:(:;;;;;r/cXtgdgdg}t|dt|dtgdgt|dtdgdggttj|dttj|dtgdgttj|dtdgdggdS)NrQrRrrrrG)rrminrr]s r-test_minzTestProperties.test_minfr_r/c tjdd}t|dkttj|dtjddgkttj|dtjddgkdS)Nr)rrrrrr)rr"reshaperptpr rr]s r-test_ptpzTestProperties.test_ptpps IaLL  ( (1 quuQxx28QF#3#3344555quuQxx28QF#3#334455555r/crtjdd}|tj}t |d|dt |d|ddS)N )rrr)ddofr)rr"rdviewrrvar)r$rXmxs r-test_varzTestProperties.test_varvs IaLL  ( ( VVBI  QUUU]]BFFFNN333QUUU]]BFFFNN33333r/c bddlm}tjddgddgg}t |}t tj|||jt tj tjtj ||j kt tj tjtj ||j kt tj ||j k|d|zz}t |}t tj|||jt tj tjtj ||j kt tj tjtj ||j kdS)Nr?@@@y@) numpy.linalglinalgrrrrallcloseinvIr transposerIHr!conj)r$rtr!r%r&mBs r-r.zTestProperties.test_basic|s%%%%%% Hr2h2h  ! ! AYY FJJqMM2400111rx Q24 78899:::rx Q24 78899:::qBDy!!""" 1H AYY FJJqMM2400111rx Q24 78899:::rx Q 4 4 6 6"$ >??@@AAAAAr/cttjddd}tddgddgdd gg}t |j|dS) Nrrrg:gn)t?g#qg#q?gn)t?g6Bq)rrr"rdrrw)r$rXxpinvs r- test_pinvzTestProperties.test_pinvsl 29Q<<''1-- . .z2$z2$k2455 AC'''''r/c tjddd}t|}t|dz}t tj||dzkt tj|t|dzkt tj|t|dz k t tj||kt tj||kt tj||kt tj||k t tj||k t tj||kt tj||kt tj||k t tj||kt tj||k t tj||kt tjt|dk t tjt|dkdS)NdrS皙?r)rr"rdrrr anyabs)r$r!r%r{s r-test_comparisonszTestProperties.test_comparisonss/ IcNN " "2r * * AYY AYY_rQsU{##$$$rVAcE]]*++,,,BF2#.///000rBw   rRx  !!!rRx  !!!BF27OO#$$$BF27OO#$$$rRx  !!!rRx  !!!BF27OO#$$$rRx  !!!BF28$$$%%%rRx  !!!BF3r77Q;'''(((s26{{##$$$$$r/ctjddd}t|}d|d<t |d|dkdS)NrrSirr)rr"rdrr)r$r!r%s r- test_asmatrixzTestProperties.test_asmatrixsT IcNN " "2r * * a[[$$2d8#$$$$$r/ctddgddgg}t|tdkt|tdkdS)Nrrr?)rrrJmeanr$r!s r- test_noaxiszTestProperties.test_noaxissd QFQF# $ $6!99$%%%F3KK'(((((r/cptddgddgg}tt|dkdS)Nrrz matrix([[1, 0], [0, 1]]))rrreprrs r- test_reprzTestProperties.test_reprs< QFQF# $ $Q>>?????r/cntd}tdgdgdgg}t||dS)NzTrue; True; FalseTF)rr )r$r!r&s r-test_make_bool_matrix_from_strz-TestProperties.test_make_bool_matrix_from_strs@ & ' ' TFTFUG, - -1a     r/N)r=r>r?rOrZr^rbrfrmr.r~rrrrrr@r/r-rBrB;s(((&   <<<<<<666 444 BBB"(((%%%0%%% ))) @@@!!!!!r/rBceZdZdZdS) TestCastingctjddd}t|}|}tjdtjdz}||z}t|jj tjkttj ||kttj ||dzk|}tjdtj }||z}t|jj tj kttj ||kdS)NrrS)rSrSr) rr"rdrcopyonesfloat64rdtypetyper complex128)r$r!r%r{OmCs r-r.zTestCasting.test_basics IcNN " "2r * * AYY WWYY GHbj ) )C / !V +,,,rRx  !!!rRV|$$%%% WWYY GHbm , , !V .///rRx  !!!!!r/Nr=r>r?r.r@r/r-rrs#"""""r/rc&eZdZdZdZdZdZdS) TestAlgebrac ddlm}tjddgddgg}t |}tjd}t dD]A}ttj||zj |tj ||}B| |}tjd}t dD]B}ttj|| zj |tj ||}Cttj||zj tj ||ttj||zj ||zttjd|zj d|zt |}|dz}ttj|j d|zdS) Nrrorprqrrrrr) rsrtrrridentityrangerrur!dotrv)r$rtr!r%r&iAinvmA2s r-r.zTestAlgebra.test_basics%%%%%% Hr2hR) * * AYY KNNq  A BKq Q// 0 0 0q! AAzz!}} KNNq  A BKr a00 1 1 1q$AA R"WK166777 R"WK!a%11222 QrTHqs,,---Qii q CE1Q3''(((((r/ctd}|}|dz}|}|dz}|}|dz}t||dzt|tj||ttj||tjddS)z " " VVXX q VVXX r  WWYY q!"ad+++!"bfRnn555!"&Q--;;;;;r/ctddgddgg}tjtjfD]#}|d}t |dz||z$dSNrrrr)rrint8uint8r )r$rscalar_ttwos r-test_scalar_type_powz TestAlgebra.test_scalar_type_powsf QFQF# $ $"(+ 8 8H(1++C %a1fa3h 7 7 7 7 8 8r/ctddgddgg}tt5d|zdddn #1swxYwYtt5|tzddddS#1swxYwYdS)z:Check that 'not implemented' operations produce a failure.rorprqrrN)rr r8objectrs r-test_notimplementedzTestAlgebra.test_notimplementeds RHH  9 % %   FF               9 % %   fhhJJ                  s!<AAA::A>A>N)r=r>r?r.rrrr@r/r-rrsP)))2 < < <888     r/rceZdZdZdS)TestMatrixReturnc ztdgd}dddgfdddtjdgd }gd }t|D]}|d s||vrt ||}t |tjj re| d| d||vr ||}nd }||}tt|tud |ztt|jtutt|jtutdg\}} tt|tjutt| tjudS)Nrof8)r)intc)ror)rr)astypeclipcompressrepeatrdswapaxesr)&argminchoosedumpdumpsfillgetfieldgetAgetA1itemnonzeroputputmaskresize searchsortedsetflagssetfieldsort partition argpartitiontaketofiletolisttostringtobytesr rrJargmaxrrar\rrkrerVstdctypesitemset_r@z%sr)rrrdir startswithgetattr isinstance collectionsabcCallablerrrrrealimagrndarray) r$a methodargsexcluded_methodsattribfargsbcds r-test_instance_methodsz&TestMatrixReturn.test_instance_methodss C5 % % %8SE?? !ff : :F  %% 3C)C)C6""A![_566 :s Z''%f-DDDAtHQ6)4&=999QV &'''QV &'''se}}$$&&1Q2:%&&&Q2:%&&&&&r/N)r=r>r?rr@r/r-rrs#&'&'&'&'&'r/rceZdZdZdS) TestIndexingcttjdt}tjdt}gd|dddf<|dk|dddf<t |ddgddgddggdS)Nrr)rr)g?g?g333333?rrrrrzerosfloatrrWs r-r.zTestIndexing.test_basic9s RXfe,, - - HVU # #!//!!!Q$c'!!!Q$Q!Q!Q!Q011111r/Nrr@r/r-rr8s#22222r/rcfeZdZeddgddggZdZdZdZdZd Z d Z d Z d Z d Z dS)TestNewScalarIndexingrrrrcN|j}|d}t|jddS)Nrr)rrndimr$rrXs r-test_dimesionsz$TestNewScalarIndexing.test_dimesionsDs* F aDQVQr/cn|j}tj||g}t|jgddS)N)rrr)rrrrr#rs r-test_array_from_matrix_listz1TestNewScalarIndexing.test_array_from_matrix_listIs8 F HaV  QWiii(((((r/cd|j}t|ddgddggdSr)rrrr$rs r-test_array_to_listz(TestNewScalarIndexing.test_array_to_listNs4 FQXXZZ1a&1a&!122222r/c|j}|dgdf}tt|tt |tgdg|ddg}tt|tt |tddgddgg|dgdggddgddggf}tt|tt |tddgddggdS)Nr)rrr)rrrrrrr)rrrrrrs r-test_fancy_indexingz)TestNewScalarIndexing.test_fancy_indexingRs F alO 1f%%&&&Q }--... q!fI 1f%%&&&QQ!Q011222 sQCjAq6Aq6** + 1f%%&&&QQ!a12233333r/ctgdgdg}t|ddtgdgt|ddjdt|djdt|dddfjdtd}t|ddt|ddt|dddfj|jdS)NrQrRr)rrrrr)rrr#r]s r-test_matrix_elementz)TestNewScalarIndexing.test_matrix_element^s IIIyyy) * *QqT!Wfiii[11222QqT!W]F+++QqTZ(((Qqqq!tW]F+++ 1IIQtWa   QqT1Qqqq!tW]AG,,,,,r/cttjdt}t |d|dddS)Nrrrrr]s r-test_scalar_indexingz*TestNewScalarIndexing.test_scalar_indexingjs= RXfe,, - -QtWad1g&&&&&r/c4ttjd}t|dddfddggt|dddfddggt|dddfdgdggt|dddfdgdggdS)Nrrr)rrrr r]s r-test_row_column_indexingz.TestNewScalarIndexing.test_row_column_indexingns RVAYY  1QqqqS6QF8,,,1QqqqS6QF8,,,1QQQT7aS1#J///1QQQT7aS1#J/////r/c:tjd}d|_t|}t |ddtjddgf|dddft |tjgdddf|dddfdS)NrrTFr)TFF)rr"r#rr rr$r!rXs r-test_boolean_indexingz+TestNewScalarIndexing.test_boolean_indexingus IaLL QKK1QQQ$ 7 778!AAAqD'BBB1RX&:&:&:;;AAA=>!AAA#GGGGGr/ctjd}d|_t|}t |ddddgf|dddddft |gdddf|dddddfdS)Nrrrrr)rrr)rr"r#rr rs r-test_list_indexingz(TestNewScalarIndexing.test_list_indexing|s IaLL QKK1QQQAY<111ddd74441YYYqqq[>1TTrT!!!V955555r/N)r=r>r?rrrrrrr r rrrr@r/r-rrAsAA  A   ))) 333 4 4 4 - - -'''000HHH66666r/rceZdZdZdZdS) TestPowerc&tjddgddgg}ttt |dtjut |}ttt |dtudSNrrr)rrrrr rr rrs r-test_returntypezTestPower.test_returntypes{ Hq!fq!f% & &\!Q''((BJ6777 FF\!Q''((F233333r/cZttddgddggdddgddggdSr)r r r3s r- test_listzTestPower.test_lists<NOOOOOr/N)r=r>r?rrr@r/r-rrs7444 PPPPPr/rceZdZejdgdggZedgdggZdZdZ dZ dZ dZ dZ d Zd Zd Zd S) TestShaperrcnt|jjdt|jjddS)Nr )rrr#rr3s r- test_shapezTestShape.test_shapes0TV\6***TV\6*****r/cttj|jjdttj|jjddS)Nr)rrravelrr#rr3s r-test_numpy_ravelzTestShape.test_numpy_ravelsFRXdf%%+T222RXdf%%+T22222r/ct|jjdt|jjddSNr!)rr)rrr"r#rr3s r-test_member_ravelzTestShape.test_member_ravelsBTV\\^^)4000TV\\^^)622222r/ct|jjdt|jjddSr%)rrflattenr#rr3s r-test_member_flattenzTestShape.test_member_flattensFTV^^%%+T222TV^^%%+V44444r/ctjgdgdg}ttj|gdttj|dgdttj|jgdttj|jdgdt gdgdg}ttj|gdttj|dgdttj|jgdttj|jdgddSNrQrR)rrrrrrF)order)rrrrrrr!)rrrr"rIrr]s r-test_numpy_ravel_orderz TestShape.test_numpy_ravel_ordersZ Hiii+ , ,RXa[["4"4"4555RXas+++-?-?-?@@@RXac]]$6$6$6777RXac---/A/A/ABBB IIIyyy) * *RXa[["4"4"4555RXas+++-?-?-?@@@RXac]]$6$6$6777RXac---/A/A/ABBBBBr/cttgdgdg}t|gdgt|dgdgt|jgdgt|jdgdgdSr+)rrr"rIr]s r-test_matrix_ravel_orderz!TestShape.test_matrix_ravel_orders IIIyyy) * *QWWYY!3!3!3 4555QWW3W''*<*<*<)=>>>QSYY[[#5#5#5"6777QSYYSY)),>,>,>+?@@@@@r/cttj|j|jttj|j|j dSN)rrmay_share_memoryrr"r(r3s r-test_array_memory_sharingz#TestShape.test_array_memory_sharing[#DFDFLLNN;;<<<B'0@0@AAABBBBBr/cttj|j|jttj|j|j dSr2)rrr3rr"r(r3s r-test_matrix_memory_sharingz$TestShape.test_matrix_memory_sharingr5r/c4tjddtj}tj|d}t |jdtt|tj dS)NrS)rrrrGr) rr"rdrjr expand_dimsrrrr)r$rexpandeds r-test_expand_dims_matrixz!TestShape.test_expand_dims_matrixsx IbMM ! !& ) ) . .ry 9 9>!!,,,X]A&&&Jx33344444r/N)r=r>r?rrrrrrr#r&r)r.r0r4r7r;r@r/r-rrs1#sAaSzA+++333333555 C C CAAACCCCCC55555r/r)collections.abcrnumpyrrrr numpy.testingrrrr r r rsr numpy.matrixlibr rrBrrrrrrrr@r/r-r@s@((((((((((&%%%%%,),),),),),),),)^C!C!C!C!C!C!C!C!J""""""""&88888888v''''''''''''''''T22222222@6@6@6@6@6@6@6@6FPPPPPPPP65656565656565656565r/