Skip to content

Commit c96535b

Browse files
do not rely on np_fft, use naive implementation of fft1d
1 parent a026bab commit c96535b

File tree

2 files changed

+7
-13
lines changed

2 files changed

+7
-13
lines changed

mkl_fft/tests/test_fft1d.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@
3636

3737
import mkl_fft
3838

39-
from distutils.version import LooseVersion
40-
if LooseVersion(np.__version__) < LooseVersion('1.17.0'):
41-
import numpy.fft.fftpack as np_fft
42-
else:
43-
import numpy.fft.pocketfft as np_fft
39+
def naive_fft1d(vec):
40+
L = len(vec)
41+
phase = -2j*np.pi*(np.arange(L)/float(L))
42+
phase = np.arange(L).reshape(-1, 1) * phase
43+
return np.sum(vec*np.exp(phase), axis=1)
4444

4545

4646
def _datacopied(arr, original):
@@ -66,11 +66,11 @@ def setUp(self):
6666
def test_vector1(self):
6767
"""check that mkl_fft gives the same result of numpy.fft"""
6868
f1 = mkl_fft.fft(self.xz1)
69-
f2 = np_fft.fft(self.xz1)
69+
f2 = naive_fft1d(self.xz1)
7070
assert_allclose(f1,f2, rtol=1e-7, atol=2e-12)
7171

7272
f1 = mkl_fft.fft(self.xc1)
73-
f2 = np_fft.fft(self.xc1)
73+
f2 = naive_fft1d(self.xc1)
7474
assert_allclose(f1,f2, rtol=2e-6, atol=2e-6)
7575

7676
def test_vector2(self):

mkl_fft/tests/test_fftnd.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,6 @@
3636

3737
import mkl_fft
3838

39-
from distutils.version import LooseVersion
40-
if LooseVersion(np.__version__) < LooseVersion('1.17.0'):
41-
import numpy.fft.fftpack as np_fft
42-
else:
43-
import numpy.fft.pocketfft as np_fft
44-
4539
reps_64 = (2**11)*np.finfo(np.float64).eps
4640
reps_32 = (2**11)*np.finfo(np.float32).eps
4741
atol_64 = (2**8)*np.finfo(np.float64).eps

0 commit comments

Comments
 (0)