From 013b9743fd4a2a1e33a040efda6dcab81ec3f094 Mon Sep 17 00:00:00 2001 From: Alexandre Gobbo Date: Fri, 13 Dec 2019 09:28:30 +0100 Subject: [PATCH] Script execution --- script/scitest/numpy_test.py | 52 ++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/script/scitest/numpy_test.py b/script/scitest/numpy_test.py index a661f94..781a3ab 100644 --- a/script/scitest/numpy_test.py +++ b/script/scitest/numpy_test.py @@ -407,3 +407,55 @@ print np.correlate([1, 2, 3], [0, 1, 0.5], "full") #array([0.5, 2. , 3.5, 3. #print np.correlate([1+1j, 2, 3-1j], [0, 1, 0.5j], 'full') #array([ 0.5-0.5j, 1.0+0.j , 1.5-1.5j, 3.0-1.j , 0.0+0.j ]) #Note that you get the time reversed, complex conjugated result when the two input sequences change places, i.e., c_{va}[k] = c^{*}_{av}[-k]: #print np.correlate([0, 1, 0.5j], [1+1j, 2, 3-1j], 'full') #array([ 0.0+0.j , 3.0+1.j , 1.5+1.5j, 1.0+0.j , 0.5+0.5j]) + + +################################################################################ +# FFT +################################################################################ + +print np.fft.fft(np.exp(2j * np.pi * np.arange(8) / 8)) +""" +array([-2.33486982e-16+1.14423775e-17j, 8.00000000e+00-1.25557246e-15j, + 2.33486982e-16+2.33486982e-16j, 0.00000000e+00+1.22464680e-16j, + -1.14423775e-17+2.33486982e-16j, 0.00000000e+00+5.20784380e-16j, + 1.14423775e-17+1.14423775e-17j, 0.00000000e+00+1.22464680e-16j]) +""" + +###TODO: mgrid supported +#a = np.mgrid[:5, :5][0] +a = np.array([[0, 0, 0, 0, 0], + [1, 1, 1, 1, 1], + [2, 2, 2, 2, 2], + [3, 3, 3, 3, 3], + [4, 4, 4, 4, 4]], dtype=np.float64) +print np.fft.fft2(a) +""" +array([[ 50. +0.j , 0. +0.j , 0. +0.j , # may vary + 0. +0.j , 0. +0.j ], + [-12.5+17.20477401j, 0. +0.j , 0. +0.j , + 0. +0.j , 0. +0.j ], + [-12.5 +4.0614962j , 0. +0.j , 0. +0.j , + 0. +0.j , 0. +0.j ], + [-12.5 -4.0614962j , 0. +0.j , 0. +0.j , + 0. +0.j , 0. +0.j ], + [-12.5-17.20477401j, 0. +0.j , 0. +0.j , + 0. +0.j , 0. +0.j ]]) +""" + +###TODO: must be array of dubles +#print np.fft.ifft([0, 4, 0, 0]) +print np.fft.ifft([0.0, 4.0, 0.0, 0.0]) #array([ 1.+0.j, 0.+1.j, -1.+0.j, 0.-1.j]) # may vary + + + +a = 4 * np.eye(4) +print np.fft.ifft2(a) + +""" +array([[1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j], # may vary + [0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j], + [0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j], + [0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j]]) +""" + +print "DONE" \ No newline at end of file