B <ÓFdˆã@sºdZddlmZmZmZddlZddlmZm Z m Z ddlm Z ddlm Z ddl mZGdd „d eƒZGd d „d eƒZGd d „d eƒZGdd„deƒZGdd„deƒZedkr¶e ƒdS)zfTest functions for fftpack.helper module Copied from fftpack.helper by Pearu Peterson, October 2005 é)ÚdivisionÚabsolute_importÚprint_functionN)ÚTestCaseÚrun_module_suiteÚassert_array_almost_equal)Úfft)Úpi)Ú _FFTCachec@s$eZdZdd„Zdd„Zdd„ZdS)Ú TestFFTShiftc Cs ddddddddd g }dddd dddddg }tt |¡|ƒtt |¡|ƒdddddd dddd g }d dddd dddddg }tt |¡|ƒtt |¡|ƒdS) Nréééééüÿÿÿéýÿÿÿéþÿÿÿéÿÿÿÿéûÿÿÿ)rrÚfftshiftÚ ifftshift)ÚselfÚxÚy©rúN/opt/alt/python37/lib64/python3.7/site-packages/numpy/fft/tests/test_helper.pyÚtest_definitionszTestFFTShift.test_definitioncCs6x0dD](}tj |f¡}tt t |¡¡|ƒqWdS)N)r ré édéÓ)ÚnpÚrandomrrrr)rÚnrrrrÚ test_inverses zTestFFTShift.test_inversecCs dddgdddgddd gg}d ddgdddgdddgg}ttj|d d |ƒttj|dd tj|d d ƒttj|d d |ƒttj|dd tj|d d ƒdS) Nrr r rrrrrr)rr )Úaxes)r)rrrr)rZfreqsZshiftedrrrÚtest_axes_keyword szTestFFTShift.test_axes_keywordN)Ú__name__Ú __module__Ú __qualname__rr#r%rrrrr s r c@seZdZdd„ZdS)Ú TestFFTFreqc CsŽddddddddd g }td t d ¡|ƒtd tt d t¡|ƒdddddd dddd g }td t d ¡|ƒtd tt d t¡|ƒdS) Nrr r rrrrrrrré )rrZfftfreqr )rrrrrr-s zTestFFTFreq.test_definitionN)r&r'r(rrrrrr)+sr)c@seZdZdd„ZdS)Ú TestRFFTFreqcCs~dddddg}tdt d¡|ƒtdtt dt¡|ƒddddddg}tdt d¡|ƒtdtt dt¡|ƒdS) Nrr r rrrér*)rrZrfftfreqr )rrrrrr8s zTestRFFTFreq.test_definitionN)r&r'r(rrrrrr+6sr+c@seZdZdd„ZdS)Ú TestIRFFTNcCs2tj d¡\}}|d|}d}tj||ddS)N)r ééé yð?)r)r$)r r!rZirfftn)rZarZaiÚar$rrrÚtest_not_last_axis_successCs z%TestIRFFTN.test_not_last_axis_successN)r&r'r(r2rrrrr-Asr-c@seZdZdd„Zdd„ZdS)Ú TestFFTCachecCstddd}| dtjdtjd¡| dtjdtjd¡t| d¡tjdtjdƒt| d¡tjdtjdƒ| t |j ƒd¡x@t dƒD]4}| dtjdtjd¡| dtjdtjd¡qWt| d¡tjdtjdƒt| d¡tjdtjdƒ| t |j ƒd¡dS)Nr r)Úmax_size_in_mbÚmax_item_countr )Údtyper) r Úput_twiddle_factorsr ÚonesÚfloat32ZzerosrZpop_twiddle_factorsÚ assertEqualÚlenÚ_dictÚrange)rÚcÚ_rrrÚtest_basic_behaviourOs      z!TestFFTCache.test_basic_behaviourcCs8tddd}| dtjdtjd¡| dtjdtjd¡| t|j ¡ƒddg¡| dtjd tjd¡| t|j ¡ƒdddg¡| dtjd tjd¡| t|j ¡ƒdg¡tddd}| dt  d¡¡| dt  d¡¡| t|j ¡ƒddg¡| dt  d¡¡| t|j ¡ƒddg¡tdd d}| dtjd tjd¡| dtjdtjd¡| dtjdtjd¡| dtjdtjd¡| t|j ¡ƒddddg¡x*t d ƒD]}| d tjd tjd¡qÄW| t|j ¡ƒdddd g¡| d tjd tjd¡| t|j ¡ƒd g¡dS)Ng{®Gáz„?r)r4r5r éÈ)r6r ri¸ r,éiôi ) r r7r r8r9r:Úlistr<ÚkeysÚemptyr=)rr>r?rrrÚtest_automatic_pruningjs2   z#TestFFTCache.test_automatic_pruningN)r&r'r(r@rFrrrrr3Msr3Ú__main__)Ú__doc__Z __future__rrrZnumpyr Z numpy.testingrrrrr Znumpy.fft.helperr r r)r+r-r3r&rrrrÚs      N