Qƅ15dZddlZddlmZddlmZmZGddZGddZGd d Z Gd d Z dS) zfTest functions for fftpack.helper module Copied from fftpack.helper by Pearu Peterson, October 2005 N)assert_array_almost_equal)fftpic,eZdZdZdZdZdZdZdS) TestFFTShiftc6gd}gd}ttj||ttj||gd}gd}ttj||ttj||dS)N r) rrrrrr r r r rr r r r rrrr) rrrrrrr r r r rrfftshift ifftshift)selfxys o/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/numpy/fft/tests/test_helper.pytest_definitionzTestFFTShift.test_definition s + + + + + +!#,q//1555!#-"2"2A666 / / / / / /!#,q//1555!#-"2"2A66666cdD]V}tj|f}ttjtj||WdS)N)r r d)nprandomrrrr)rnrs r test_inversezTestFFTShift.test_inverses[$ I IA   !&&A %cmCLOO&D&Da H H H H I Irc*gdgdgdg}gdgdgdg}ttj|d|ttj|d tj|d ttj|d|ttj|d tj|d ttj||ttj||dS) N)rr r )r r r)rrr)rrr)r rr )rr r rr axesrrr)rfreqsshifteds rtest_axes_keywordzTestFFTShift.test_axes_keywordsJJJ 5<<JJJ7!#,u6"B"B"BGLLL!#,u1"="="="%,u4"@"@"@ B B B!#-f"E"E"EuMMM!#-a"@"@"@"%-d"C"C"C E E E "#,u"5"5w???!#-"8"8%@@@@@rcPddgddgddgg}ddgddgddgg}ttj|d|ttj|d|ttj|d|ttj|dg|ddgddgddgg}ttj|d|ttj|d|ddgddgddgg}ttj|d |ttj|d |ttj|ddg|ttj|ddg|ttj|d |ttj|d |ttj||ttj||d S) z1 Test 2D input, which has uneven dimension sizes rr r r r r'r)r&Nr)rr* shift_dim0 shift_dim1shift_dim_boths rtest_uneven_dimszTestFFTShift.test_uneven_dims)s:F F F F F F "#,u1"="="=zJJJ!#- "C"C"CUKKK!#,u4"@"@"@*MMM!#- !"E"E"EuMMMF F F "#,u1"="="=zJJJ!#- "C"C"CUKKKF F F  "#,u6"B"B"BNSSS!#-V"L"L"LeTTT!#,uAq6"B"B"BNSSS!#-aV"L"L"LeTTT "#,u4"@"@"@.QQQ!#-T"J"J"JERRR!#,u"5"5~FFF!#-"?"?GGGGGrc  ddlmm mm d fd }d fd }t dD]}t dD]}dD]|}t j||}ttj |||||ttj |||||}dS) z\ Test that the new (>=v1.15) implementation (see #10073) is equal to the original (<=v1.14) r)asarray concatenatearangetakeNc, |}|j}|tt|}nt|tr|f}|}|D]D}|j|}|dzdz}  || |f} |||}E|S)z& How fftshift was implemented in v1.14Nr r ndimlistrange isinstanceintshape rr(tmpr:rkr#p2mylistr6r4r5r7s roriginal_fftshiftz>TestFFTShift.test_equal_to_original..original_fftshiftZs'!**C8D|E$KK((D#&& wA ' 'IaL!e\$ffRmmVVBZZ%@AADFA&&Hrc2 |}|j}|tt|}nt|tr|f}|}|D]G}|j|}||dzdzz }  || |f} |||}H|S)z( How ifftshift was implemented in v1.14 Nr r r9r@s roriginal_ifftshiftz?TestFFTShift.test_equal_to_original..original_ifftshiftjs'!**C8D|E$KK((D#&& wA ' 'IaL!a%A%$ffRmmVVBZZ%@AADFA&&Hr)rr Nr)r&)N) numpy.corer4r5r6r7r<r!r"randrrrr) rrErGij axes_keywordinpr6r4r5r7s @@@@rtest_equal_to_originalz#TestFFTShift.test_equal_to_originalVs`AAAAAAAAAAAA                   $r U UA2YY U U$>UUL)..A..C-cl3 .M.M.?.?\.R.RTTT.cmC.N.N.@.@l.S.SUUUU U U U UrN)__name__ __module__ __qualname__rr$r,r2rOrrrr sn777III A A A+H+H+HZ/U/U/U/U/UrrceZdZdZdS) TestFFTFreqcvgd}tdtjdz|tdtztjdtz|gd}tdtjdz|tdtztjdtz|dS)Nr rr )rrfftfreqrrrs rrzTestFFTFreq.test_definitions + + +!!CKNN"2A666!!B$s{1b'9'9"91=== / / /!"S[__"4a888!"R% B(;(;";Q?????rNrPrQrRrrSrrrUrUs(@@@@@rrUceZdZdZdS) TestRFFTFreqcvgd}tdtjdz|tdtztjdtz|gd}tdtjdz|tdtztjdtz|dS)N)rr r r r r)rr r r r r.rW)rrrfftfreqrrYs rrzTestRFFTFreq.test_definitions OO!!CLOO"3Q777!!B$s|Ar':':":A>>>   !"S\"%5%5"5q999!"R% R(<(<"rls 333333zUzUzUzUzUzUzUzUz@@@@@@@@AAAAAAAA ! ! ! ! ! ! ! ! ! !r