K i:ddlZddlZddlmZmZmZddlmZddl m Z m Z m Z m Z mZmZGddZGddZGd d ZGd d ZGd dZGddZGddZGddZGddZy)N)asmatrixbmatmatrix) matrix_power)assert_assert_almost_equalassert_array_almost_equalassert_array_equal assert_equal assert_raisesceZdZdZdZdZy)TestCtorctjddgddgg}t|}ttj|j |k(t d}t ||g||gg}tjgdgdgdgdg}ttj|j |k(ttj|j |k(tjdd gd d gg}tgd gd g}ttjt ||g|k(tjd}t|} t| jdk(y)NA,A;A,Arrrrrrrrrrrrrrrr)rr) nparrayrrallArarangeshape) selfr mABCDEAEresultvecmvecs j/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/numpy/matrixlib/tests/test_defmatrix.py test_basiczTestCtor.test_basics  HHq!fq!f% & AYrttqy!" O 1a&1a&! " HHl"""$ % qssax !qssax ! HHq!fq!f% &<67tQF|x/01iilc{ f$%c.tttdy)Ninvalid)r ValueErrorrr#s r,test_exceptionszTestCtor.test_exceptions'sj&)4r.c tjddgddgg}tjddgddgg}tjgd gd gd gd g}tjgd gd gd gdg}ttjt d|k(ttjt dd|i|k(t t tdd|ittjt dd|id|i|k(t d||d||d}ttj||k(y)Nrrrrrrrrrrrr)rrrr)rrrrrr )ldict)gdict)r5r6zA,B;C,D)r r%)r&r')rrrrrr TypeError)r#r r%Aresult mixresultb2s r,test_bmat_nondefault_strz!TestCtor.test_bmat_nondefault_str+s HHq!fq!f% & HHq!fq!f% &((L(((*+HHl***,-  tI'123tIc1X6'ABCiyaA FF4 #q#qBgM N P )#3;K LrY'(r.N)__name__ __module__ __qualname__r-r3r;r.r,rrs&,5)r.rcZeZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd Zy)TestPropertiesctgdgdgdgdg}tgd}tgdj}d}t||jd t||jd t ||jt|t j|d t|t j|d t |t j|y ) zeTest whether matrix.sum(axis=1) preserves orientation. Fails in NumPy <= 0.9.6.2127. )rrrr)rrrrrr)r rr)rrrraxisrN)rTr sumr r)r#Msum0sum1sumalls r,test_sumzTestProperties.test_sum@s L! "m$m$&&4A/4A/VQUUW%4!234!23VRVVAY'r.c>tgdgdg}t|jdt|jdtgdgt|jdtdgdggttj|dttj|d tgdgttj|d tdgdggtgd }t |jdk(y) Nrrrrrrir)r rrxrF)rrr)rr prodrrr#xys r, test_prodzTestProperties.test_prodSs Iy) *QVVXs#QVVAY } 56QVVAYcU| 45RWWQZ%RWWQQ' )>?RWWQQ'!se )=> 9 A r.ctgdgdg}t|jdt|jdtgdgt|jdtdgdggttj|dttj|dtgdgttj|dtdgdggy)NrPrQrrrrrF)rr maxrr#rWs r,test_maxzTestProperties.test_max` Iy) *QUUWa QUU1Xvyk23QUU1XvsQCj12RVVAY"RVVAA& {(;<RVVAA&aSz(:;r.ctgdgdg}t|jdt|jdtgdgt|jdtdgdggttj|dttj|dtgdgttj|dtdgdggy)NrPrQrrrrF)rr minrr\s r,test_minzTestProperties.test_minjr^r.c tjdjd}|jtj}t |j dk(t tj|j dtjddgk(t tj|j dtjddgk(y)Nr)rrrrrr) rr!reshapeviewrrptprrr#rWmxs r,test_ptpzTestProperties.test_ptpts IIaL  ( VVBII A rvvayBHHaV$4456rvvayBHHaV$4456r.c:tjdjd}|jtj}t |j d|j dt |j d|j dy)N )rrr)ddofr)rr!rcrdrr varrfs r,test_varzTestProperties.test_var{sh IIaL  ( VVBII QUUU]BFFFN3QUUU]BFFFN3r.c \ddlm}tjddgddgg}t |}t tj |j||jt tjtjtj||jk(t tjtjtj||jk(t tj||jk(|d|zz}t |}t tj |j||jt tjtjtj||jk(t tjtjtj|j|jk(y)Nr?@@@y@) numpy.linalglinalgrrrrallcloseinvIr transposerHHr conj)r#rtr r$r%mBs r,r-zTestProperties.test_basicsP% HHr2h2h  ! AY FJJqM24401rxx Q244 789:rxx Q244 789:qBDDy!" QJ AY FJJqM24401rxx Q244 789:rxx Q 4 4 6"$$ >?@Ar.cttjdjdd}tddgddgdd gg}t |j |y) Nrrrg:gn)t?g#qg#q?gn)t?g6Bq)rrr!rcrrw)r#rWxpinvs r, test_pinvzTestProperties.test_pinvsW 299Q<''1- .z2$z2$k245 ACC'r.c tjdjdd}t|}t|dz}t tj ||dzk(t tj |t|dzk(t tj |t|dz k( t tj ||kt tj ||kt tj ||kt tj ||k t tj ||k t tj ||k\t tj ||k\t tj ||kD t tj ||k(t tj ||k( t tj ||k7t tj t|dkD t tj t|dkDy)NdrR皙?r)rr!rcrrranyabs)r#r r$r{s r,test_comparisonszTestProperties.test_comparisonss IIcN " "2r * AY AY_rQW}%&rVAG_,-.BFF2C0112rBw rRx !rRx !BFF27O#$BFF27O#$rRx !rRx !BFF27O#$rRx !BFF28$$%rRx !BFF3r7Q;''(s26{#$r.ctjdjdd}t|}d|d<t |d|dk(y)NrrRirr)rr!rcrr)r#r r$s r, test_asmatrixzTestProperties.test_asmatrixsC IIcN " "2r * a[$$2d8#$r.ctddgddgg}t|jtdk(t|jtdk(y)Nrrr?)rrrImeanr#r s r, test_noaxiszTestProperties.test_noaxissG QFQF# $6!9$%F3K'(r.cTtddgddgg}tt|dk(y)Nrrz matrix([[1, 0], [0, 1]]))rrreprrs r, test_reprzTestProperties.test_reprs+ QFQF# $Q>>?r.cTtd}tdgdgdgg}t||y)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>rNrYr]rarhrmr-r~rrrrrr?r.r,rArA?sE(& <<74 B"(%0% ) @!r.rAceZdZdZy) TestCastingctjdjdd}t|}|j }tj dtj dz}||z}t|jjtj k(ttj||k7ttj||dzk(|j }tj dtj}||z}t|jjtjk(ttj||k7y)NrrR)rRrRr) rr!rcrcopyonesfloat64rdtypetyper complex128)r#r r$r{OmCs r,r-zTestCasting.test_basics IIcN " "2r * AY WWY GGHbjj )C / !V +,rRx !rR#X~&' WWY GGHbmm , !V ./rRx !r.Nr<r=r>r-r?r.r,rrs"r.rc$eZdZdZdZdZdZy) TestAlgebrac ddlm}tjddgddgg}t |}tj d}t dD]D}ttj||zj|tj||}F|j|}tj d}t dD]E}ttj|| zj|tj||}Gttj||zjtj||ttj||zj||zttjd|zjd|zt |}|dz}ttj|jd|zy) Nrrorprqrrrrr) rsrtrrridentityrangerrur dotrv)r#rtr r$r%iAinvmA2s r,r-zTestAlgebra.test_basics`% HHr2hR) * AY KKNq A BKKq Q/ 0q! A zz!} KKNq A BKKr a0 1q$A   R"WKK167 R"WKK!a%12 QVJJQ01Qi q CEE1q5)*r.c\td}|j}|dz}|j}|dz}|j}|dz}t||dzt|tj||ttj||tj dy)z " VVX q VVX r  WWY q!"ad+!"bffRn5!"&&Q-;r.ctddgddgg}tjtjfD]}|d}t |dz||zyNrrrr)rrint8uint8r )r#rscalar_ttwos r,test_scalar_type_powz TestAlgebra.test_scalar_type_powsP QFQF# $"((+ 8H1+C %a1fa3h 7 8r.ctddgddgg}tt5d|zdddtt5|tzdddy#1swY/xYw#1swYyxYw)z:Check that 'not implemented' operations produce a failure.rorprqrrN)rr r7objectrs r,test_notimplementedzTestAlgebra.test_notimplementedsq RHH 9 %  F 9 %  L       sAA!A!A*N)r<r=r>r-rrrr?r.r,rrs+2 <8 r.rceZdZdZy)TestMatrixReturnc tdgd}dddgfdddtjdgd }gd }t|D]}|j d s||vrt ||}t |tjjsJ|jd|jd|j|d }||}tt|tu|tt|jtutt|j tutd gj#\}} tt|tj$utt| tj$uy)Nrof8)r)intc)ror)rr)astypeclipcompressrepeatrcswapaxesr)(argminchoosedumpdumpsfillgetfieldgetAgetA1itemnonzeroputputmaskresize searchsortedsetflagssetfieldsort partition argpartition newbyteorder to_devicetaketofiletolisttobytesrrrIargmaxrr`r[rrlrerUstdctypesitemset bitwise_count_r?r)rrrdir startswithgetattr isinstance collectionsabcCallablerrgetrrrealimagrndarray) r#a methodargsexcluded_methodsattribfargsbcds r,test_instance_methodsz&TestMatrixReturn.test_instance_methodssB C5 %88SE? !f 8F  %3C)C6"A![__556s !~~fb1tHQ6)fX7 8 QVV &'QVV &'se}$$&1Q2::%&Q2::%&r.N)r<r=r>rr?r.r,rrs#'r.rceZdZdZy) TestIndexingcttjdt}tjdt}gd|dddf<|dkD|dddf<t |ddgddgddggy)Nrr)rr)g?g?g333333?rrrrrzerosfloatr rVs r,r-zTestIndexing.test_basic;sb RXXfe, - HHVU #!!Q$c'!Q$Q!Q!Q!Q01r.Nrr?r.r,rr:s2r.rc^eZdZeddgddggZdZdZdZdZd Z d Z d Z d Z d Z y)TestNewScalarIndexingrrrrcR|j}|d}t|jdy)Nrr)rr ndimr#rrWs r,test_dimesionsz$TestNewScalarIndexing.test_dimesionsFs" FF aDQVVQr.cz|j}tj||g}t|jgdy)N)rrr)rrrr r"rs r,test_array_from_matrix_listz1TestNewScalarIndexing.test_array_from_matrix_listKs+ FF HHaV QWWi(r.c\|j}t|jddgddggyr)rr rr#rs r,test_array_to_listz(TestNewScalarIndexing.test_array_to_listPs( FFQXXZ1a&1a&!12r.c|j}|dgdf}tt|tt |tgdg|ddg}tt|tt |tddgddgg|dgdggddgddggf}tt|tt |tddgddggy)Nr)rrr)rrrrrrr)rrrrr rs r,test_fancy_indexingz)TestNewScalarIndexing.test_fancy_indexingTs FF alO 1f%&Q }-. q!fI 1f%&QAA/01 sQCjAq6Aq6** + 1f%&QAA/01r.ctgdgdg}t|ddtgdgt|ddjdt|djdt|dddfjdtd}t|ddt|ddt|dddfj|jy)NrPrQr)rrrrr)rr r"r\s r,test_matrix_elementz)TestNewScalarIndexing.test_matrix_element`s Iy) *QqT!Wfi[12QqT!W]]F+QqTZZ(Qq!tW]]F+ 1IQtWa QqT1Qq!tW]]AGG,r.ctttjdt}t |d|ddy)Nrrrrr\s r,test_scalar_indexingz*TestNewScalarIndexing.test_scalar_indexingls- RXXfe, -QtWad1g&r.cttjd}t|dddfddggt|dddfddggt|dddfdgdggt|dddfdgdggy)Nrrr)rrrr r\s r,test_row_column_indexingz.TestNewScalarIndexing.test_row_column_indexingpsx RVVAY 1QT7aVH-1QT7aVH-1QT7aS1#J/1QT7aS1#J/r.ctjd}d|_t|}t |ddtj ddgf|dddft |tj gdddf|dddfy)NrrTFr)TFF)rr!r"rr rr#r rWs r,test_boolean_indexingz+TestNewScalarIndexing.test_boolean_indexingwsn IIaL QK1Q$ 778!AqD'B1RXX&:;Q>?1a4Ir.ctjd}d|_t|}t |ddddgf|dddddft |gdddf|dddddfy)Nrrrrr)rrr)rr!r"rr rs r,test_list_indexingz(TestNewScalarIndexing.test_list_indexing~s_ IIaL QK1QAY<1dd741Y\?AddAgJ7r.N)r<r=r>rrrrr r rrrrrr?r.r,rrCsGAA A ) 3 2 -'0J8r.rceZdZdZdZy) TestPowerctjddgddgg}ttt |dtj ut |}ttt |dtuyNrrr)rrrrrrrrrs r,test_returntypezTestPower.test_returntypes\ HHq!fq!f% &\!Q'(BJJ67 QK\!Q'(F23r.cHttddgddggdddgddggyr)r rr2s r, test_listzTestPower.test_lists-NOr.N)r<r=r>rrr?r.r,rrs 4 Pr.rceZdZejdgdggZedgdggZdZdZ dZ dZ dZ dZ d Zd Zd Zy ) TestShaperrct|jjdt|jjdy)Nr )r rr"rr2s r, test_shapezTestShape.test_shapes&TVV\\6*TVV\\6*r.cttj|jjdttj|j jdy)Nr)r rravelrr"rr2s r,test_numpy_ravelzTestShape.test_numpy_ravels<RXXdff%++T2RXXdff%++T2r.ct|jjjdt|jjjdyNr$)rr)r rr%r"rr2s r,test_member_ravelzTestShape.test_member_ravels6TVV\\^))40TVV\\^))62r.ct|jjjdt|jjjdyr()r rflattenr"rr2s r,test_member_flattenzTestShape.test_member_flattens8TVV^^%++T2TVV^^%++V4r.ctjgdgdg}ttj|gdttj|dgdttj|jgdttj|jdgdt gdgdg}ttj|gdttj|dgdttj|jgdttj|jdgdyNrPrQ)rrrrrrF)order)rrrrrrr )rrr r%rHrr\s r,test_numpy_ravel_orderz TestShape.test_numpy_ravel_orders HHi+ ,RXXa["45RXXas+-?@RXXacc]$67RXXacc-/AB Iy) *RXXa["45RXXas+-?@RXXacc]$67RXXacc-/ABr.c>tgdgdg}t|jgdgt|jdgdgt|jjgdgt|jjdgdgyr.)rr r%rHr\s r,test_matrix_ravel_orderz!TestShape.test_matrix_ravel_orderss Iy) *QWWY!3 45QWW3W'*<)=>QSSYY[#5"67QSSYYSY),>+?@r.c ttj|j|jj ttj|j|jj  yN)rrmay_share_memoryrr%r+r2s r,test_array_memory_sharingz#TestShape.test_array_memory_sharingL##DFFDFFLLN;<B''0@AABr.c ttj|j|jj ttj|j|jj  yr5)rrr6rr%r+r2s r,test_matrix_memory_sharingz$TestShape.test_matrix_memory_sharingr8r.c(tjdjdjtj}tj |d}t |jdtt|tj y)NrR)rrrrFr) rr!rcrdr expand_dimsr rrr)r#rexpandeds r,test_expand_dims_matrixz!TestShape.test_expand_dims_matrixs_ IIbM ! !& ) . .ryy 9>>!!,X]]A&Jx334r.N)r<r=r>rrrrrr"r&r)r,r1r3r7r:r>r?r.r,r r s]1#sAaSzA+335 CACC5r.r )collections.abcrnumpyrrrrrsr numpy.testingrrr r r r rrArrrrrrr r?r.r,rBs((%,),)^D!D!L""&88v$'$'N22@8@8FPP6565r.