FS
FS理论
奇谐对称偶函数的傅里叶级数FS
奇谐对称奇函数的傅里叶级数FS
非奇谐非偶谐的偶函数的傅里叶级数FS
结论:
- 偶函数的FS没有sin项,只可能含有直流项和cos项;
- 奇函数的FS没有cos项,只可能含有直流项和sin项;
- 奇谐对称函数(f(t) = - f(t±T/2))和偶谐对称函数(f(t) = f(t±T/2))不存在直流分量;
- 奇谐对称函数的FS是奇数谐波分量的叠加;
- 偶谐对称函数的FS是偶数谐波分量的叠加;
傅里叶有限级数(以奇谐对称偶函数的方波为例)
% 功能:以奇谐对称偶函数方波函数为例,计算傅里叶有限级数
% y= 4*A/pi.*(cos(w.*t)-cos(3*w.*t)./3+cos(5*w.*t)./5-cos(7*w.*t)./7+...)
% 编辑者:lily
% 日期:2019,4,30
clear;
clc;
close all;
% ======================= preferences set ==========================
A = 1;%矩形波的幅度(最大值)
f = 20;
w = 2*pi*f;
Fs = 2^10;
T = 1/30;
t = -T:1/Fs:T;
n_start = 1; % 第一个谐波
n_end = 100; % 第n_end个谐波
y = zeros(n_end,length(t));
x = zeros(size(t));
m = 1;
for n = n_start:n_end %第n_start个到第n_end个的有限级数
x = x + (-1).^(n+1)./(2*n-1).*cos((2*n-1)*w*t);
y(n,:) = 4*A/pi*x;
plot(t,y);
grid on;
note(:,m) = {['第' num2str(n) '个谐波']};
m = m+1;
legend(note)
end
% ========= 三维曲面图,该曲面图表示正弦波到方波的逐变过程===========
figure;
surf(y);
shading interp
axis off ij
DFT
MATLAB程序
% 功能:DFT
% 编辑者:lily
% 日期:2019,4,14
clear;
clc;
close all;
% ======================= input signal ==========================
% 功能:DFT
% 编辑者:lily
% 日期:2019,4,14
clear;
clc;
close all;
% ======================= input signal ==========================
f1=300;
f2=400;
fai1=pi/3;fai2=pi/4;
dFs=2^10;
T=1.7;%
t=0:1/dFs:T;
N=length(t);
x=3*cos(2*pi*f1*t+fai1)+2*sin(2*pi*f2*t+fai2)+5*randn(1,N);%两个谐波加上一个幅值为10高斯白噪声
% ======================= DFT===================================
vecN=0:1:N-1;
vecK=vecN';
tic;
matixexp=exp(-(2*pi/N)*1i*vecK*vecN);
xk=(matixexp*x')/N;%归一化
toc;%tic和toc表示中间两步计算的时间
deltaF=1/T;
vecf=(0:N-1)*deltaF;%使频率与幅值一一对应
% ======================= figure=================================
subplot(3,1,1);plot(t,x);title('信号')
subplot(3,1,2);plot(vecf,2*abs(xk));title('离散傅里叶变换')%观察到abs(xk)是x幅值的一半,乘2才是真正的幅值。
subplot(3,1,3);plot(vecf,angle(xk));title('相位图')%显示相位;