2[c@`s|dZddlmZmZmZddlZddlmZm Z m Z m Z m Z m Z mZdefdYZdS(s >>> p = np.poly1d([1.,2,3]) >>> p poly1d([1., 2., 3.]) >>> print(p) 2 1 x + 2 x + 3 >>> q = np.poly1d([3.,2,1]) >>> q poly1d([3., 2., 1.]) >>> print(q) 2 3 x + 2 x + 1 >>> print(np.poly1d([1.89999+2j, -3j, -5.12345678, 2+1j])) 3 2 (1.9 + 2j) x - 3j x - 5.123 x + (2 + 1j) >>> print(np.poly1d([-3, -2, -1])) 2 -3 x - 2 x - 1 >>> p(0) 3.0 >>> p(5) 38.0 >>> q(0) 1.0 >>> q(5) 86.0 >>> p * q poly1d([ 3., 8., 14., 8., 3.]) >>> p / q (poly1d([0.33333333]), poly1d([1.33333333, 2.66666667])) >>> p + q poly1d([4., 4., 4.]) >>> p - q poly1d([-2., 0., 2.]) >>> p ** 4 poly1d([ 1., 8., 36., 104., 214., 312., 324., 216., 81.]) >>> p(q) poly1d([ 9., 12., 16., 8., 6.]) >>> q(p) poly1d([ 3., 12., 32., 40., 34.]) >>> np.asarray(p) array([1., 2., 3.]) >>> len(p) 2 >>> p[0], p[1], p[2], p[3] (3.0, 2.0, 1.0, 0) >>> p.integ() poly1d([0.33333333, 1. , 3. , 0. ]) >>> p.integ(1) poly1d([0.33333333, 1. , 3. , 0. ]) >>> p.integ(5) poly1d([0.00039683, 0.00277778, 0.025 , 0. , 0. , 0. , 0. , 0. ]) >>> p.deriv() poly1d([2., 2.]) >>> p.deriv(2) poly1d([2.]) >>> q = np.poly1d([1.,2,3], variable='y') >>> print(q) 2 1 y + 2 y + 3 >>> q = np.poly1d([1.,2,3], variable='lambda') >>> print(q) 2 1 lambda + 2 lambda + 3 >>> np.polydiv(np.poly1d([1,0,-1]), np.poly1d([1,1])) (poly1d([ 1., -1.]), poly1d([0.])) i(tdivisiontabsolute_importtprint_functionN(tassert_t assert_equaltassert_array_equaltassert_almost_equaltassert_array_almost_equalt assert_raisestrundocstTestDocscB`s}eZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d ZRS( cC`stS(N(R (tself((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_doctestsYsc C`s4ttjdtjd tjdgddddgdddgdddgd d d gg}ttj|dd d dgttjtjd d ddgttjtjddd d!d"d#gttjtjddd$d%d&d'gttjtjddd(d)gttjtjddddgttjtjddgttjtjddgttjtjddgtjjdtjj ddtjj d}ttjtjtj |tj |fdS(*NiiiiiiiiiiiiiiyZd;O?yCl@yClyZd;Oy?yy@g?y @y@yiyi*idy?yy?@y?y? @y? y?@y?y?@y?y?@y?( RtnptpolytsqrtRt isrealobjt iscomplexobjtrandomtseedtrandnt concatenatet conjugate(R tAta((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_poly\s +*"*.(("""&cC`s)ttjdddgddgdS(Nii(RR troots(R ((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_rootstscC`sxtjddddg}d|d/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyttest_str_leading_zerosws    c C`s6tjdddg}tjddd}tj||}dddddddg}tjd dddd }tttjddd gddd gd dd ttj|||dd t\}}dddg}t ||dddddgdddgdddgg} t | |ddtj|||dd|d t\} } t dddg| dddddgdd d!gdd!d"gg} t | | dd|ddtj f}|ddtj f}t |tj||dtj ||fd#d} tj ||fd#d}t |tj|| dtj|| tj|ddtj fdd t\}}t ||dddfddt ||dddfddt | |dddddfddt | |dddddfdddS($Ng@g@g?iiiiiig@itdegtcovgz6>W@gH?gCl?tdecimalig @g g ?g0*x)@g_)g~jt@twg@g*:HgY8m?g.!!@g0L F$gH}8?g:+@ghsgz6>W[?taxis( R tarraytlinspacetpolyvaltarangeRt ValueErrortpolyfittTrueRtnewaxisR(R tctxtyterrtweightstmR!testtval0tm2tcov2tvaltyytcc((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_polyfits> (%  +  A##,cC`sKddlm}tj|d|d|dg}||d}t|d|dk|j}t|d|d k|j}t|d |d kt|d |d kttj|jj tj tj |d|d g}t tj |d|d gd|d|d gdS(Ni(tDecimals4.0s3.0s2.0s1.333333333333333is3.9999999999999990s8.0is1.333333333333333333333333333is1.5i( R"R;R RRtderivtintegt issubdtypetcoeffstdtypetobject_RR(R R;Rtp2((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_objectss*  !!cC`sxtjdddg}|j}t|jddddgkj|j}t|jddgkjdS(Ny@y@y?iy@(R RR=RR?tallR<(R RRB((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_complexs  % cC`setjdddg}|jdddddg}t|jddddddgkjdS(Niiitki iig@g@g@g@g?g?g?gUUUUUU?gUUUUUU?g?gUUUUUU?g"@g@(R RR=RR?RD(R RRB((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyttest_integ_coeffsscC`s2ytjtjdWntk r-nXdS(Ni(ii(R RtzerosR)(R ((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyttest_zero_dimss cC`s>tjdd}ttj|tjtj|dS(s. Regression test for gh-5096. iiN(R R(RRtdiag(R tv((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyttest_poly_int_overflowscC`stjdddg}tjdddg}t|dktt|dktt||ktt||ktt||ktdS(Niiii(R RRtNonetFalseR+(R RRB((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_poly_eqscC`stjddddg}tjddd dg}tj||\}}t|jjtjt|jjtjt||||dS( Niiiyy@y?y?@y@?y(R RtpolydivRR?R@t complex128(R tbRtqtr((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyt test_polydivs cC`stjdddg}y|jd7_Wntk r>nXt|jdddg|jdcd7/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyttest_poly_coeffs_immutables (t__name__t __module__R RRRR:RCRERGRIRLRORURW(((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pyR Xs    ,      (t__doc__t __future__RRRtnumpyR t numpy.testingRRRRRRR tobjectR (((s>/tmp/pip-build-fiC0ax/numpy/numpy/lib/tests/test_polynomial.pytNs 4