Performing the transform on the below logic
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
AndresVar
2022-3-14
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);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spectral Measurements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!