📄 ms11_4.m
字号:
clf; %图形窗清屏
n=0:5; %建立时间向量n
xn1=[0,1,2,3,0,0]; %建立xn1序列
xn2=[1,1,1,0,0,0]; %建立xn2序列
N=length(xn1);
nx=(-N:3*N-1);
hxn2=xn2(mod(nx,N)+1); %将xn2序列周期延拓
u=[zeros(1,N),xn2,zeros(1,2*N)];%按xn2周期延拓后的长度建立主值信号
xn12=fliplr(xn1); %将xn1作左右翻褶
hxn1=xn12(mod(nx,N)+1); %将xn1翻褶后的序列周期延拓
N1=length(hxn1);
y=zeros(1,4*N); %将y存储单元初始化
for k=0:N-1 %动态演示绘图开始
p=[zeros(1,k+1),hxn1(1:N1-k-1)];%使hxn1向右循环移位
y1=u.*p; %使输入和翻转移位的脉冲过渡函数逐项相乘
yk=sum(y1); %相加
y([k+1,k+N+1,k+2*N+1,k+3*N+1])=yk;%将结果放入数组y
subplot(4,1,1);stem(nx,hxn2,'k');
axis([-1,3*N,0,1.1]);ylabel('x2(n)');
subplot(4,1,2);stem(nx,p,'k');
axis([-1,3*N,0,3.3]);ylabel('x1(n)');
subplot(4,1,3);stem(k,yk,'k'); %作图表示主值区每一次卷积的结果
axis([-1,3*N,0,6.6]);hold on %在图形窗上保留每一次运行的图形结果
ylabel('主值区');
subplot(4,1,4);stem(nx,y,'k');
axis([-1,3*N,0,6.6]);ylabel('卷积结果');
pause(2); %停顿2秒钟
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -