B )Ztol)leglegtrim)xrW/opt/alt/python37/lib64/python3.7/site-packages/numpy/polynomial/tests/test_legendre.pytrimsr c@s,eZdZddZddZddZddZd S) TestConstantscCsttjddgdS)Nr r )r rZ legdomain)selfrrrtest_legdomain!szTestConstants.test_legdomaincCsttjdgdS)Nr)r rZlegzero)r"rrr test_legzero$szTestConstants.test_legzerocCsttjdgdS)Nr )r rZlegone)r"rrr test_legone'szTestConstants.test_legonecCsttjddgdS)Nrr )r rZlegx)r"rrr test_legx*szTestConstants.test_legxN)__name__ __module__ __qualname__r#r$r%r&rrrrr!sr!c@sBeZdZedddZddZddZdd Zd d Z d d Z dS)TestArithmeticr r dcCsxtdD]}xtdD]~}d||f}tt||d}||d7<||d7<tdg|dgdg|dg}tt|t||dqWq WdS)Nrz At i=%d, j=%dr r)err_msg)rangenpzerosmaxrlegaddr r )r"ijmsgtgtresrrr test_legadd1s $zTestArithmetic.test_legaddcCsxtdD]}xtdD]~}d||f}tt||d}||d7<||d8<tdg|dgdg|dg}tt|t||dqWq WdS)Nrz At i=%d, j=%dr r)r,)r-r.r/r0rZlegsubr r )r"r2r3r4r5r6rrr test_legsub;s $zTestArithmetic.test_legsubcCsttdgdgttdgddgxbtddD]T}d|d}dg|dg}dg|d||d|d|g}tt||q6WdS)Nrr rr)r rZlegmulxr-)r"r2ZtmpZserr5rrr test_legmulxEs $zTestArithmetic.test_legmulxc CsxtdD]}dg|dg}t|j|}xtdD]t}d||f}dg|dg}t|j|}t||}t|j|} tt|||dk|t| |||dq6Wq WdS)Nrrr z At i=%d, j=%d)r,)r-rlegvalrlegmulr lenr) r"r2Zpol1Zval1r3r4Zpol2Zval2Zpol3Zval3rrr test_legmulNs  zTestArithmetic.test_legmulc CsxtdD]}xtdD]v}d||f}dg|dg}dg|dg}t||}t||\}}tt|||} tt| t||dqWq WdS)Nrz At i=%d, j=%drr )r,)r-rr1Zlegdivr;r r ) r"r2r3r4ZciZcjr5ZquoZremr6rrr test_legdiv\s  zTestArithmetic.test_legdivN) r'r(r)r.linspacerr7r8r9r=r>rrrrr*.s    r*c@seZdZedddgZedeeZedeeeZej dddZ e e dddgZ d d Z d d Zd dZddZddZdS)TestEvaluationg@zi,j->ijz i,j,k->ijk)rrrr g?g@csttgdgjdtddfddtD}xFtdD]:}d|}||}tdg|dg}t|||dq>Wxltd D]`}d g|}t |ttdgj |ttddgj |ttdddgj |qWdS) Nr rr csg|]}t|qSr)r).0c)rrr xsz.TestEvaluation.test_legval.. zAt i=%d)r,rr) r rr:sizer.r?Llistr-rr/shape)r"yr2r4r5r6Zdimsr)rr test_legvalrs   zTestEvaluation.test_legvalc Cs|j\}}}|j\}}}tttj||dd|j||}t|||j}t||t d} t| | |j}t |j dkdS)Nr)rr) rrHr ValueErrorrlegval2dc2drr.onesr rG) r"x1x2x3y1y2y3r5r6zrrr test_legval2ds    zTestEvaluation.test_legval2dc Cs|j\}}}|j\}}}tttj|||dd|j|||}t||||j}t||t d} t| | | |j}t |j dkdS)Nr)rr) rrHrrJrlegval3dc3drr.rMr rG) r"rNrOrPrQrRrSr5r6rTrrr test_legval3ds     zTestEvaluation.test_legval3dc Csl|j\}}}|j\}}}td||}t|||j}t||td} t| | |j}t |j dkdS)Nzi,j->ij)rr)rrrr) rrHr.einsumrZ leggrid2drLrrMr rG) r"rNrOrPrQrRrSr5r6rTrrrtest_leggrid2ds    zTestEvaluation.test_leggrid2dc Csr|j\}}}|j\}}}td|||}t||||j}t||td} t| | | |j}t |j dkdS)Nz i,j,k->ijk)rr)rrrrrr) rrHr.rYrZ leggrid3drWrrMr rG) r"rNrOrPrQrRrSr5r6rTrrrtest_leggrid3ds    zTestEvaluation.test_leggrid3dN)r'r(r)r.arrayZc1drYrLrWrandomrrrHrIrUrXrZr[rrrrr@hsr@c@seZdZddZddZdS) TestIntegralc Cs2tttjdgdtttjdgdtttjdgdddgxFtddD]8}dg|ddg}tjdg||d}t|ddgqHWxztdD]n}|d}dg|dg}|gdg|d|g}t|}tj|d|gd}t|}tt|t|qWxZtdD]N}|d}dg|dg}t|}tj|d|gdd}tt d||q Wx~tdD]r}|d}dg|dg}|gdg|d|g}t|}tj|d|gdd }t|}tt|t|qfWxtdD]z}xrtddD]d} dg|dg}|dd}x t| D]}tj|dd }q Wtj|| d }tt|t|qWqWxtdD]}xtddD]r} dg|dg}|dd}x$t| D]}tj|d|gd}qWtj|| t t| d}tt|t|q~WqnWxtdD]}xtddD]v} dg|dg}|dd}x&t| D]}tj|d|gdd}q>Wtj|| t t| dd}tt|t|qWqWxtdD]}xtddD]v} dg|dg}|dd}x&t| D]}tj|d|gdd }qWtj|| t t| dd }tt|t|qWqWdS) Nrg?r r rr)mk)r_r`Zlbnd)r_r`scl)r_) rrJrlegintr-rpoly2legleg2polyr r:list) r"r2r`r6rapolr5Zlegpolrbr3rrr test_legintsz         zTestIntegral.test_legintcCstjd}tdd|jDj}tj|dd}t||tdd|D}tj|dd}t||tdd|D}tj|d dd }t||dS) N)rcSsg|]}t|qSr)rrb)rArBrrrrCsz1TestIntegral.test_legint_axis..r)axiscSsg|]}t|qSr)rrb)rArBrrrrC sr cSsg|]}tj|ddqS)r)r`)rrb)rArBrrrrC$sr)r`ri)r.r]vstackTrrbr)r"rLr5r6rrrtest_legint_axiss   zTestIntegral.test_legint_axisN)r'r(r)rgrlrrrrr^sPr^c@seZdZddZddZdS)TestDerivativecCs.tttjdgdtttjdgdx@tdD]4}dg|dg}tj|dd}tt|t|q.Wx^tdD]R}xLtddD]>}dg|dg}tjtj||d|d}tt|t|qWqpWxbtdD]V}xPtddD]B}dg|dg}tjtj||dd|dd}tt|t|qWqWdS) Nrg?r rr )r_r)r_ra) rrJrlegderr-r r rbr)r"r2r5r6r3rrr test_legder+s zTestDerivative.test_legdercCsltjd}tdd|jDj}tj|dd}t||tdd|D}tj|dd}t||dS)N)rrhcSsg|]}t|qSr)rrn)rArBrrrrCHsz3TestDerivative.test_legder_axis..r)ricSsg|]}t|qSr)rrn)rArBrrrrCLsr )r.r]rjrkrrnr)r"rLr5r6rrrtest_legder_axisDs  zTestDerivative.test_legder_axisN)r'r(r)rorprrrrrm)srmc@s8eZdZejdddZddZddZdd Zd S) TestVander)rrrr cCstd}t|d}t|jdkx:tdD].}dg|dg}t|d|ft||q.Wt ddgddgdd gg}t|d}t|jd kx:tdD].}dg|dg}t|d|ft||qWdS) Nr)rrhrhrr .rr)rrrh) r.Zaranger legvanderr rGr-rr:r\)r"rvr2coefrrrtest_legvanderUs   zTestVander.test_legvandercCsx|j\}}}tjd}t||ddg}t|||}t||j}t||t|g|gddg}t |j dkdS)N)rrr r)r rrr) rr.r]rZ legvander2drKdotflatrr rG)r"rNrOrPrBvanr5r6rrrtest_legvander2dfs   zTestVander.test_legvander2dcCs|j\}}}tjd}t|||dddg}t||||}t||j}t||t|g|g|gdddg}t |j dkdS)N)rrrhr rr)r r) rr.r]rZ legvander3drVrwrxrr rG)r"rNrOrPrBryr5r6rrrtest_legvander3dss   zTestVander.test_legvander3dN) r'r(r)r.r]rrvrzr|rrrrrqQs rqc@seZdZddZdS) TestFittingc Cs&dd}dd}tttjdgdgdtttjdggdgdtttjgdgdtttjdgdgggdtttjddgdgdtttjdgddgdtttjdgdgddggd tttjdgdgdddgd tttjdgdgdgtttjdgdgddd gtttjdgdggtdd}||}t||d }tt|d t t |||t||dddd g}tt|d t t |||t||d }tt|d t t |||t||dddd d g}tt|d t t |||t||dd d ddg}tt|d t t |||t|t ||gj d }t |t ||gj t|t ||gj dddd g}t |t ||gj t |}|} d|ddd<d|ddd<tj|| d |d } t | |tj|| dddd g|d } t | |tj|t | | gj d |d } t | t ||gj tj|t | | gj dddd g|d } t | t ||gj ddddg}t t||dddgt t||ddgddgtdd}||}t||d } t t || |t||ddd g} t t || |t | | dS)NcSs||d|dS)Nr rr)rrrrfsz"TestFitting.test_legfit..fcSs|d|ddS)Nrhrr r)rrrrf2sz#TestFitting.test_legfit..f2r r rr)wrrrrhry?y)rrJrZlegfit TypeErrorr.r?r r<rr:r\rkZ zeros_likecopy)r"r~rrrHZcoef3Zcoef4Zcoef2drZywZwcoef3Zwcoef2dZcoef1Zcoef2rrr test_legfitsp "   &  zTestFitting.test_legfitN)r'r(r)rrrrrr}sr}c@s$eZdZddZddZddZdS) TestCompanioncCs"tttjgtttjdgdS)Nr )rrJr legcompanion)r"rrr test_raisesszTestCompanion.test_raisescCs@x:tddD],}dg|dg}tt|j||fkq WdS)Nr rr)r-r rrrG)r"r2rurrrtest_dimensionsszTestCompanion.test_dimensionscCsttddgddkdS)Nr r)rrg)r rr)r"rrrtest_linear_rootszTestCompanion.test_linear_rootN)r'r(r)rrrrrrrrsrc@seZdZddZdS) TestGausscCs|td\}}t|d}t|j||}dt|}|dddf||}t|t dd}t| |dS)Nr+cr g@) rZleggaussrsr.rwrkZsqrtZdiagonalrZeyesum)r"rrrtZvvZvdr5rrrtest_100s zTestGauss.test_100N)r'r(r)rrrrrrsrc@sDeZdZddZddZddZddZd d Zd d Zd dZ dS)TestMiscc Cstg}tt|dgxtddD]z}tttj dd|dddd}t|}t ||}d}t t ||dktt |ddt||q&WdS)Nr rrrr ) r legfromrootsrr r-r.Zcosr?Zpir:r r<rd)r"r6r2rootsrfr5rrrtest_legfromrootss *  zTestMisc.test_legfromrootscCspttdggttddgdgxBtddD]4}tdd|}tt|}tt|t|q4WdS)Nr rgrr )rrZlegrootsr-r.r?rr )r"r2r5r6rrr test_legrootss zTestMisc.test_legrootscCsfddddg}tttj|dtt||ddtt|d|ddtt|ddgdS)Nrr r rr)rrJrrr )r"rurrr test_legtrims  zTestMisc.test_legtrimcCsttddddgdS)Nrrh)r rZlegline)r"rrr test_leglineszTestMisc.test_leglinecCs6x0tdD]$}ttdg|dgt|q WdS)NrDrr )r-rrrdrF)r"r2rrr test_leg2polyszTestMisc.test_leg2polycCs6x0tdD]$}ttt|dg|dgq WdS)NrDrr )r-rrrcrF)r"r2rrr test_poly2legszTestMisc.test_poly2legcCs*tddd}d}t|}t||dS)Nr r g?)r.r?rZ legweightr)r"rr5r6rrr test_weights zTestMisc.test_weightN) r'r(r)rrrrrrrrrrrrs  r__main__),__doc__Z __future__rrrZnumpyr.Znumpy.polynomial.legendreZ polynomialZlegendrerZnumpy.polynomial.polynomialrZ numpy.testingrrrr r r r\ZL0ZL1ZL2ZL3ZL4ZL5ZL6ZL7ZL8ZL9rFr r!r*r@r^rmrqr}rrrr'rrrrs:    ":^c(0M3