How to have the data for each iteration for a for loop?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Tharindu
am 19 Nov. 2014
Kommentiert: Tharindu
am 21 Nov. 2014
Hi I have two sets of acceleration excel sheets data (8192x50 each) and I need to perform Fast Fourier Transformation for the total set of columns taking the same column from each file. As I have 50 columns I have to do this for 50 times. I used the for loop but it will only give the results for the last iteration. please help me to get the whole set of data.
here is the script I used for the calculation;
a=xlsread('V02_All_column5.xlsx');
b=xlsread('V02_All_column6.xlsx')
for i =1:50
z=a(:,i);
x=b(:,i);
Fs=3200;
L=length(z);
NFFT=2^nextpow2(L);
window=hann(L/2);
noverlap=8;
[Pff(:,:),f]=pwelch(z(:,:),window,noverlap,NFFT,Fs);
[Pxx(:,:),f]=pwelch(x(:,:),window,noverlap,NFFT,Fs);
[Pfx(:,:),f]=cpsd(z(:,:),x(:,:),window,noverlap,NFFT,Fs);
[Pxf(:,:),f]=cpsd(x(:,:),z(:,:),window,noverlap,NFFT,Fs);
H1(:,:)=Pfx(:,:)./Pff(:,:);
H2(:,:)=Pxx(:,:)./Pxf(:,:);
end
I want to get the H1 values for the whole iteration. Please help me.
Thank You .........!!!
0 Kommentare
Akzeptierte Antwort
per isakson
am 19 Nov. 2014
Bearbeitet: per isakson
am 20 Nov. 2014
Replace
H1(:,:)
by
H1(:,:,i)
and initialize H1 before the loop.
 
Addendum
Add this line before the loop
H1 = zeros( n1, n2, 50 );
choose n1 and n2 so that H1 gets its final size
3 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!