K i#RddlZddldZdZdZdZdZdZd Zd Z d Z d Z y) N)*cdt_d}t|ddgdd\}}|dksJtd D]-}d|d z z}t t ||||z |kr-Jy) Nc*tdd|zz |z S)N)cosxs `/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mpmath/tests/test_calculus.pyz$test_approximation..s#a!e*Q,rT)errorgh㈵> g@)mpdpschebyfitrangeabspolyval)fperrir s r test_approximationrst BFA a!Q$ /FAs :: 2Y/ "H71a=1Q4'(3.../r cdt_tddjt ddz sJtdt jt sJy)Nrc*|t|z |dzz S)N)sinr s r r ztest_limits..sAc!fHad?r rcdd|z z|zSNr!)ns r r ztest_limits..sAacEA:r )rrlimitaempfinfer%r r test_limitsr, sI BF *A . 1 1#a&( ;; ; %s + . .q 11 1r ctgddk(sJtdgddk(sJtdgddk(sJgd}t|ddk(sJt|ddd k(sJy) Nrr)rrr.rT) derivative)r0)rrs r test_polyvalr4sr 2q>Q   A3?a   A3?a  A 1Q<3   1Q$ ': 55 5r cZtddg}|djdsJtgd\}}|jdtdtzz sJ|jdtdtzzsJtdggk(sJt j t dy) Nr!rr)r!rrrctdgS)Nr) polyrootsr%r r r z test_polyroots..#s inr )r9r(sqrtjpytestraises ValueError)rqs r test_polyrootsr@s1R&A Q4771:: W DAq 44T!WQY   44T!WQY   aS>R   MM*45r c nd}gd}tjd5tjtj5t |ddd|dzdddt |d dd|dz}|Dcgc] }t |}}|gd k(sJ dddy#1swYGxYwcc}w#1swYyxYw) N@Al #!yUMDQj~U4 rl`< && xXD`Drl #~O6dIW6o b9rl N$UVOF >`}Drl h a0r3(| Wo9Erlcs9lM hPc;/,3rl p~ #]lsrl J={|L m~;`rl`|fl?'h_Krl eo.!03a7# rl /$+-kMsf]`:rl ;bfLHQL Rrl / v\QB8%rl e]r+a ;M~DMLrl`|]B`3*0Vwk _rl J5]c<OJg1rl x,a6F~E8Prl V'6@h>)rl~&-ME A"rl<-AGn,a;0$SrlW?n05%Zurlpbz^.qrlc dqTTrlh 9N$$).lF4rl Ns,1j rl#vsKn?b;rl`<x!url#!Oerr.TFrmaxstepscleanupr extraprec2)@-0.999-0.996-0.991-0.983-0.973-0.961-0.946-0.93-0.911-0.889-0.866-0.841-0.813-0.784-0.753-0.72-0.685-0.649-0.611-0.572-0.531-0.489-0.446-0.402-0.357-0.311-0.265-0.217-0.17-0.121-0.073-0.02430.02430.0730.1210.170.2170.265z0.3110.3570.4020.4460.4890.5310.5720.6110.6490.6850.720.7530.7840.8130.8410.8660.8890.9110.930.9460.9610.9730.9830.9910.9960.999)rworkdpsr<r= NoConvergencer9str)r&coeffsrootsrs r test_polyroots_legendrer%s A FD AB ]]2++ , & fq$e !" & &&2t5d$!&'AQ'' B B B BBB & & (BBs/$B+BB+3B& B+B#  B++B4c d}gd}tgd}tjdtjz5t |dddd|z}dddt j tj5t |d dd|dddt |d dd|| \}}ttt|jtz |ksJt |d dd||dd  \}}tt|t|jtz |ksJy#1swYxYw#1swYxYw) NdrC)ArIrJrKrLrMrNrOrPrQrRrSrTrUrVrWrXrYrZr[r\r]r^r_r`rarbrcrdrerfrgrhrirjrkrlrmrnz 0.311rorprqrrrsrtrurvrwrxryrzr{r|r}r~rrrrrrrrrz1.0rrHTFrDr.)rErFrrG roots_init<) matrixrrrr9r<r=rmaxapplyr) extra_precrr roots_exactrrroots1err1s r test_polyroots_legendre_initr]s:J FD K LJ AbffH 8T*+J,8 8 r'' ((&1d%& ((&1d$$.*FIE# vk"6%=#6#6s#;; #7#7#<< = DD D88((sD.9D:.D7:Ectd}dt_d}|g}d}td|dzD]}||z}|j ||z t ||dz|dz\}}t dddD]D}t|ddd|t|ddd|z }|jt|drDJd t_y) Nr!rrrg?r7g|=r) r)rrrappendpadearangerr(exp) oneNakrrr?r rs r test_paders a&C BF A A A 1ac] Q Q 1a4A DAq Aq# & AddGQ $B$ 3 3ttCFG$%$&BFr cdt_tdddgd\}}|djdsJ|djdt d zdt zz sJ|djd t d zd t zz sJ|ddk(sJ|djd dt zz sJ|djd d t zz sJt ||fddgdjd sJy) Nrc |dzSr$r%r s r r ztest_fourier..s QqSr r7rrg?r!rrg?)rrfourierr(r:pi fourierval)css r test_fourierrs BF =2q'1 -DAq Q4773<< Q4772d1g:qt$ %% % Q4771T!W9ad# $$ $ Q4199 Q4771ad8   Q4771ad8   q!fr1gq ) , ,-? @@ @r cdt_tdddjdt dt z zdz sJy)Nrc|SNr%ts r r z test_differint..sqr rgrr)rr differintr(r:rr%r r test_differintrs6 BF [!T * - -aQrT l1n == =r cbdt_d}d}d}||}t||dj|sJt||dj|sJt||dj|sJt||d j|sJd }||}t||dj|sJt||dj|sJt||dj|sJt||d j|sJd}d }d }||}t||dj|sJt||dj|sJt||dj|sJt||d j|sJd }||}t||dj|sJt||dj|sJt||dj|sJt||d j|sJy) Nrg{Gz?cd|dzdzz S)Nr!rr%r3s r r ztest_invlap..s1acAX:r c |t| zSr)rrs r r ztest_invlap..s1S!W9r talbot)methodstehfestdehoogcoheng?ct||z Sr)logr3s r r ztest_invlap..s3q6!8r c(t t|z Sr)eulerrrs r r ztest_invlap..sE6#a&=r )rr invertlaplacer()rfpftftts r test_invlaprs% BF A B B Q%C AX . 1 1# 66 6 AZ 0 3 3C 88 8 AX . 1 1# 66 6 AW - 0 0 55 5 A Q%C AX . 1 1# 66 6 AZ 0 3 3C 88 8 AX . 1 1# 66 6 AW - 0 0 55 5 A B B Q%C AX . 1 1# 66 6 AZ 0 3 3C 88 8 AX . 1 1# 66 6 AW - 0 0 55 5 A Q%C AX . 1 1# 66 6 AZ 0 3 3C 88 8 AX . 1 1# 66 6 AW - 0 0 55 5r ) r<mpmathrr,r4r@rrrrrrr%r r rsB /2 666Bp<E|  A>6r