Performing the transform on the below logic

1 Ansicht (letzte 30 Tage)
Amy Topaz
Amy Topaz am 14 Mär. 2022
Kommentiert: Amy Topaz am 28 Mär. 2022
I have the below function for which I need to perform spatial Fourier transform and plot its spatial frequency spectrum for various values of y.
How to do this using matlab?
Y1 = acos(x/2+y) + asin(g/3+x);
%g is constant
  1 Kommentar
AndresVar
AndresVar am 14 Mär. 2022
Bearbeitet: AndresVar am 14 Mär. 2022
for various values of y & x?
you can create a meshgrid of y's and x's
evaluate the function f(x,y)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

AndresVar
AndresVar am 14 Mär. 2022
Make a grid, evaluate the function and use fft2 to get the spatial spectrum.
Here is an example, note function might be different fom what you posted.
Note fftshift was used to shift the spectrum to the center, you can try without.
g=10; % for example
x=linspace(1,4,10); % for example
y=linspace(1,4,10); % for example
[X,Y]=meshgrid(x,y); % a grid
F = (atan(g/2+X)./Y+atan(g/2-X)./Y)/pi; % evaluate the grid
F_PS = abs(fftshift(fft2(F))); % power spectrum, shifted
imagesc(F_PS);

Weitere Antworten (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by