matlab——正弦积分

任务

上篇matlab——抽样信号通过推导得出抽样函数的广义积分值

[latexpage]
而在对滤波系统的分析中,又涉及到正弦积分(\ref{eq:1})——下面通过matlab进行绘制。
\begin{equation}\label{eq:1}
Si(y)=\int_{0}^{y}\frac{sinx}{x}\,dx
\end{equation}

matlab绘制函数图像

%调整图表尺度
%积分区间
y=20;
%粒度
grain=200;
%进行抽样函数Sa(t)的绘制
range=y*pi;
X= linspace(-range,range,grain);
Sa=sin(X)./X;
plot(X,Sa);
hold on
%正弦积分的图像绘制
syms x
Sa=sin(x)/x;
Y=zeros(1,length(X));
Si=zeros(1,length(X));
for i=1:length(X)
    %disp(y)
    Y(i)=X(i);
    Si(i)=int(Sa,0,X(i));
end
plot(Y,Si)
hold on;
line([0,range],[pi/2,pi/2],'color','g','linestyle','--');
line([-range,0],[-pi/2,-pi/2],'color','g','linestyle','--');

同样的,加上下述代码可以更直观

%生成横坐标刻度
labels="";
index=1;
interval=y/5;
for tick = -y:interval:y
    labels(index)=(strcat({num2str(tick)},{'\pi'}));
    index=index+1;
end
%设置图表标题/坐标刻度
rangeX=-range:pi*interval:range;
%text(0,pi/2,'\pi/2');
set(gca,'XTick',rangeX);
set(gca,'XTickLabel',labels);
set(gca,'YTick',[-pi/2,pi/2]);
set(gca,'YTickLabel',['-\pi/2','\pi/2']);
title('Sine Integral');
xlabel('Radians');
ylabel('Function Value');
legend('Sa(y)','Si(y)');
grid on;
在Sa(y)=0处达到极值

趋近于pi/2

理解

上升时间与截止频率成反比

[latexpage]
对于理想低通的阶跃响应,得出的响应函数(\ref{eq:2})部分由正弦积分表示。
\begin{equation}\label{eq:2}
r(t)=\frac{1}{2}+\frac{1}{\pi}Si[w_{c}(t-t_{0}]
\end{equation}
当上升时间定义为最小值到最大值的时间时,正对应正弦积分中的-pi——pi区间。即:
\begin{equation}
t_{\tau}=2\cdot\frac{\pi}{w_{c}}
\end{equation}

意味着,截至频率越低,上升时间越长,二者成反比。

简单的思路去理解:低通滤波相当于去除了截止频率之上的波形,而原始的阶跃信号的被越全频率成分的叠加会更接近,即去除的频率越少,波形越接近突跳的阶跃信号(上升时间趋于0)。

这由“测不准原理”决定。

吉布斯现象

之前研究过吉布斯现象的问题:

吉布斯现象与插值优化(上)Matlab实现多项式插值

而这次,能对其具体成因有所理解。

随取级数项数增加,跳变点的峰起向跳变点靠近,但不能减小,峰起值趋近于跳变值的9%

对截止频率的提升可以对响应波形的横向进行压缩——相应减少了上升时间,但纵向没有变化,则峰起值并不衰减。

Leave a comment

Your email address will not be published. Required fields are marked *