Scilab 6.1.0
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
fftshift
rearranges the fft output, moving the zero frequency to the center of the spectrum
Syntax
y = fftshift(x) y = fftshift(x, along)
Arguments
- x, y
vectors, matrices or hypermatrices, of same sizes.
- along
1 | "r" | 2 | "c" | 0<along<=ndims(x): dimension along which halves are switched.
Description
If x
results of an fft computation, y=fftshift(x)
or y=fftshift(x,"all")
moves the zero frequency component to the
center of the spectrum, which is sometimes a more convenient form.
x = [x1 x2 ] gives y = [x2 x1 ] // vector [x11 x12] [x22 x21] x = | | gives y = | | // matrix [x21 x22] [x12 x11] etc
y=fftshift(x,n)
makes the swap only along the n
th
dimension.
Examples
x = [1 2 3 4 5 6 7] fftshift(x)
--> x = [1 2 3 4 5 6 7] x = 1. 2. 3. 4. 5. 6. 7. --> fftshift(x) ans = 5. 6. 7. 1. 2. 3. 4.
x = matrix(1:36,6,6) fftshift(x) fftshift(x, "r") fftshift(x, "c")
--> x = matrix(1:36,6,6) x = 1. 7. 13. 19. 25. 31. 2. 8. 14. 20. 26. 32. 3. 9. 15. 21. 27. 33. 4. 10. 16. 22. 28. 34. 5. 11. 17. 23. 29. 35. 6. 12. 18. 24. 30. 36. --> fftshift(x) // Corners go to the center ans = 22. 28. 34. 4. 10. 16. 23. 29. 35. 5. 11. 17. 24. 30. 36. 6. 12. 18. 19. 25. 31. 1. 7. 13. 20. 26. 32. 2. 8. 14. 21. 27. 33. 3. 9. 15. --> fftshift(x, "r") // External rows become middle rows ans = 4. 10. 16. 22. 28. 34. 5. 11. 17. 23. 29. 35. 6. 12. 18. 24. 30. 36. 1. 7. 13. 19. 25. 31. 2. 8. 14. 20. 26. 32. 3. 9. 15. 21. 27. 33. --> fftshift(x, "c") // External columns become middle columns ans = 19. 25. 31. 1. 7. 13. 20. 26. 32. 2. 8. 14. 21. 27. 33. 3. 9. 15. 22. 28. 34. 4. 10. 16. 23. 29. 35. 5. 11. 17. 24. 30. 36. 6. 12. 18.
See also
Report an issue | ||
<< fft2 | Transforms | hilb >> |