马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
这是计算结果:
序列的长度是3134;为什么算出的平均周期这么大???
以下是运算程序,求各位好心人解答,谢谢!
function P=ave_period(data)
year=length(data);
wolfer=data;
% plot(year,wolfer)
% title(' signal')
Y = fft(wolfer);
Y(1)=[];
% plot(Y,'ro')
% title('Fourier Coefficients in the Complex Plane');
% xlabel('Real Axis');
% ylabel('Imaginary Axis');
power = abs(Y(1:floor(n/2))).^2;
n=length(Y);
nyquist = 1/2;
freq = (1:n/2)/(n/2)*nyquist;
% plot(freq,power)
% xlabel('cycles/year')
% title('Periodogram')
period=1./freq;
% plot(period,power);
% ylabel('Power');
% xlabel('Period (Years/Cycle)');
% hold on;
index=find(power==max(power));
mainPeriodStr=num2str(period(index));
% plot(period(index),power(index),'r.', 'MarkerSize',25);
% text(period(index)+2,power(index),['Period = ',mainPeriodStr]);
% hold off;
P=round(period(index))
|