K i0ldZddlZddlZddlmZmZmZmZmZm Z ddl m Z m Z m Z mZmZmZGddZy)z" Test functions for linalg module N)arangearraydotfloat64linalg transpose)assert_assert_array_almost_equalassert_array_equalassert_array_less assert_equal assert_raisesceZdZdZdZdZdZdZdZdZ dZ d Z e jjd d d gd Ze jjdddgdzej"dgdZdZy)TestRegressionctgd}tdt}d|_|dz}t j |\}}|j |j t||y)N) yӝ'Y@yF.<2/3yʹLTW9>/@yʹLTW9>/y=J&ytV) 忷B$@ytV) 忷B$yZynFr62@y( 3%@y:@yCr ~yYqs`<yt&Aۼdtype) r)rrrshapereigsortr )selfrvaavaves h/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/numpy/linalg/tests/test_regression.pytest_eig_buildzTestRegression.test_eig_builds\ , - 7' * FAB    !"c*c|gd}tgdgdgdg}tj|\}}t||y)N)g"&Q@ggdV@g7Z@)g'UlS@4h @%pJ/@)r#g+>V@研qi0)r$r%gJ%~X@)rreighr )rrvalscovvalsvecss rtest_eigh_buildzTestRegression.test_eigh_build+s=8<<<>?[[% d!$.r!ctddgddgddgddgg}|j\}}tj|\}}}t t |dd|df|}t |tjdy)N?@@)r1) rrrsvdrrr npzeros)rrmnusvhbs rtest_svd_buildzTestRegression.test_svd_build6ss B8b"XBx"b: ;ww1::a=1b  !AqrE(#Q '!!RXXf%56r!cZtttjt gddy)N)r.r/r0fro)r ValueErrorrnormr)rs rtest_norm_vector_badargz&TestRegression.test_norm_vector_badarg@s j&++u\/BEJr!ctddgddggd}t|d}tj|}tj|}t||y)NgC$3@g&ug.ܷ#@z>f8rz"NN1- )!Y7 8 8r!ctjtjddgddgt}tj|}t |ddgt |jtjdk(tj|d}t |ddgt |jtjdk7tj|d}t |ddgt |jtjdk(tttj|dtttj|dtttj|tjtttj|tj tttj|dtttj|d tttj|d tjtjddgddggd gt}tj|}t |ddgt |jtjdk(tj|d}t |ddgt |jtjdk(tttj|dtttj|tjtttj|tj tttj|dtttj|dtttj|d tttj|dtttj|d tttj|d y) NrrOrrrPr1r=nuc)rrrrL) r3robjectrr?r r rrr>inf TypeError)r testvectorr? testmatrixs rtest_norm_object_arrayz%TestRegression.test_norm_object_arraybsXXrxxA/A6fE {{:&4!Q( bhhy112{{:1-4!Q( bhhy112{{:1-4!Q( bhhy112j&++zuEj&++zuEj&++zrvvFj&++zwGj&++zqAj&++zrBj&++zrBXX!Q 0!Q779@FH {{:&4!Q( bhhy112{{:514!Q( bhhy112ijeDj&++zrvvFj&++zwGj&++zqAj&++zqAj&++zrBija@ijbAj&++zqAr!cd}d}tjj||dtjj||zz}tjj||dtjj||zz}|j|}t j ||d\}}}} t ||y)NFy?)rcond)r3randomrandnrrlstsqr ) rsizen_rhsGr7r:u_lstsqresranksvs rtest_lstsq_complex_larger_rhsz,TestRegression.test_lstsq_complex_larger_rhss IIOOD$ '"ryytT/J*J J IIOOD% (2 e0L+L L EE!H!'a$!?dB!'1-r!upperTFctjjtjd|}|jdk(sJy)N)rr)rwr)r3rrBr4ro)rrwrss rtest_cholesky_empty_arrayz(TestRegression.test_cholesky_empty_arrays6ii  &!1 ?xx1}}r!rtolr-rMrMctjd}tjj||}|jdk(sJy)N)rMrLr1)rzr{)r3r4rrWr)rrzrIrss rtest_matrix_rank_rtol_argumentz-TestRegression.test_matrix_rank_rtol_arguments= HHY ii##AD#1yyD   r!ctjdtj}tj|d|zfj}tj ddgddgg}tjd|z|fj}t dD]8}||z}tj||j}|dk7s3Jdy)Ni rirrOzHunexpected result from matmul, probably due to OpenBLAS threading issues) r3rrvstackTrrangeisclosesum)rrIsrcmatrixexpectediresult mismatchess rtest_openblas_threadingz&TestRegression.test_openblas_threadings IIfBJJ /iiC!G %''Aq6Aq6*+99cAgq\*,,s AA6\F::fh77<<>JQA @Au  Ar!N)__name__ __module__ __qualname__r r+r;r@rErJr]rgrvpytestmark parametrizeryr3r4r}rr!rrrs+. /7K # 8+BZ . [[WtUm45  [[VcC519hbhhtn%EF!G! Ar!r)__doc__rnumpyr3rrrrrr numpy.testingr r r r r rrrr!rrs0@@cAcAr!