bgGdZddlZddlmZddlZddlZddlm Z m Z m Z m Z m Z mZddlmZmZmZmZddlmZe e e e e efZedeDZejeed ZejjZd+d ZeZeZd Zd Z dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-dZ.dZ/dZ0dZ1dZ2d Z3d!Z4d"Z5d#Z6d$Z7d%Z8d&Z9d'Z:d(Z;Gd)d*Zrs$11#111111)paramsidsc|jSr)param)requests rPolyrs =rcB ttj|j|jkttj|j|jkt |j|jdS#t$rd|d|}t|wxYw)NzResult: z Target: )r npalldomainwindowr coefAssertionError)p1p2msgs rassert_poly_almost_equalr(&s"ryBI-..///ryBI-..///BGRW----- """+++r++S!!!"s A8A<<"Bctjddd}td}|jtddzz}|jtddzz}||||}|jtddzz}|jtddzz}||||} t | j|t | j|t | |||dS) Nr ?r!r")kindr!r")rlinspacerandomr!r"convertr Poly1Poly2xr#d1w1r%d2w2r&s rtest_conversionr>8s Aq"A $<.fs!a%y!a%  rrr-r.r0r1)rr*r/r-r*r/)rF) rr3r\r r!r rQr4r" zeros_likeshape) rrfr9r_rGrErFzr%r&p3s rtest_fitrks!!! AqA !A AqA1a&)))!a   Q fTll3&&A fTll3&&A Aq1--A!a   !$$$!$$$ A|||Aa88A!a   !$$$!$$$ Aq"A4;'''4;''' A|||R((A4;'''4;''' aA F17OOC A AcccF !CCaC&!CCaC&! $ $B !QQ  B !Q  * *B1rr!uu%%%1rr!uu%%%%%rcD|gdddgddg}|gdddgddg}|gdddgddg}|gdddgddg}t||kt||k t||k t||k dSNr*r/r-rr*r/r-r1)r*r*r*r rr%r&rjp4s r test_equalrrs iiiA1v 6 6 6B iiiA1v 6 6 6B iiiA1v 6 6 6B iiiA1v 6 6 6B B"H bL bL bLrc@|gdddgddg}|gdddgddg}|gdddgddg}|gdddgddg}t||k t||kt||kt||kdSrmrorps rtest_not_equalrts iiiA1v 6 6 6B iiiA1v 6 6 6B iiiA1v 6 6 6B iiiA1v 6 6 6B bL B"H B"H B"Hrc ttddz}ttddz}||}||}||z}t||z|t||z|t||z|t|t|z|tt||z|t|t j|z|tt j||z|t ttj ||dg|j dzt ttj ||dg|j dz|tur1t ttj |tdgdSt ttj |tdgdSN?r,rr*r!r")listr4r(tuplerarrayr TypeErroropaddr!r"rrrc1c2r%r&rjs rtest_addrs fTllR B fTllR B bB bB bBR"Wb)))R"Wb)))R"Wb)))R%))^R000U2YY^R000R"(2,,.333RXb\\B.333)RVRqc$+/)J)J)JKKK)RVRqc$+/)J)J)JKKK ziYs^^<<<<<iZ__=====rc ttddz}ttddz}||}||}||z }t||z | t||z |t||z | t|t|z |tt||z | t|t j|z |tt j||z | t ttj ||dg|j dzt ttj ||dg|j dz|tur1t ttj |tdgdSt ttj |tdgdSrv)r|r4r(r}rr~r rrsubr!r"rrrs rtest_subrs fTllR B fTllR B bB bB bBR"Wrc***R"Wb)))R"Wrc***R%))^R000U2YY^bS111R"(2,,.333RXb\\B.444)RVRqc$+/)J)J)JKKK)RVRqc$+/)J)J)JKKK ziYs^^<<<<<iZ__=====rc dttddz}ttddz}||}||}||z}t||z|t||z|t||z|t|t|z|tt||z|t|t j|z|tt j||z|t|dz||dgztd|z||dgzt ttj ||dg|j dzt ttj ||dg|j dz|tur1t ttj |tdgdSt ttj |tdgdS) Nrwryr,r/rr*rzr{)r|r4r(r}rr~r rrmulr!r"rrrs rtest_mulrs fTllR B fTllR B bB bB bBR"Wb)))R"Wb)))R"Wb)))R%))^R000U2YY^R000R"(2,,.333RXb\\B.333R!VR$$s))^444QVR$$s))^444)RVRqc$+/)J)J)JKKK)RVRqc$+/)J)J)JKKK ziYs^^<<<<<iZ__=====rc ttddz}ttddz}ttddz}||}||}||}||z|z}t|j}t||z|t||z|t||z|t|t |z|tt ||z|t|t j|z|tt j||z|td|z|dgt|dzd|ztttj ||dg|j dztttj ||dg|j dz |tur1tttj |tdgdStttj |tdgdS Nrwryr,r.r/rr*rzr{)r|r4r#r(r}rr~r rrfloordivr!r"rr rrrc3r%r&rjrqc4s r test_floordivrs, fTllR B fTllR B fTllR B bB bB bB b2B bgBR2Xr***R2Xr***R2Xr***R599_b111U2YY"_b111R28B<</444RXb\\R/444Q"WddA3ii000R1Wc"f---2;DD!T[1_$E$E$EGGG2;DD!T[1_$E$E$EGGG zib)QC..AAAAAib*aS//BBBBBrc 8|gd}|dz}tjD]|}t|trt|tr-|d}t t j|||ttt j||}ttfD]Q}|d}t t j|||ttt j||RtfD]R}|dd}t t j|||ttt j||Stttt tjdgfD]D}ttt j||ttt j||Et"D],}ttt j||d-dS)NrnrJrr*)r ScalarType issubclassrboolr(rtruedivr rintfloatcomplexr}r|dictr~classes)rr%r&stypesptypes r test_truedivr1s gggB aB44%(( Jud,C,C   E!HH B!2!2B777iQ3333u44 E!HH B!2!2B777iQ333344 E!QKK B!2!2B777iQ3333ggtvvtvvtvvrx}} =44iR333iQ3333;;iRq::::;;rc ttddz}ttddz}ttddz}||}||}||}||z|z}t|j}t||z|t||z|t||z|t|t |z|tt ||z|t|t j|z|tt j||z|td|z|dgt|dz|dgtttj ||dg|j dztttj ||dg|j dz |tur1tttj |tdgdStttj |tdgdSr)r|r4r#r(r}rr~r rrmodr!r"rrrs rtest_modrLs fTllR B fTllR B fTllR B bB bB bB b2B bgBR"Wb)))R"Wb)))R"Wb)))R%))^R000U2YY^R000R"(2,,.333RXb\\B.333QVTT1#YY///R!VTT1#YY///)RVRqc$+/)J)J)JKKK)RVRqc$+/)J)J)JKKK ziYs^^<<<<<iZ__=====rc  ttddz}ttddz}ttddz}||}||}||}||z|z}t|j}t||\} } t | |t | |t||\} } t | |t | |t||\} } t | |t | |t|t |\} } t | |t | |tt ||\} } t | |t | |t|t j|\} } t | |t | |tt j||\} } t | |t | |t|d\} } t | d|zt | |dgtd|\} } t | |dgt | |dgttt||dg|j dzttt||dg|j dz |tur,ttt|tdgdSttt|tdgdSr)r|r4r#divmodr(r}rr~r rr!r"rr) rrrrr%r&rjrqrquorems r test_divmodrgs/ fTllR B fTllR B fTllR B bB bB bB b2B bgBb"~~HCS"%%%S"%%%b"~~HCS"%%%S"%%%b"~~HCS"%%%S"%%%b%))$$HCS"%%%S"%%%eBii$$HCS"%%%S"%%%b"(2,,''HCS"%%%S"%%%bhrllB''HCS"%%%S"%%%b!}}HCS#b&)))S$$s)),,,a}}HCS$$s)),,,S$$s)),,,)VRqc$+/)J)J)JKKK)VRqc$+/)J)J)JKKK ziYs^^<<<<<iZ__=====rc|jdzdz}|j}tj|d|dd}tj||||}t||tj||}t||dS)Ng?r0rr*rJr1)r!r"rr3sortrProotsr )rrErFtgtress r test_rootsrs dS A A +adAaD! $ $C '$..Qq.99??AA B BCS!!! '$..%%++-- . .CS!!!!!rct|d}t|ddSNrJ)rKr rQrrGs r test_degreers/ 1 AQrcB|d}|}t||kt||ut|j|jut|j|jut|j|judSr)rKcopyr r#r!r")rr%r&s r test_copyrs AB B B"H BbL BG27 "### BIRY &''' BIRY &'''''rcht}||gd}||}||d}t||gdt||gd||gd}||d}||dddg}t||gdt||gd||gd}||d }||dd }t||gd t||gd d|jz}||gd| }||}||d}t||gdt||gddS) N)r/ r/)rr/r-rx)rrr*r*r*r*k)r*r/r-rx)r*r*r*r*r*)lbnd)r/r-rx)rrr*r*r*rz)rr@integr(r!)rPp0r%r&rEs r test_integrsoA 11___%% & &B   B   BR<<<111R???!3!3444 11___%% & &B 1  B q!f%% & &BR<<<111R???!3!3444 11___%% & &B a  ! !B ## $ $BR===!1!1222R#3#3#3!4!4555 $+ A 11___%%a 0 0B   B   BR<<<111R???!3!344444rc|jtddzz}|jtddzz}|gd||}|dddg}|ddg}t |dj|jt |dj|j|gd}|dddg}|ddg}t |dj|jt |dj|jdS)Nr.r0rnr1r/r*r)r!r4r"rr derivr#)rrErFr%r&rjs r test_derivrs? fTll3&&A fTll3&&A iii! , , ,B !1v  B !s  B ("'222 ("'222 iiiB !1v  B !s  B ("'222 ("'22222rc|jtddzz}|jtddzz}|gd||}tj|d|dd}||}|d\}}t ||t ||tjddd}||}|dddg \}}t ||t ||dS) Nr.r0rnr1rr*r/rz)r!r4r"rr3r )rrErFrGxtgtytgtxresyress r test_linspacers fTll3&&A fTll3&&A YYYq+++A ;qtQqT2 & &D 1T77DBJD$d###d### ;q!R D 1T77DB1v..JD$d###d#####rc |jtddzz}|jtddzz}|dg||}|gd||}tdD]}t ||z|||z}|dg}|gd}tdD]}t ||z|||z}t t tj|dt t tj|ddS) Nr.r0r*r1rnrJg?rO) r!r4r"ranger(r ValueErrorrpow)rrErFrtstis rtest_powrs fTll3&&A fTll3&&A $s1Q ' ' 'C $yyy1 - - -C 1XX a---Ci $s))C $yyy//C 1XX a---Ci*bfc3///*bfc2.....rct}|j}tj|d|dd}||gd}d|dd|zzzz}||}t ||dS)Nrr*rCrnr/r-)rr!rr3r@r )rrrEr9rGrrs r test_callrsA A AaD!A$##A !!III,,A aQqSk/C !A$$CS!!!!!rc |gd}tt|jdtt|jdtt |ddtt |ddtt |ddtt |dddS)NrnryrOr-r/r*r)r rcutdegr rRrs r test_cutdegrs YYYA*ah+++*ah+++QXXa[[!!1%%%QXXa[[!!1%%%QXXa[[!!1%%%QXXa[[!!1%%%%%rc |gd}tt|jdtt|jdtt |ddtt |ddtt |ddtt |dddS)Nrnryrrxr-r/r*)r rtruncater rRrs r test_truncaters YYYA*aj"---*aj!,,,QZZ]]##Q'''QZZ]]##Q'''QZZ]]##Q'''QZZ]]##Q'''''rcBgd}||}t|j|ddt|dj|ddt|dj|dddS)N)r*gư>g-q=rr-g|=r/gh㈵>r*)r trimr#)rcrGs r test_trimr"sA QA"1"&&&#QrrU+++"AbqbE*****rc|j}|j}|dg||}tddg|d|zdz}|dg||}tddg|dS)Nr*r1rr/)r!r"r mapparmsrLs r test_mapparmsr*s A A aS1%%%AA --- !aA aS1%%%AA -----rc|gd}tjd}tttj||tttj||dS)Nrnr-)ronesr rr)rrGr9s rtest_ufunc_overrider6sR YYYA  A)RVQ***)RVQ*****rc&eZdZdZdZdZdZdS)TestInterpolatec||dz z|dz zSrdre)selfr9s rrfzTestInterpolate.fDsAE{a!e$$rctttj|jdtt tj|jddS)NrOg$@)r rr interpolaterfr)rs r test_raiseszTestInterpolate.test_raisesGs:j)"7DDDi!6DDDDDrctddD]?}ttj|j||k@dS)Nr*rJ)rr rrrfrQ)rdegs rtest_dimensionszTestInterpolate.test_dimensionsKsXA;; H HC I)$&#66==??3F G G G G H Hrc  d}tjddd}tddD]X}td|dzD]B}tj||ddg|f}t |||||dCYdS) Nc ||zSrre)r9rGs rpowxz0TestInterpolate.test_approximation..powxQs a4Krrr/r+r*)r!r^rC)decimal)rr3rrrr )rrr9rtrGs rtest_approximationz"TestInterpolate.test_approximationOs    K1b ! !B<< B BC1cAg&& B B)$QF!NNN#AAaDD$$q!**bAAAAA B B BrN)r __module__ __qualname__rfrrrrerrrrBs[%%%EEEHHH B B B B Brr)r)=__doc__operatorrnumbersrrZnumpyrnumpy.polynomialrrrrrr numpy.testingr r r r numpy.polynomial.polyutilsrrr}classidsfixturerr4r(r7r8r>rArHrMrVrarkrrrtrrrrrrrrrrrrrrrrrrrrrrerrrsy  BBBBBBBBBBBBBBBB322222)X X  511111 1 1wH---.-  """"  &&&"&&&,!!!&&&(((&LLL)&)&)&X>>>,>>>,>>>.CCC8;;;6>>>6*>*>*>Z"""   (((555:333$$$$$///& " " "&&&(((+++ . . .+++BBBBBBBBBBr