I want to compute FFT of each segments from a 102400 length signal, where I consider the length of segment is 1024. Than store the amplitude and freq n separate array

3 views (last 30 days)
I want to compute FFT of each segments from a 102400 length signal, where I consider the length of segment is 1024. Than store the amplitude and freq n separate array?
Data file is attached and store in v1.
I tried the below code :
requiredArray = [];
meanRequiredArray = [];
sum = 0;
count = 1;
for k = v1
requiredArray = [requiredArray, k];
disp(requiredArray);
if numel(requiredArray) == 3
meanRequiredArray = [meanRequiredArray, (abs(fft(requiredArray)))];
requiredArray = [];
end
disp(numel(requiredArray));
end
SA= meanRequiredArray';
  3 Comments

Sign in to comment.

Answers (1)

Matt J
Matt J on 11 Oct 2022
Edited: Matt J on 11 Oct 2022
F=fft( reshape(input,1024,[]) ,[],1);
amplitude=abs(F);
phase=angle(F);

Categories

Find more on Fourier Analysis and Filtering in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!