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

📄 ffts.m

📁 快速傅里叶变换 可以计算并且仿真出图片等
💻 M
字号:
function ffts
clc;
clear;
xi=input('xi=');
Ni=length(xi);
N=input('N=');
M=log2(N);
xn=[xi,zeros(1,N-Ni)];
x=revorder(xn);
for L=1:M
B=pow2(L-1);
for J=0:B-1
P=pow2(J,m-L);
for k=J+1:(2^L):N
X(k)=x(k)+x(k+B)*(exp(-j*2*pi/N*P));
X(k+B)=x(k)-x(k+B)*(exp(-j*2*pi/N*P));
x(k)=X(k);
x(k+B)=X(k+B);
end
end
end
figure(1);
subplot(211);stem(xi);title('xi');
subplot(212);stem(abs(x));title('abs(x)');

function x=revorder(xn)
N=length(xn);
LH=N/2;
j=LH;
N2=N-2;
for I=1:N2
   if(I<j)
     t=xn(I+1);
     xn(I+1)=xn(j+1);
     xn(j+1)=t;
   end
k=LH;
while(j>=k)
    j=j-k;
    k=k/2;
end
  j=j+k;
end
  x=xn;
%高斯序列
clear;
n=0:15;
p=8;q=2;x=exp(-1*(n-p).^2/q);
close all;
subplot(321);stem(abs(fft(x)));
subplot(322);stem(x);
p=8;q=4;x=exp(-1*(n-p).^2/q);
subplot(323);stem(abs(fft(x)));
subplot(324);stem(x);
p=8;q=8;x=exp(-1*(n-p).^2/q);
subplot(325);stem(abs(fft(x)));
subplot(326);stem(x);
clear;
n=0:15;
p=8;q=8;x=exp(-1*(n-p).^2/q);
figure(2);
subplot(321);stem(abs(fft(x)));
subplot(322);stem(x);
p=13;q=8;x=exp(-1*(n-p).^2/q);
subplot(323);stem(abs(fft(x)));
subplot(324);stem(x);
p=14;q=8;x=exp(-1*(n-p).^2/q); 
subplot(325);stem(abs(fft(x)));
subplot(326);stem(x);
title 高斯序列
%正弦衰减序列
clear;
n=0:15;     
a=0.1;f=0.0625;x=exp(-a*n).*sin(2*pi*f*n);
figure(3);
subplot(321);stem(abs(fft(x)));
subplot(322);stem(x);
a=0.1;f=0.4375;x=exp(-a*n).*sin(2*pi*f*n);
subplot(323);stem(abs(fft(x)));
subplot(324);stem(x);
a=0.1;f=0.5625;x=exp(-a*n).*sin(2*pi*f*n);
subplot(325);stem(abs(fft(x)));
subplot(326);stem(x);
title 正弦衰减序列
%三角波和反三角波
clear
for i=1:4
   x(i)=i;
end
for i=5:8
   x(i)=9-i;
end
figure(4);
subplot(2,2,1);stem(x);
subplot(222);stem(abs(fft(x,8)));
for i=1:4
    x(i)=5-i;
end
for i=5:8
    x(i)=i-4;
end
subplot(223);stem(x);
subplot(224);stem(abs(fft(x,8)));
text(' 三角波和反三角波')

⌨️ 快捷键说明

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