get inverse fourier Optimization, how can i do?
1 回表示 (過去 30 日間)
古いコメントを表示
Hi everyone,
I have these attached file name: datineltempo_ciclico.m that read file name malta1t.mat,
in th line 95, there is the peace of code like this:
NPF = 942;
N=2001;
v=381x1;(complex numbers)
f=381x1;
t=1x2001;
for(k = 1:NPF)
v = datif2(:,k);
g = zeros(2001,1);
du=f(2)-f(1);
for k1=1:N
integrando=exp(i*2*pi*t(k1)*f).*v;
g(k1)=du*sum(integrando);
end
v1 = g;
v1 = 2 * real(v1);
datit(:,k) = v1;
%k
end
.....
The problem is that is take more time to load the 942*2001 matrix;
Please somebody can i help me optimize(make faster) this loop?
Many thanks.
I need the maximum time reduce execution...
Please Help Me....
0 件のコメント
回答 (1 件)
Christoph F.
2017 年 9 月 20 日
The "clean" solution would be to use MATLABs fft()/ifft() functions. They are optimized and also work for vector sizes that are not a power of two.
2 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!