ó 2ÄÈ[c@`s›ddlmZmZmZddlZyddljZWnek rZddl ZnXddl Z ddl m Z m Z mZddlmZmZmZmZmZmZddlmZddlmZdefd„ƒYZd efd „ƒYZd efd „ƒYZd efd„ƒYZdefd„ƒYZdefd„ƒYZ defd„ƒYZ!defd„ƒYZ"defd„ƒYZ#dS(i(tdivisiontabsolute_importtprint_functionN(tmatrixtasmatrixtbmat(tassert_t assert_equaltassert_almost_equaltassert_array_equaltassert_array_almost_equalt assert_raises(t matrix_power(tmattTestCtorcB`s#eZd„Zd„Zd„ZRS(c C`s˜tjddgddggƒ}t|ƒ}ttj|j|kƒƒtdƒ}t||g||ggƒ}tjddddgddddgddddgddddggƒ}ttj|j|kƒƒttj|j|kƒƒtjddgdd ggƒ}tddddgdddd ggƒ}ttjt||gƒ|kƒƒtjdƒ}t|ƒ} t| jd kƒdS( NiiiisA,A;A,Aiiii(ii( tnptarrayRRtalltARtarangetshape( tselfRtmAtBtCtDtEtAEresulttvectmvec((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyt test_basics"!  !*% cC`stttdƒdS(Ntinvalid(R t ValueErrorR(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_exceptions,sc C`sÊtjddgddggƒ}tjddgddggƒ}tjddddgddddgddddgddddggƒ}tjddddgddddgddddgddddggƒ}ttjtd ƒ|kƒƒttjtd d i|d 6ƒ|kƒƒtttd d i|d 6ƒttjtd d i|d 6d i|d 6ƒ|kƒƒtd d i|d 6|d6d i|d6|d6ƒ}ttj||kƒƒdS(NiiiiiiiisA,A;A,AtldictRtgdictsA,B;C,DRRR(RRRRRR t TypeError(RRRtAresultt mixresulttb2((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_bmat_nondefault_str0s"!!,64(t__name__t __module__RR!R((((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRs  tTestPropertiescB`s}eZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „ZRS( cC`stddddgddddgddddgddddggƒ}tddddgƒ}tdd dd gƒj}d }t||jd dƒƒt||jd dƒƒt||jƒƒt|tj|d dƒƒt|tj|d dƒƒt|tj|ƒƒd S(seTest whether matrix.sum(axis=1) preserves orientation. Fails in NumPy <= 0.9.6.2127. iiiiiii iiiitaxisN(RtTR tsumRR(RtMtsum0tsum1tsumall((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_sumEscC`s(tdddgdddggƒ}t|jƒdƒt|jdƒtdd d ggƒƒt|jdƒtdgd ggƒƒttj|ƒdƒttj|d dƒtdd d ggƒƒttj|d dƒtdgd ggƒƒtdddgƒ}t|jƒdkƒdS( NiiiiiiiÐii iixR,(RRtprodRR(Rtxty((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyt test_prodXs$((..cC`sýtdddgdddggƒ}t|jƒdƒt|jdƒtdddggƒƒt|jdƒtdgdggƒƒttj|ƒdƒttj|ddƒtdddggƒƒttj|ddƒtdgdggƒƒdS( NiiiiiiiR,(RRtmaxR(RR5((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_maxes$((.cC`sýtdddgdddggƒ}t|jƒdƒt|jdƒtdddggƒƒt|jdƒtdgdggƒƒttj|ƒdƒttj|ddƒtdddggƒƒttj|ddƒtdgdggƒƒdS( NiiiiiiiR,(RRtminR(RR5((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_minos$((.cC`s”tjdƒjdƒ}t|jƒdkƒttj|jdƒtjddgƒkƒƒttj|jdƒtjddgƒkƒƒdS(Niiiii(ii(RRtreshapeRtptpRR(RR5((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_ptpys1cC`sxtjdƒjdƒ}|jtjƒ}t|jddƒ|jddƒƒt|jddƒ|jddƒƒdS(Ni itddofii(ii(RRR<tviewRRtvar(RR5tmx((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_vars%cC`sxddlj}tjddgddggƒ}t|ƒ}ttj|j|ƒ|jƒƒttj tjtj |ƒ|j kƒƒƒttj tjtj |ƒ|j kƒƒƒttj ||j kƒƒ|d|}t|ƒ}ttj|j|ƒ|jƒƒttj tjtj |ƒ|j kƒƒƒttj tjtj |ƒjƒ|j kƒƒƒdS(Nigð?g@g@g@y@(t numpy.linalgtlinalgRRRRtallclosetinvtIRt transposeR-tHRtconj(RRERRRtmB((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyR…s ".. ".cC`s\ttjdƒjddƒƒ}tddgddgdd ggƒ}t|j|ƒdS( Niiig·ù:Žãè¿gnó)tÇÑ?g#¬Çq¼¿g#¬Çq¼?gnó)tÇá?gç6ŸBÇq¬¿(RRRR<RRH(RR5txpinv((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyt test_pinv–s !  cC`sõtjdƒjddƒ}t|ƒ}t|ƒd}ttj||dkƒƒttj|t|dƒkƒƒttj|t|dƒkƒ ƒttj||kƒƒttj||kƒƒttj||kƒƒttj||kƒ ƒttj||kƒ ƒttj||kƒƒttj||kƒƒttj||kƒ ƒttj||kƒƒttj||kƒ ƒttj||kƒƒttjt|ƒdkƒ ƒttjt|dkƒƒƒdS(Nidi gš™™™™™¹?i(RRR<RRRtanytabs(RRRRL((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_comparisonss& #$ cC`sMtjdƒjddƒ}t|ƒ}d|dRCRRNRQRRRTRVRY(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyR+Ds         t TestCastingcB`seZd„ZRS(cC`stjdƒjddƒ}t|ƒ}|jƒ}tjdtjƒd}||}t|jj tjkƒttj ||kƒƒttj ||dkƒƒ|jƒ}tjdtj ƒ}||}t|jj tj kƒttj ||kƒƒdS(Nidi gš™™™™™¹?(i i (i i ( RRR<Rtcopytonestfloat64RtdtypettypeRt complex128(RRRRLtOtmC((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRÊs     (R)R*R(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRZÉst TestAlgebracB`s,eZd„Zd„Zd„Zd„ZRS(cC`s˜ddlj}tjddgddggƒ}t|ƒ}tjdƒ}xCtdƒD]5}ttj||j |ƒƒtj ||ƒ}qXW|j |ƒ}tjdƒ}xDtdƒD]6}ttj|| j |ƒƒtj ||ƒ}q¼Wttj||j tj ||ƒƒƒttj||j ||ƒƒttjd|j d|ƒƒt|ƒ}|d9}ttj|j d|ƒƒdS( Nigð?g@g@g@iii( RDRERRRtidentitytrangeRRFRtdotRG(RRERRRtitAinvtmA2((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRÝs$! )!!  cC`sžtdƒ}|jƒ}|dC}|jƒ}|dC}|jƒ}|dC}t||dƒt|tj||ƒƒttj||ƒtjdƒƒdS(s<Test raising a matrix to an integer power works as expected.s 1. 2.; 3. 4.iiÿÿÿÿN(RR[R RRfteye(Rtmtm2tmitm4((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_powös       cC`s`tddgddggƒ}x;tjtjgD]'}|dƒ}t|d||ƒq1WdS(Niiii(RRtint8tuint8R (RRktscalar_tttwo((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_scalar_type_pows cC`stddgddggƒ}y d|Wntk r=nX|jdƒy|tƒWntk rmnX|jdƒdS(s:Check that 'not implemented' operations produce a failure.gð?g@g@g@s)matrix.__rpow__ doesn't raise a TypeErrors?matrix.__mul__ with non-numeric object doesn't raisea TypeErrorN(RR$tfailtobject(RR((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_notimplemented s     (R)R*RRoRtRw(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRcÜs  tTestMatrixReturncB`seZd„ZRS(c &C`stdgddƒ}id6d6d7d6dgfd 6d8d 6d9d 6d:d 6tjdgƒd6}dddddddddddddddddd d!d"d#d$d%d&d'd(d)d*dd+d,d-d.d/d0d1d2d3g&}x»t|ƒD]­}|jd4ƒsã||kr qãnt||ƒ}t|tjƒrã|j dƒ|j dƒ||kr^||}nd;}||Œ}t t |ƒtkd5|ƒqãqãWt t |j ƒtkƒt t |jƒtkƒtdgƒjƒ\}} t t |ƒtjkƒt t | ƒtjkƒdS(<Ngð?R^tf8tintctastypegtclipitcompresstrepeatR<itswapaxesRftargmintchoosetdumptdumpstfilltgetfieldtgetAtgetA1titemtnonzerotputtputmasktresizet searchsortedtsetflagstsetfieldtsortt partitiont argpartitionttakettofilettolistttostringttobytesRROR.targmaxR:R8RSRAR=R4tstdtctypestitemsett_s%s(Rz(ggð?(i(i(ii((RRRtdirt startswithtgetattrt isinstancetcollections_abctCallableR{R„RR_trealtimagR‰tndarray( Rtat methodargstexcluded_methodstattribtftargstbtctd((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_instance_methods sB       $(R)R*R¯(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRxst TestIndexingcB`seZd„ZRS(cC`s‘ttjd tƒƒ}tjd tƒ}dddg|dd…df<|dk|dd…dfttddgddggdƒddgddggƒdS(Niii(R R (R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyt test_listœs(R)R*R¿RÀ(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyR¾•s t TestShapecB`sŒeZejdgdggƒZedgdggƒZd„Zd„Zd„Z d„Z d„Z d„Z d„Z d „Zd „ZRS( iicC`s*t|jjdƒt|jjdƒdS(Nii(ii(ii(RR¦RRk(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyt test_shape¥scC`s<ttj|jƒjdƒttj|jƒjdƒdS(Ni(i(i(RRtravelR¦RRk(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_numpy_ravel©scC`s6t|jjƒjdƒt|jjƒjdƒdS(Nii(i(ii(RR¦RÃRRk(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_member_ravel­scC`s6t|jjƒjdƒt|jjƒjdƒdS(Nii(i(ii(RR¦tflattenRRk(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_member_flatten±scC`s³tjdddgdddggƒ}ttj|ƒddddddgƒttj|ddƒddddddgƒttj|jƒddddddgƒttj|jdd ƒddddddgƒtdddgdddggƒ}ttj|ƒddddddgƒttj|ddƒddddddgƒttj|jƒddddddgƒttj|jdd ƒddddddgƒdS( NiiiiiitordertFR(RRRRÃR-R(RR5((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_numpy_ravel_orderµs'(.+1$(.+cC`sÚtdddgdddggƒ}t|jƒddddddggƒt|jddƒddddddggƒt|jjƒddddddggƒt|jjdd ƒddddddggƒdS( NiiiiiiRÈRÉR(RRRÃR-(RR5((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_matrix_ravel_orderÁs $(.+cC`sIttj|j|jjƒƒƒttj|j|jjƒƒ ƒdS(N(RRtmay_share_memoryR¦RÃRÆ(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_array_memory_sharingÈs"cC`sIttj|j|jjƒƒƒttj|j|jjƒƒ ƒdS(N(RRRÌRkRÃRÆ(R((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_matrix_memory_sharingÌs"cC`sdtjdƒjdƒjtjƒ}tj|ddƒ}t|jdƒtt |tjƒ ƒdS(Ni iiR,ii(ii( RRR<R@Rt expand_dimsRR´RR (RR¦texpanded((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyttest_expand_dims_matrixÐs$(R)R*RRR¦RRkRÂRÄRÅRÇRÊRËRÍRÎRÑ(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyRÁ s       ($t __future__RRRtpytesttcollections.abctabcR¡t ImportErrort collectionstnumpyRRRRt numpy.testingRRRR R R RDR tnumpy.matrixlibR RvRR+RZRcRxR°R³R¾RÁ(((sC/tmp/pip-build-fiC0ax/numpy/numpy/matrixlib/tests/test_defmatrix.pyts&   ./…C* C