zl程序教程

您现在的位置是:首页 >  后端

当前栏目

周期矩形波的傅里叶级数展开(Matlab代码实现)

MATLAB代码 实现 展开 矩形 周期 傅里叶 级数
2023-09-27 14:20:42 时间

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

当脉冲信号周期不变,脉冲宽度变大时,相邻谱线间隔不变,频谱包络线的零点频率逐渐变小,反之则变大。另外频谱中各频率点谱线的幅值与脉宽有关;当信号周期不变时,脉宽越宽,频率点频谱的幅值越大。频谱图的格式错误,改程序后,结果正确。

📚2 运行结果

 部分代码:clear all
close all
clc
for j=1:3
    N=10^j;
    t=[0:0.01:10];
    signal=zeros(1,size(t,2));
    for i=1:N-1
        harmonics(i,:)=(2*(1-(-1)^i)/(pi*i))*(sin(pi*i*t/1));
        signal=signal+harmonics(i,:);
    end
    subplot(3,1,j),plot(t,real(signal))
%     subplot(3,1,j),plot(t,imag(signal))
end


close all
clc
for j=1:3
    N=10^j;
    t=[0:0.01:10];
    signal=zeros(1,size(t,2));
    for i=1:N-1
        harmonics(i,:)=(2*(1-(-1)^i)/(pi*i))*(sin(pi*i*t/1));
        signal=signal+harmonics(i,:);
    end
    subplot(3,1,j),plot(t,real(signal))
%     subplot(3,1,j),plot(t,imag(signal))
end


close all
clc
for j=1:3
    N=10^j;
    t=[0:0.01:10];
    signal=zeros(1,size(t,2));
    for i=1:N-1
        harmonics(i,:)=(2*(1-(-1)^i)/(pi*i))*(sin(pi*i*t/1));
        signal=signal+harmonics(i,:);
    end
    subplot(3,1,j),plot(t,real(signal))
%     subplot(3,1,j),plot(t,imag(signal))
end


close all
clc
for j=1:3
    N=10^j;
    t=[0:0.01:10];
    signal=zeros(1,size(t,2));
    for i=1:N-1
        harmonics(i,:)=(2*(1-(-1)^i)/(pi*i))*(sin(pi*i*t/1));
        signal=signal+harmonics(i,:);
    end
    subplot(3,1,j),plot(t,real(signal))
%     subplot(3,1,j),plot(t,imag(signal))
end

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]司祯祯.傅里叶变换与小波变换在信号去噪中的应用[J].电子设计工程,2011,19(04):155-157.DOI:10.14022/j.cnki.dzsjgc.2011.04.032.

🌈4 Matlab代码实现