Le 10/10/2018 à 08:47, Samuel Gougeon a écrit :
Le 09/10/2018 à 21:52, antoine monmayrant a écrit :
Hello Samuel,

Sorry I might not have made myself clear: fft and fftshift provide the ability to perform transform along only one of the dimensions of a multidimensional array. Something like S(x,y,z) --[FFT along 3rd dim]--> ffthift(ffft(S(x,y,z), -1,3),3)=Ŝ(x,y,kz). In that case, you need to perform fft and eventually fftshift along only the dimension of the transform. ifftshift should also provide the same possibility to perform the inverse transform: Ŝ(x,y,kz) --[IFFT along 3rd dim]--> iffthift(ffft(Ŝ(x,y,kz), +1,3),3)=S(x,y,z).

This is a basic signal processing requirement in my field.

Hello Antoine,

Yes, you are right: in case of directional FFT and odd number of elements along the chosen direction, ifftshift can't presently be used. Could you please post the same remark on bugzilla? This bug/wish is not yet reported.
OK, I'll put it in my TODO-list.

IMO we may propose and include it in Scilab as soon as for Scilab 6.0.2.

BTW, still IMO, fftshift and ifftshift should rather be merged in a single function. It's the same code, except a floor<=>ceil. This should deserve just an option, not a separate dedicated function. I guess that this separation likely comes from a kind of abusive Matlab-like mimicry.
Yes, I agree.
But I don't see how we can merge the two without increasing the huge halo of confusion that blurs the help pages and use of fft-related functions¹ ². The first idea that came to my mind was to make one single fftshift function where:  - if dim>0, you do direct shift (ie for a direct Fourier transform) along dimension dim;  - if dim<0, you do inverse shift (ie for an inverse Fourier transform) along dimension |dim|. But as "-1" means direct fft and "+1" inverse fft, mixing fft and fftshift would be a real mess.

Antoine
¹ One I just discovered yesterday: the help page for fft is not listed in "Scilab Help >> Signal Processing > Transforms " ! Only ifft is listed, cool, he? Of course, ifft points to "Scilab Help >> Signal Processing > Transforms > fft". Idem  for dst, ...
² Oh, and this one cool too: in the fft help page:
"incr
a vector of positive numbers with integer values, or a vector of positive integers. *See the Description part for details.*" but the Description never says what the heck "incr" is, does and means.... Arghhh. It only appears once in an example of a "previous syntax".


Best regards
Samuel

_______________________________________________
users mailing list
[email protected]
http://lists.scilab.org/mailman/listinfo/users


--
+++++++++++++++++++++++++++++++++++++++++++++++++++++++

 Antoine Monmayrant LAAS - CNRS
 7 avenue du Colonel Roche
 BP 54200
 31031 TOULOUSE Cedex 4
 FRANCE

 Tel:+33 5 61 33 64 59
email : [email protected]
 permanent email : [email protected]

+++++++++++++++++++++++++++++++++++++++++++++++++++++++

_______________________________________________
users mailing list
[email protected]
http://lists.scilab.org/mailman/listinfo/users

Reply via email to