⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fftfortimedata.m

📁 数字信号处理用的快速傅里叶变化
💻 M
字号:
fprintf('START\n');
clear;
%****changable parameters when run each time******
  fin1=fopen('8_1-5.txt','r');%txt file: time  data
  period=1;  %time period number of one Time Series Datas,each period is FFTed independently. 
  start_at=2;%the first data to be ffted 
  t_point=2048;%number of data at time domain within each time period.
%*************************************************
figure(1);
for i=1:1:start_at-1
  line=fgetl(fin1);
end
for k=1:1:period
  for i=1:1:t_point
    t(i)=fscanf(fin1,'%g',1);
    data(i)=fscanf(fin1,'%g', 1);
  end
  delta_t=t(2)-t(1);
  smp_frq=1/delta_t;
  data=data-mean(data);

  Y = fft(data,t_point);
  Pyy = Y.* conj(Y) / t_point;
  f = smp_frq*(0:t_point/2)/t_point;
  subplot(period,1,k);
  %subplot(2,1,1);
  pmax=max(Pyy(1:t_point/2+1));
  Pyy(1:t_point/2+1)=Pyy(1:t_point/2+1)/pmax;
  plot(f,Pyy(1:t_point/2+1))
  axis([0 50 0 1.2]);
  set(gca,'fontname','times new roman','fontsize',10);%for axis
  xlabel('frequency (Hz)','fontname','times new roman','fontsize',12)%,'fontweight','bold');
  ylabel('Spectrum','fontname','times new roman','fontsize',12)%,'fontweight','bold');
end%k
fprintf('OK!\n');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -