matlab学习003-绘制由差分方程表示的离散系统图像

目录

1,题目

2,使用函数求解差分方程

1)基础知识 

①filter函数和impz函数 

②zeros函数 

2)绘制图像

 3)对应代码


 

 如果连简单的信号都不会的,建议先看如下文章👇,之后再来看这篇文章,因为有些基础性的语句我没注释。就注释了新的内容。

matlab学习001-简单的矩阵输入运算及绘制信号曲线_

1,题目

设离散系统可由下列差分方程表示:

y(n)-y(n-1)+0.9y(n-2)=x(n)
计算n=(-5:40)时的系统的冲激响应。

2,使用函数求解差分方程

1)基础知识 

①filter函数和impz函数 

离散系统模型时域表示的matlab实现函数有filter函数和impz函数两种。其中,impz函数用于实现离散系统的单位冲激响应。接下来分别认识这两个函数:

 filer:滤波器。

filter函数,是利用递归或非递归滤波器对数据进行滤波。因为一个离散系统可以看作是一个滤波器,系统的输出就是输入经过滤波器滤波的结果。filter函数有两种格式:

  1. y=filer(b,a,x) →表示由向量b和a组成的系统对输入x进行滤波,系统的输出为y。
  2. [y,zf]=filter(b,a,x,zi)→zi表示输入信号的初始状态,zf表示该函数返回的系统的最终状态向量。

impz函数

impz:Impulse response of digital filter:数字滤波器的脉冲响应 。

 impz函数直接给出系统的单位冲击响应,其语法格式如下:

  • impz(b,a)

②zeros函数 

在matlab中,有很多方法可以产生单位冲击序列,但是最直接的方法就是使用matlab中的zeros函数。例如产生一个64点的单位冲击信号的matlab程序如下:

pulse=[1 zeros(1,63)]

 结果输出如下:

在上面的程序代码中的zeros函数用法详细解释请参考matlab的文档,如下👇 

绘制成图像:

 单位冲击序列也可以使用如下代码绘制:

n=0:63;
impulse=(n==0);
stem(n,impulse);

2)绘制图像

 3)对应代码

pulse=[1 zeros(1,63)]  % 产生64点的单位冲激序列
a=[1 -1 0.9]; % y函数的系数
b=[1];  % x函数的系数
rfilter=filter(b,a,pulse); % 使用filter函数
rimpz=impz(b,a,64); % 使用impz函数
subplot(211); stem(rfilter);title('使用filter函数绘制的y(n)-y(n-1)+0.9y(n-2)=x(n)');axis([-5 40 -1.5 1.5]);
subplot(212); stem(rimpz);title('使用impz函数绘制的y(n)-y(n-1)+0.9y(n-2)=x(n)');axis([-5 40 -1.5 1.5]);
%h=get(gca,'position');   %将子图横坐标范围扩为原来的3倍
%h(2)=3*h(2);
%set(gca,'position',h);

有问题请在评论区留言或者是私信我,一天8h在线。

相关推荐

  1. Matlab | SISO系统方程求解(附matlab源码)

    2024-04-23 01:44:02       51 阅读
  2. 算法学习笔记(约束系统

    2024-04-23 01:44:02       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-23 01:44:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-23 01:44:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-23 01:44:02       87 阅读
  4. Python语言-面向对象

    2024-04-23 01:44:02       96 阅读

热门阅读

  1. xml开发mybatis

    2024-04-23 01:44:02       40 阅读
  2. es 深入了解和索引生命周期管理

    2024-04-23 01:44:02       30 阅读
  3. 【UnityShader预备知识】内置变量和函数

    2024-04-23 01:44:02       28 阅读
  4. 自然语言处理(Natural Language Processing, NLP)简介

    2024-04-23 01:44:02       43 阅读
  5. 国产人工智能语言大模型相关网站

    2024-04-23 01:44:02       33 阅读
  6. C++ STL 概述

    2024-04-23 01:44:02       22 阅读
  7. Linux bridge forwarding table

    2024-04-23 01:44:02       39 阅读
  8. 2024-04-22(AJAX)

    2024-04-23 01:44:02       36 阅读
  9. Ubuntu22.04.4 - 安装后使用笔记目录-VMware

    2024-04-23 01:44:02       33 阅读
  10. 基于Python对豆瓣电影数据爬虫的设计与实现

    2024-04-23 01:44:02       36 阅读