K iP dZddlmZddlZddlmcmZddl m Z ddl m Z m Z mZmZdZdgZddgZgdZgd Zgd Zgd Zgd Zgd ZgdZgdZeeeeeeeeeeg ZGddZGddZGddZGddZGddZ GddZ!GddZ"GddZ#Gd d!Z$Gd"d#Z%Gd$d%Z&Gd&d'Z'y)(zTests for chebyshev module. )reduceN)polyval)assert_assert_almost_equal assert_equal assert_raisesc0tj|dS)Ngư>)tol)chebchebtrimxs k/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/numpy/polynomial/tests/test_chebyshev.pytrimrs == %%)r)rr)rrir)rrir)rrrir )rir8rir@) rrirrir) r riririrceZdZdZdZy) TestPrivatec$tdD]}tjdgdg|zztj}tjdg|zdgzdg|zztj}t j |}t ||y)Nrrr?)rangenparraydoubler _cseries_to_zseriesrselfiinptgtress rtest__cseries_to_zseriesz$TestPrivate.test__cseries_to_zseries%szq #A((A3!q="))4C((B4!8qc>RD1H4bii@C**3/C c "  #rc$tdD]}tjdg|zdgzdg|zztj}tjdgdg|zztj}t j |}t ||y)Nrr%rr)r&r'r(r)r _zseries_to_cseriesrr+s rtest__zseries_to_cseriesz$TestPrivate.test__zseries_to_cseries,szq #A((B4!8qc>RD1H4bii@C((A3!q="))4C**3/C c "  #rN)__name__ __module__ __qualname__r1r4rrr#r##s ##rr#c$eZdZdZdZdZdZy) TestConstantsc<ttjddgy)Nrr)rr chebdomainr,s rtest_chebdomainzTestConstants.test_chebdomain6sT__r1g.rc:ttjdgy)Nr)rr chebzeror=s r test_chebzerozTestConstants.test_chebzero9sT]]QC(rc:ttjdgyNr)rr cheboner=s r test_chebonezTestConstants.test_chebone<sT\\A3'rc<ttjddgy)Nrr)rr chebxr=s r test_chebxzTestConstants.test_chebx?sTZZ!Q(rN)r5r6r7r>rArErHr8rrr:r:4s/)()rr:c0eZdZdZdZdZdZdZdZy)TestArithmeticcXtdD]}tdD]}d|d|}tjt||dz}||xxdz cc<||xxdz cc<t j dg|zdgzdg|zdgz}t t|t||yNrAt i=, j=rrerr_msg)r&r'zerosmaxr chebaddrrr,r-jmsgr/r0s r test_chebaddzTestArithmetic.test_chebaddEq @A1X @aSQC(hhs1ay1}-A! A! llA37aS=1#'QC-@T#YS 3?  @ @rcXtdD]}tdD]}d|d|}tjt||dz}||xxdz cc<||xxdzcc<t j dg|zdgzdg|zdgz}t t|t||yrL)r&r'rQrRr chebsubrrrTs r test_chebsubzTestArithmetic.test_chebsubOrXrcttjdgdgttjdgddgtddD]9}dg|zdgz}dg|dz zgdz}ttj||;y)Nrrr)r%rr%)rr chebmulxr&)r,r-serr/s r test_chebmulxzTestArithmetic.test_chebmulxYsT]]A3'!-T]]A3'!Q0q! 2A#'QC-C#Q-+-C s+S 1 2rchtdD]}tdD]}d|d|}tj||zdz}|||zxxdz cc<|t||z xxdz cc<t j dg|zdgzdg|zdgz}t t|t||y)NrrMrNrr%rrO)r&r'rQabsr chebmulrrrTs r test_chebmulzTestArithmetic.test_chebmulasq @A1X @aSQC(hhq1uqy)AE b CAJ2%llA37aS=1#'QC-@T#YS 3?  @ @rcntdD]}tdD]}d|d|}dg|zdgz}dg|zdgz}tj||}tj||\}}tjtj|||} t t | t ||y)NrrMrNrrrO)r&r rSchebdivrbrr) r,r-rUrVcicjr/quoremr0s r test_chebdivzTestArithmetic.test_chebdivksq @A1X @aSQC(S1Ws]S1Ws]ll2r*<<R0Sll4<<R#8#>T#YS 3? @ @rc VtdD]}tdD]}d|d|}tj|dz}ttj |g|ztj dg}t j||}tt|t||y)NrrMrNrrO) r&r'arangerr rbr(chebpowrr)r,r-rUrVcr/r0s r test_chebpowzTestArithmetic.test_chebpowvsq @A1X @aSQC(IIa!e$T\\A37BHHaSMBll1a(T#YS 3?  @ @rN) r5r6r7rWr[r_rcrjror8rrrJrJCs%@@2@ @@rrJceZdZejgdZej deeZej deeeZejjddzdz Z e e gdZ dZ d Zd Zd Zd Zy )TestEvaluation)g@@?i,j->ij i,j,k->ijkrrr)?rrg@cttjgdgjdt j dd}t Dcgc]}t||}}tdD]8}d|}||}tj|dg|zdgz}t|||:tdD]}dg|z}t j|}ttj|dgj|ttj|ddgj|ttj|gd j|ycc}w) Nrrr rMrOrwr)rrr) rr chebvalsizer'linspaceTlistrr&rrQshape) r,rrnyr-rVr/r0dimss r test_chebvalzTestEvaluation.test_chebvals$T\\"qc*//3 KKA $) *qWQ] * *r 7A!+CA$C,,q1#'QC-0C S# 6  7q AA37DA a!-33T : a!Q066 = a3994 @  A +s Ec|j\}}}|j\}}}tttj ||dd|j ||z}t j |||j }t||tjd} t j | | |j }t|jdk(yNrrrw) rrr ValueErrorr chebval2dc2drr'onesrr r,x1x2x3y1y2y3r/r0zs rtest_chebval2dzTestEvaluation.test_chebval2dsVV BVV B j$.."b!fdhhG2gnnRTXX.C% GGFOnnQ488, V#$rc |j\}}}|j\}}}tttj |||dd|j ||z|z}t j ||||j }t||tjd} t j | | | |j }t|jdk(yr) rrrrr chebval3dc3drr'rrrrs rtest_chebval3dzTestEvaluation.test_chebval3dsVV BVV B j$.."b"Ra&$((K2glnnRR2C% GGFOnnQ1dhh/ V#$rch|j\}}}|j\}}}tjd||}t j |||j }t||tjd} t j | | |j }t|jdk(y)Nrtr)rrwrrw) rrr'einsumr chebgrid2drrrrrrs rtest_chebgrid2dzTestEvaluation.test_chebgrid2dsVV BVV Bii 2r*oob"dhh/C% GGFOooaDHH- Z'(rcn|j\}}}|j\}}}tjd|||}t j ||||j }t||tjd} t j | | | |j }t|jdk(y)Nrur)rrwrrwrrw) rrr'rr chebgrid3drrrrrrs rtest_chebgrid3dzTestEvaluation.test_chebgrid3dsVV BVV Bii b"b1oob"b$((3C% GGFOooaAtxx0 Z'(rN)r5r6r7r'r(c1drrrrandomrrrrrrrrr8rrrqrqs "((> "C "))IsC (C "))L#sC 0C  1$q(A< AA*%"%" ) )rrqceZdZdZdZy) TestIntegralc 2 tttjdgdtttjdgdtttjdgdddgtttjdgdgtttjdgdgtttjdgdt dd D]6}dg|dz zdgz}tjdg|| }t |ddg8t d D]}|dz}dg|zdgz}|gdg|zzd|z gz}tj|}tj|d|g }tj|}t t|t|t d D]`}|dz}dg|zdgz}tj|}tj|d|gd }t tjd||bt d D]}|dz}dg|zdgz}|gdg|zzd|z gz}tj|}tj|d|gd }tj|}t t|t|t d D]~}t dd D]m} dg|zdgz}|dd}t | D]}tj|d }tj|| }t t|t|ot d D]}t dd D]} dg|zdgz}|dd}t | D]}tj|d|g }tj|| tt |  }t t|t|t d D]}t dd D]} dg|zdgz}|dd}t | D]}tj|d|gd }tj|| tt | d }t t|t|t d D]}t dd D]} dg|zdgz}|dd}t | D]}tj|d|gd }tj|| tt | d }t t|t|y)Nrr%rr)lbnd)sclaxisrr)mk)rrr)rrrr) r TypeErrorr chebintrr&r poly2cheb cheb2polyrr{list) r,r-rr0rpolr/chebpolrrUs r test_chebintzTestIntegral.test_chebintsisB7j$,,R8j$,,QA?j$,,1#>j$,,!=is<q! -Aq1u #A,,sa1-C aV , - q 6Aa%C#'QC-C#a-1s7)+CnnS)Gll7aA37G..)C S 49 5 6q >Aa%C#'QC-CnnS)Gll7aA3R@G  R 91 =  >q 6Aa%C#'QC-C#a-1s7)+CnnS)Gll7aA3A>G..)C S 49 5 6q :A1a[ :cAgm!fq1A,,sa0C1ll3!,#DItCy9  : :q :A1a[ :cAgm!fq8A,,saA37C8ll3!tE!H~>#DItCy9  : :q :A1a[ :cAgm!fqAA,,saA3R@CAll3!tE!H~BG#DItCy9  : :q :A1a[ :cAgm!fq?A,,saA3A>C?ll3!tE!H~1E#DItCy9  : :rc tjjd}tj|jDcgc]}t j |c}j}t j |d}t ||tj|Dcgc]}t j |c}}t j |d}t ||tj|Dcgc]}t j |dc}}t j |dd}t ||ycc}wcc}wcc}w)Nrwrrrrrw)r)rr)r'rvstackTr rrr,rrnr/r0s rtest_chebint_axiszTestIntegral.test_chebint_axis3siiv&ii#%%8Qa89;;ll3Q'C%ii#6Qa67ll3Q'C%iis;!a1-;<ll3!!,C%97.fsA;!a%( (rc|dz|dzzdzS)Nrrrr8r s rf2z$TestFitting.test_chebfit..f2sa4!Q$;? "rrrrr)w)rrrrwr)rrrrwr)rrrrwr)rrwrrr)ry?ry)rrr)rrr chebfitrr'r}rlenrr{r(r zeros_likecopy)r,rrrrcoef3coef4coef2drywwcoef3wcoef2dcoef1coef2s r test_chebfitzTestFitting.test_chebfits ) # j$,,aS"=iuqc1=irA3:isqcUGQ?i1vsA>isQFA>isQCseDisQCq!fEj$,,aS2%@j$,,aS*EisQC< KK1  aD Q1%SZ#DLLE2A6 Q<0SZ#DLLE2A6 Q1%SZ#DLLE2A6 Q?3SZ#DLLE2A6 Q?3SZ#DLLE2A6a1a&!1!3!3Q7FBHHeU^$<$>$>?a1a&!1!3!3\BFBHHeU^$<$>$>? MM!  VVX!$Q$!$Q$aQ!,FE*a\Q7FE*,,q"((B8"4"6"6Q?GRXXuen%=%?%?@,,q"((B8"4"6"6 JGRXXuen%=%?%?@ DLLAq1Aq6:DLLA1v6A? KKA  qE Q1%DLLE2A6 Q9-DLLE2A6E5)rN)r5r6r7rr8rrrrsH*rrc$eZdZdZdZdZdZy)TestInterpolatec||dz z|dz zSrr8)r,rs rrzTestInterpolate.fsAE{a!e$$rctttj|jdtt tj|jdy)Nrg$@)rrr chebinterpolaterrr=s r test_raiseszTestInterpolate.test_raisess2j$"6"6Ci!5!5tvvsCrctddD]<}ttj|j|j |dzfk(>y)Nrr)r&rr rrr)r,degs rtest_dimensionszTestInterpolate.test_dimensionssCA; KC D((5;;azI J Krc d}tjddd}tdD]V}t|dzD]C}tj|||f}t tj |||||dEXy)Nc ||zS)Nr8)rps rpowxz0TestInterpolate.test_approximation..powxs a4Krrrrz )decimal)r'r}r&r rrr{)r,rrrrrns rtest_approximationz"TestInterpolate.test_approximations|  KKAr "9 PC37^ P((sQD9#DLLA$6Q BO P PrN)r5r6r7rrrrr8rrrrs%DK PrrceZdZdZdZdZy) TestCompanionctttjgtttjdgyrC)rrr chebcompanionr=s rrzTestCompanion.test_raisess(j$"4"4b9j$"4"4qc:rctddD]9}dg|zdgz}ttj|j||fk(;y)Nrrr)r&rr rr)r,r-rs rrzTestCompanion.test_dimensionssJq! >A37aS=D D&&t,22q!f< = >rcPttjddgddk(y)Nrr)rr)rr rr=s rtest_linear_rootzTestCompanion.test_linear_root s#""Aq6*40C78rN)r5r6r7rrrr8rrrrs;> 9rrceZdZdZy) TestGaussctjd\}}tj|d}tj|j |z|}dtj |jz }|dddf|z|z}t|tjdtj}t|j|y)Ndcr) r chebgaussrr'rrsqrtdiagonalreyepisum)r,rrrvvvdr/s rtest_100zTestGauss.test_100s~~c"1 OOAr " VVACC!GQ  ' ' 4[2  "Bs ,eeAEEGS)rN)r5r6r7r r8rrrrs*rrcBeZdZdZdZdZdZdZdZdZ dZ d Z y ) TestMiscc tjg}tt|dgt ddD]}t j t jt j dd|zdzddd}dg|zdgz}tj|d|dz zz}tt|t|y)Nrrrr) r chebfromrootsrrr&r'cosr}r )r,r0r-rootsr/s rtest_chebfromrootszTestMisc.test_chebfromroots&s  $DIs+q! 6AFF2;;vq!a%!)r@s))/&SV#)- RRRRR0##" ) ):@:@z[)[)|c&c&L%&%&P-)-)`J*J*ZPP2 9 9**&K3K3r