例子

给定一个低通滤波器的差分方程为:

输入信号:

a) 分别求出系统对x1和x2的响应序列,并画出其波形。
b) 求出系统的单位冲响应,画出其波形。

(3)给定系统的单位脉冲响应为:

用线性卷积法分别求系统h1(n)和h2(n)对的输出响应,并画出波形。
(4)给定一谐振器的差分方程为:

,谐振器的谐振频率为0.4rad。
a) 用实验方法检查系统是否稳定。输入信号为时,画出系统输出波形。
b) 给定输入信号为:

   求出系统的输出响应,并画出其波形

程序清单

系统响应及系统稳定性
%======内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性======
A=[1,-0.9];B=[0.05,0.05];  %系统差分方程系数向量B和A
x1n=[1 1 1 1 1 1 1 1 zeros(1,50)];  %产生信号x1(n)=R8(n)
x2n=ones(1,128);    %产生信号x2(n)=u(n)
hn=impz(B,A,58);    %求系统单位脉冲响应h(n)
subplot(2,2,1);y='h(n)';tstem(hn,y);    %调用函数tstem绘图
title('(a) 系统单位脉冲响应h(n)');box on
y1n=filter(B,A,x1n);    %求系统对x1(n)的响应y1(n)
subplot(2,2,2);y='y1(n)';tstem(y1n,y);
title('(b) 系统对R8(n)的响应y1(n)');box on
y2n=filter(B,A,x2n);    %求系统对x2(n)的响应y2(n)
subplot(2,2,4);y='y2(n)';tstem(y2n,y);
title('(c) 系统对u(n)的响应y2(n)');box on
%===========内容2:调用conv函数计算卷积==================
x1n=[1 1 1 1 1 1 1 1 ];  %产生信号x1(n)=R8(n)
h1n=[ones(1,10) zeros(1,10)];
h2n=[1 2.5 2.5 1 zeros(1,10)];
y21n=conv(h1n,x1n);
y22n=conv(h2n,x1n);
figure(2)
subplot(2,2,1);y='h1(n)';tstem(h1n,y);    %调用函数tstem绘图
title('(d) 系统单位脉冲响应h1(n)');box on
subplot(2,2,2);y='y21(n)';tstem(y21n,y);
title('(e) h1(n)与R8(n)的卷积y21(n)');box on
subplot(2,2,3);y='h2(n)';tstem(h2n,y);    %调用函数tstem绘图
title('(f) 系统单位脉冲响应h2(n)');box on
subplot(2,2,4);y='y22(n)';tstem(y22n,y);
title('(g) h2(n)与R8(n)的卷积y22(n)');box on
%=========内容3:谐振器分析=============================
un=ones(1,256);    %产生信号u(n)
n=0:255;
xsin=sin(0.014*n)+sin(0.4*n); %产生正弦信号
A=[1,-1.8237,0.9801];B=[1/100.49,0,-1/100.49];  %系统差分方程系数向量B和A
y31n=filter(B,A,un);    %谐振器对u(n)的响应y31(n)
y32n=filter(B,A,xsin);    %谐振器对u(n)的响应y31(n)
figure(3)
subplot(2,1,1);y='y31(n)';tstem(y31n,y);
title('(h) 谐振器对u(n)的响应y31(n)');box on
subplot(2,1,2);y='y32(n)';tstem(y32n,y);
title('(i) 谐振器对正弦信号的响应y32(n)');box on

情况说明

1.部分没有自定义画图函数tstem的MATLAB,可能会仿真失败。
解决办法:自定义函数tstem
首先文件命名tstem(与函数名一致)

function代码块

function [ output_args ] = Untitled2( input_args )
%UNTITLED2 Summary of this function goes here
%   Detailed explanation goes hereend

Untitled2为函数名,output表示函数输出值,input表示函数输入参数;中间为函数实体功能语句。

tstem函数

function [  ] = tstem( xn,yn)
n=0:length(xn)-1;%表示n为0到xn-1
stem(n,xn,'.');%以n为X轴,xn为Y轴,画出stem图。上面的数据点处用实心点“.”表示
xlabel('n');ylabel('yn');%分别给x,y轴取注标
axis([0,n(end),min(xn),1.2*max(xn)]);%axis([xmin xmax ymin ymax]) 用来标注输出的图线的最大值最小值或者是取界限
end

2.可能会显示错误或者警告

意思输入参数不足,n的问题,不过可以忽略,不影响函数功能。

主要函数程序说明

title为画图,图像取主题。

subplot(m,n,p)或者subplot(m n p)。
subplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果m=2就是表示2行图。p表示图所在的位置,p=1表示从左到右从上到下的第一个位置。

函数 y=impz(p,d,N) 求系统的冲激响应, p 表示输入 x 的系数,d 表示差分方程输出 y 的系数, N 表示冲击响应输出的序列个数。

y=filter(p,d,x) 实现差分方程的仿真, d 表示差分方程输出 y 的系数, p 表示输入 x 的系数,而 x 表示输入序列。输出结果长度数等于 x 的长度。

figure 命令,能够创建一个用来显示图形输出的一个窗口对象。(figure,就是控制窗口数量的)

y=conv(x,h) 计算卷积

结果图


结束语

希望可以对各位有所帮助,如有错误,希望可以斧正。谢谢!

利用MATLAB求系统响应相关推荐

  1. matlab求系统全响应,利用matlab求LTI连续系统的响应

    <利用matlab求LTI连续系统的响应>由会员分享,可在线阅读,更多相关<利用matlab求LTI连续系统的响应(3页珍藏版)>请在人人文库网上搜索. 1.实验3 利用mat ...

  2. 利用matlab求零输入响应波形,实验3 利用matlab求LTI连续系统的响应

    实验3 利用matlab求LTI连续系统的响应 一. 实验目的: 1. 了解LTI系统的冲激响应h(t)及matlab实现: 2. 了解LTI系统的阶跃响应g(t)及matlab实现: 3. 了解LT ...

  3. matlab系统的根轨迹,实验五 利用MATLAB绘制系统根轨迹

    <实验五 利用MATLAB绘制系统根轨迹>由会员分享,可在线阅读,更多相关<实验五 利用MATLAB绘制系统根轨迹(6页珍藏版)>请在人人文库网上搜索. 1.实验五 利用MAT ...

  4. 利用MATLAB进行系统时域分析,实验二 利用matlab进行系统的时域分析

    实验二 利用matlab进行系统的时域分析 实验二 利用MATLAB进行系统的时域分析 1.实验目的 在理论学习的基础上,通过本实验熟悉LTI连续时间系统的时域分析方法, 熟悉系统的零输入响应.零状态 ...

  5. matlab求多元函数的极小值,[转载]利用MATLAB求多元函数的极值(2)

    利用MATLAB求多元函数的极值分两种情况,(1)无约束条件:(2)有约束条件. (2)有约束条件下求极小值的方法: 假设多变量非线性函数的数学模型为 min f(x) c(x)<=0 ceq( ...

  6. 3、利用matlab求f(x)的一阶导函数(完整代码)

    已知,利用matlab求f(x)的一阶导函数 在 MATLAB 中,可以使用符号计算工具箱 Symbolic Math Toolbox 来求 $f(x)$ 的一阶导函数.具体步骤如下: 打开 MATL ...

  7. matlab运行函数的过程,关于matlab的一些作业一、要求写出窗口运行过程及结果1.利用Matlab求函数f(x)=-x2+ex+lnx的导数、...

    共回答了20个问题采纳率:90% 代码 function main() % 一.要求写出窗口运行过程及结果 % % 1.利用Matlab求函数f(x)=-x2+ex+lnx的导数.不定积分和1到10区 ...

  8. 利用matlab求点到直线距离和垂足坐标(开源,易使用修改)

    利用matlab求点C到向量AB的垂直距离以及垂足E点坐标 A.B两点构成向量AB:C为任一点.求C点到向量AB的垂直距离与C点到AB的垂足坐标. 结果说明:C2ABJvLi--C点到向量AB的垂直距 ...

  9. matlab里面求线性方程组,利用matlab求线性方程组.doc

    利用matlab求线性方程组.doc MATLAB语言课成论文利用MATLAB求线性方程组姓名郭亚兰学号12010245331专业通信工程班级2010级通信工程一班指导老师汤全武学院物电学院完成日期2 ...

最新文章

  1. php多个参数伪静态,伪静态技术与页面多参数传送的处理办法
  2. Java中浮点数的基础知识
  3. 关于投稿 LaTeX 的使用
  4. Android 呼吸灯流程分析
  5. levy过程、扩散过程、随机过程带跳
  6. oracle中ccuser,oracle数据库user profile设置方法
  7. ORACLE检索数据一致性与事务恢复
  8. JSP九大内置对象以及作用
  9. 二阶系统阶跃响应实验__ 二阶系统的阶跃响应实验报告
  10. Element 中表格表头添加搜索图标和功能使用
  11. html 淡入淡出效果,css3 transition实现淡入淡出效果 - 小俊学习网
  12. laravel5.5 sendCloud 发送邮件(sendCloud Api and naux/sendcloud )
  13. app store 注册账号生成证书上传app完整的教程
  14. 常见的棋牌游戏网站支付接口
  15. 临床医疗运营数据分析
  16. 风之大陆 服务器不稳定,【风之大陆】7月29日更新公告
  17. 推特开发者账号 获取推文的视频链接
  18. 《当阿呆遇上阿瓜》:当铁锹遇上石头
  19. c语言内存越界例子,内存越界的可能情况分析,C语言内存越界详解
  20. Android 彩信发送

热门文章

  1. 在nginx环境下同一个网站目录下放2个或者多个zblog程序nginx伪静态规则如何写
  2. 如何比较两个速度的大小地程序_58安居客小程序平台化与多小程序开发探索与实践...
  3. Nodejs报内部错误 TypeError: Cannot read property ‘destroy‘ of undefined的解决方法
  4. 15. Linux系统中的磁盘管理
  5. Invalid header signature; read 0x3C0A0D0A0DBFBBEF, expected 0xE11AB1A1E011CFD0
  6. linux中查看线程的亲和性
  7. 计算机师徒结对方案,指导青年教师(师徒结对)工作计划
  8. 计算机二级表格题的数据,计算机二级Excel表格题库答案(解题步骤)
  9. ICP备案和ICP许可证区别
  10. WINFORM时间控件(DATATIMEPICKER)的显示格式设置