📄 fftcircle.m
字号:
%时间序列平均周期计算
clear;
clc;
close all;
% 输入时间序列data
load data;
X=data;
Y=fft(X);
N=length(Y); %求FFT变换之后的数据长度
Y(1)=[];%去掉Y的第一个数据,该数据实际上是后面所有数据的和
power=abs(Y(1:N/2)).^2;% 求功率谱
nyquist=1/2;
freq = (1:N/2)/(N/2)*nyquist;%求频率
plot(freq,power), grid on %绘制功率谱图
xlabel('cycles/tongjishijianjiange')
title('Periodogram')
period = 1./freq; %年份(周期)
plot(period,power); % , axis([0 40 0 2e7]), grid on %绘制年份-功率谱曲线
ylabel('Power')
xlabel('Period(Years/Cycle)')
[mp,index] = max(power); %求最高谱线所对应的年份下标
%求时间序列平均周期TT
TT=period(index); %由下标求出平均周期
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -