用正弦波之和产生矩形波
本例演示如何通过正弦波的相加来制作矩形信号,其参数可通过傅里叶展开(奇数部分)获得。
正弦波相加
创建一个以 0.1 为增量、从 0 到 10 变化的矢量,并取该矢量中每个值的正弦值。绘制信号的基谐波分量图。
In [ ]:
t = 0:.1:10;
y = sin.(t);
plot( t, y )
Out[0]:
让我们在主谐波的基础上添加三次谐波并绘制曲线图。
In [ ]:
y = sin.(t) + sin.( 3t )./3;
plot(t,y)
Out[0]:
现在让所有奇次谐波直至九次谐波出现在图形上。
In [ ]:
y = @. sin(t) + sin(3t)/3 + sin(5t)/5 + sin(7t)/7 + sin(9t)/9;
plot(t,y)
Out[0]:
我们使用运算符@.
不是为了给每个函数分别添加矢量化指标.
,而是为了使整个表达式矢量化。
在演示结束时,我们将绘制几幅图,其中奇次谐波的总和将逐渐累积,最后达到第 19 个分量。
In [ ]:
t = 0:0.02:3.14;
y = zeros(10,length(t));
x = zeros(size(t));
for k = 1:2:19
x = x .+ sin.(k*t)./k;
y[Int32((k+1)/2),:] = x;
end
plot( y[1:2:9,:]', leg=false,
title="Накопление синусоид и приближение к прямоугольной функции")
Out[0]:
谐波数列之和在断裂点附近的表现有时被称为吉布斯效应。根据观察到的效应,加入大量正弦波后,虽然误差的积分趋于零,但在断裂点处所需信号电平的超出部分将趋于 9%。
结论
我们通过研究一个小例子,了解了傅立叶变换的工作原理,以及传输脉冲信号时某些干扰类型的来源。