How to conserve memory for Fast Fourier Results?
2 views (last 30 days)
Show older comments
I have a 16384 vector FFT which is exactly 2^14. This vector is multiplied by another vector to get the results I need.
This takes up a lot of memory in Matlab. Since the FFT is symmetric around the middle, I want to be able to take advantage of this and reduce the size of my vector by 2 and still be able to calculate the same results.
Is it possible to achieve this?
1 Comment
Matt J
on 10 Mar 2013
If 128K takes up "a lot of memory in MATLAB", you need to upgrade your computer, my friend.
Accepted Answer
Matt J
on 10 Mar 2013
Edited: Matt J
on 10 Mar 2013
Here's a way to do it, bus as I commented above, I'm not sure your priorities are well-reasoned.
%%Fake data
a=5:-1:1;
x=[a, 3, fliplr(a(2:end))];
N=numel(x);
%Method 1
y1=fft(x),
%Method 2 - use only half the array
aa=x(1:N/2+1);
y2=ifft(aa,N,'symmetric')*N
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!