Fourier transform spatial domain-DSP
3 ビュー (過去 30 日間)
古いコメントを表示
I am trying to implement fft on 33 signals collected from Cadence(noise signals). I need to use it over the spatial domain. Therefore I tried to do the fft from scratch without using the fft function in Matlab because when I used that it gives the fft output in the temporal domain. I am not getting the output I am expecting when I use (f(x)*e^-jwx). The signals are in the form of 33x501 form; 501 samples from each signal.
I would like some help here.
This is the part of the code where fft is implemented.
for k = 1:33
w = 1 * (k-18)/17;%continuous range of spatial
x=1:1:501;
H(k ,:) = 1000*nnt(k,:)*(sum(exp(-j*w*x))) ; %nnt is the input noise signal matrix
end
0 件のコメント
採用された回答
William Rose
2024 年 1 月 29 日
Matlab's fft() will work fine on spatial data. The only difference is in the interpretation of the transform. The Fourier transform of a function of time is a function of temporal frequency; the Fourier transform of a function of space is a function of spatial frequency.
I understand that nnt is a 33x501 array. It appears that you want to compute the Fourier transform of each row of nnt separately. Then you could do
nnt=randn(33,501); % nnt= 33 noisy signals
NNT=zeros(size(nnt)); % allocate array for Fourier transforms
for i=1:33
NNT(i,:)=fft(nnt(i,:));
end
Each row of NNT is the Fourier transform of the corresponding row of nnt.
5 件のコメント
その他の回答 (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!