K iJ"ddlmZddlmZejjZddZddZddZddZdZ ddZ d Z d Z d Z d Zd ZdZdZdZdZddZy))mp)libmpc||rtdt|tj|\}}|tj|z|j z}||z }||j ztj |jz }|rtd|td|tj|}tj|}|rtd|d|dtd|d|dtjdtjtjz} || ksJ|| ksJ|SNoriginal matrix: z eigenvalues: zeigenvectors: z difference: 皙?) printstrreigsydiag transposeeyerowsmnormexplogeps AverboseDQBCENCNErs g/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mpmath/tests/test_eigen_symmetric.py run_eigsyr s "CF+ 88A;DAq BGGAJ&A AA AKKMBFF166N*A " # !B !B mRq$/ mRq$/ &&#rvv& 'C 8O8 8O8 Ic||rtdt|tj|\}}|tj|z|j z}||z }||j ztj |jz }|rtd|td|tj|}tj|}|rtd|d|dtd|d|dtjdtjtjz} || ksJ|| ksJ|Sr) r r reigher transpose_conjrrrrrrrs r run_eigher%$s "CF+ 88A;DAq BGGAJ))++A AA A   /A " # !B !B mRq$/ mRq$/ &&#rvv& 'C 8O8 8O8 Ir!c`|j|j}}tjdtjtj z}|r!t dt|t d|tj||\}}}tj|j|j} tt||D] } || | | | f<|r?t dt|t dt|t dt||| z|z|z } tj| } |rt dt| d | | |ksJ||jztj|jz } tj| } |rt d t| d | | |ksJ|j|ztj|jz }tj|} |rt d t|d | | |ksJy Nr rfull) full_matriceszU: zS: zV: zC rzD: zE: )rcolsrrrrr r svd_rzerosxrangeminrrrrr)rmnrUS0VSjrerrrrs r run_svd_rr8?s 66166qA &&rvvbff~% &C "CF+ fm$xx=9HAr1  A C1I A!A# fc!f fc"g fc!f A A A ((1+C eSVT3' 99 AKKMBFF166N*A ((1+C fc!fdC( 99 BFF166N*A ((1+C fc!fdC( 99r!c`|j|j}}tjdtjtj z}|r!t dt|t d|tj||\}}}tj|j|j} tt||D] } || | | | f<|r?t dt|t dt|t dt||| z|z|z } tj| } |rt dt| d | | |ksJ||jztj|jz } tj| } |rt d t| d | | |ksJ|j|ztj|jz }tj|} |rt d t|d | | |ksJyr')rr*rrrrr r svd_cr,r-r.rr$rr/s r run_svd_cr;fs 66166qA &&rvvbff~% &C "CF+ fm$xx=9HAr1  A C1I A!A# fc!f fc"g fc!f A A A ((1+C eSVT3' #:: A   /A ((1+C fc!fdC( 99 Q/A ((1+C fc!fdC( 99r!cd}tjt||\}}|tj|z}|tj|z}tj||ksJtj||ksJy)Nh㈵>)rgauss_quadraturelenmatrixr)qtypeabrdes r run_gaussrFsq C  s1vu -DAq1A1A 88A;   88A;  r!ctj||}t|D]=}t|D]-}tdtjzdz |z|||f</?|S)z, random matrix with integer entries )rr@r-intrand)r1rangerir6s r irandmatrixrNsf !QA AY5 5ARWWY*e34AacF 55 Hr!ctjddgddgg}t|t|tjddgddgg}t|t|tjgdgdgd g}t|t|tjgd gd gd g}t|t|tjdd gddgg}t|tjgdgdgdg}t|tjgdgdgdg}t|y)NrH )rH rR)rUrPrT)rRrTrQ)rHrrR)rrPrI)rRrIrQy@@y@)rHy&r)y&@rPy=@)ry=rQ)rHy&@1@y@3@)y&@1rPy*7@)y@3y*7rQ)rr@r r%)rs rtest_eighe_fixed_matrixrVs Aq6Aq6"#A aL aL As8c2Y'(A aL aL :{J78A aL aL 9i34A aL aL At9tQi()A aL <>?A aL )+CE\]^A aLr!cd}tdD]Z}dtj||zdz }td|D]"}t|dz|D]}|||f|||f<$t|\y)NrQ rHrIr)r-r randmatrixr NrBrrMr6s rtest_eigsy_randmatrixr\s A BZ  a# #a '1 AAE1% 1Q3!A#   ! r!c|d}tdD]}dtj||zdz ddtj||zdz zz}td|D]T}tj|||f|||f<t|dz|D]!}tj|||f|||f<#Vt |y)NrQrXrHrI?r)r-rrYreconjr%rZs rtest_eighe_randmatrixras A BZ q!$ $q (B!bmmAq6I2IA2M,N N1 )AUU1QqS6]AacFAE1% )1Q3!A# ) ) ! r!cd}d}tdD]J}t||}td|D]"}t|dz|D]}|||f|||f<$t|Ly)NrXrrI)r-rNr r[RrBrrMr6s rtest_eigsy_irandmatrixrfsx A A BZ a 1 AAE1% 1Q3!A#   ! r!c@d}d}tdD]}t||dt||zz}td|D]T}tj|||f|||f<t|dz|D]!}tj|||f|||f<#Vt |y)NrcrXr^rrI)r-rNrr_r`r%rds rtest_eighe_irandmatrixrhs A A BZ a b;q!#44 41 )AUU1QqS6]AacFAE1% )1Q3!A# ) ) ! r!ctdD]}tjdkD}dttjdzz}dttjdzz}dtj||zdz }tjdkDr:|dz}t|D]'}t|D]}t|||f|||f<)t ||dy)NrQ?rIrXrHFr)r)r-rrKrJrYr8rMr(r0r1rxys rtest_svd_r_randros AY <wwy3 BGGIN# # BGGIN# #  a# #a ' 779s? GAAY ''Aq1v;AacF' ' !TU; .FHs> A B+ AA! A r!rc0tj |||\}}d}tt|D]}||| ||zz }tj fd|} tj || z } rt || || | dksJy)Nalphabetarc&||zSN)rmrFWs rz.run..Usbeadlr!r=)rr>r-r?quadfabsr )rArrerrXWrBrMrCcrr1rs ` rrunz*test_gauss_quadrature_dynamic..runNs""1eU4H1 A A 1!A$ A  GG*A . GGAEN  %Aq !4xxr!rcyNrIrrms rrz/test_gauss_quadrature_dynamic..^r!rwrcyrrrs rrz/test_gauss_quadrature_dynamic.._rr!rc4tj| |zSrrrrs rrz/test_gauss_quadrature_dynamic..`sRVVQBqD\r!rc.tj| Srrrs rrz/test_gauss_quadrature_dynamic..asbffaRjr! glaguerrecZtj|tj| zSr)rr~rrs rrz/test_gauss_quadrature_dynamic..bsrwwqz"&&!*4r!)r chebyshev1c>dtjd||zz z Srrr~rs rrz/test_gauss_quadrature_dynamic..cs"''!AaC%. 0r! chebyshev2c8tjd||zz Srrrs rrz/test_gauss_quadrature_dynamic..ds!A#r!jacobic|d|z dtjdz zd|zdtjdz zzS)NrIrPrQ)rmpfrs rrz/test_gauss_quadrature_dynamic..es5QqSAbffQiK0AaC1RVVAY;3GGr!rPr)rr)rrYinfr)rrrrr1s` @@@rtest_gauss_quadrature_dynamicrCs A a!eQA   K"a) kAq6* )RVVGRVV+<= (1bff+6 4q"&&k1rvvVWy=Y 02q': .Q8G"aZ[^`^d^def^gZgpqtvtztz{|t}p}r!N)F)FT)rX)mpmathrrbackendr-r r%r8r;rFrNrVr\rarfrhrorrrrrrr!rrso   66%N%N 8     < 86!2"@r!