数字信号处理:matlab解差分方程

news2024/11/15 11:42:14

1. 验证全响应

%验证全响应=零状态响应+零输入响应
%y(n)=4y(n-1)+x(n),其中x(n)=δ(n),y(-1)=2.

clc;%清屏
clear all;%清除所有变量的值
b=[1];
a=[1,-4];
ys=[2];
xs=[0];%没有初始值,就是0
xn=[1, zeros(1,4)];%输入序列,假设长度是5,则输出长度也是5
n=0:length(xn)-1;%序列横坐标

y0=filtic(b,a,ys,xs);%由初始状态得到的y0值,
yn1=filter(b,a,zeros(1, length(xn)), y0);%零输入响应,由y0递推可得。
yn2=filter(b,a,xn, 0);%零状态响应
yn=filter(b,a,xn, y0);%全响应

结果:

2. 验证系统的时不变

%验证时不变
%y(n)=4y(n-1)+x(n),其中x(n)=δ(n),y(-1)=0.

clc;%清屏
clear all;%清除所有变量的值
b=[1];
a=[1,-4];
ys=[0];
xs=[0];
xn=[1, zeros(1,4)];%输入序列,假设长度是5,则输出长度也是5
n=0:length(xn)-1;%序列横坐标

y0=filtic(b,a,ys,xs);%由初始状态得到的y0值,
yn1=filter(b,a,zeros(1, length(xn)), y0);%零输入响应,由y0递推可得。
yn2=filter(b,a,xn, 0);%零状态响应
yn=filter(b,a,xn, y0);%全响应

%验证差分方程的时变特性
xn_d=[0,1,0,0,0];
yn_d=filter(b, a, xn_d, y0);

结果:只有初始状态为0的情况下才是时不变的

如果初始值不为0,结果是不一样的:

%验证时不变
%y(n)=4y(n-1)+x(n),其中x(n)=δ(n),y(-1)=2,初始值不为0

clc;%清屏
clear all;%清除所有变量的值
b=[1];
a=[1,-4];
ys=[2];%初始值
xs=[0];
xn=[1, zeros(1,4)];%输入序列,假设长度是5,则输出长度也是5
n=0:length(xn)-1;%序列横坐标

y0=filtic(b,a,ys,xs);%由初始状态得到的y0值,
yn1=filter(b,a,zeros(1, length(xn)), y0);%零输入响应,由y0递推可得。
yn2=filter(b,a,xn, 0);%零状态响应
yn=filter(b,a,xn, y0);%全响应

%验证差分方程的时变特性
xn_d=[0,1,0,0,0];
yn_d=filter(b, a, xn_d, y0);

结果:

3. 验证系统的稳定性

%求系统函数h(n), 并验证该系统是否是稳定的
%y(n)-2y(n-1)=x(n)

clc;%清屏
clear all;  %清除所有变量的值
b=[1];      %差分方程系数
a=[1,-2];   %差分方程系数
N=100;       %序列长度
dn=[1, zeros(1,N-1)]; %产生单位脉冲序列
hn=filter(b,a,dn); %求单位脉冲响应h(n),没有初始状态,直接输入即可
n=0:N-1;

xn=ones(1,N);%输入是单位阶跃序列
yn=filter(b,a,xn);%求系统输出

subplot(211);
stem(n, hn);title('h(n)');

subplot(212);
stem(n, yn);title('输入是x(n)=u(n)');

结果:

可以发现,输入有界,但输出并不是有界的,该系统不稳定,实际上h(n)是不收敛的序列。

4. 卷积法和递推法求系统输出

%卷积法和递推法有何差异
%y(n)=x(n)+2x(n-1)+4x(n-3), x(n)=[1 2 3 4]

clc;%清屏
clear all;  %清除所有变量的值
b=[1 2 0 4];      %h(n)
a=[1];      %差分方程系数
xn=1:4;     %输入序列

yn_cov=conv(b,xn);%卷积法求系统输出
yn_filter=filter(b, a, xn);%递推法求系统输出

结果:

长度不同,卷积法结果的长度是:4+4-1,而递推法的输出和输入长度相同。可以在递推法的输入序列后补上三个0,得到的结果就是一样的:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1685625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人工智能+量子计算:飞跃现实边界还是科技幻想?

人工智能量子计算,这是一种可能改变世界的伙伴关系。 在科技的前沿,两大革命性技术——人工智能(AI)和量子计算——正站在合作的十字路口。人工智能,以其强大的数据分析能力和模式识别,正在改变着我们生活…

【机器学习与大模型】驱动下的电子商务应用

摘要: 随着信息技术的飞速发展,电子商务已经成为当今商业领域中最为活跃和重要的部分之一。而机器学习和大模型的出现,为电子商务带来了新的机遇和挑战。本文深入探讨了机器学习与大模型在电子商务中的应用,包括个性化推荐、精准营…

第一份工资

当我拿到我人生的第一份工资时,那是一种难以言表的激动。我记得那个下午,阳光透过窗户洒在了我的办公桌上,我看着那张支票,心中满是欣喜和自豪。那是我独立生活的开始,也是我对自己能力的一种肯定。 我记得我是如何支配…

【云原生】kubernetes中的service原理、应用实战案例解析

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

5分钟在 VSCode 中使用 PlantUML 绘图

去年,写过一篇在 VSCode 中使用 PlantUML 的博客,那时候我嫌弃本地安装麻烦,所以采用的是在本地运行 docker 容器的方法部署的 PlantUML 服务端。不过,现在来看这样还必须依赖在本地手动启动 docker 容器(如果有一个不…

【UnityShader入门精要学习笔记】第十四章 非真实感渲染

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 我的GitHub仓库 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 卡通风格渲…

2024年5月24日 十二生肖 今日运势

小运播报:2024年5月24日,星期五,农历四月十七 (甲辰年己巳月戊子日),法定工作日。 红榜生肖:龙、牛、猴 需要注意:兔、羊、马 喜神方位:东南方 财神方位:…

10个顶级的论文降重指令,让你的论文降重至1.9%

10个顶级的论文降重指令,本硕博写论文必备! 在ChatGPT4o对话框中输入:写一个Spring BootVue实现的车位管理系统的论文大纲,并对其具体章节进行详细描述。 几小时即可完成一份1万字论文的编写 在GPTS中搜索论文降重,使…

[Redis]基本全局命令

Redis存储方式介绍 在 Redis 中数据是以键值对的凡事存储的,键(Key)和值(Value)是基本的数据存储单元。以下是对 Redis 键值对的详细讲解: 键(Key): 类型:…

论文精读--InstructGPT

模型效果取决于数据效果,但在精细度上控制不够,只是大力出奇迹,这样有很大的问题: (1)数据量太多或者没有这方面的数据,模型学不会怎么办 (2)安全性问题,模…

c语言:利用随机函数产生20个[120, 834] 之间互不相等的随机数, 并利用选择排序法将其从小到大排序后输出(每行输出5个)

利用随机函数产生20个[120, 834] 之间互不相等的随机数&#xff0c; 并利用选择排序法将其从小到大排序后输出&#xff08;每行输出5个&#xff09; 代码如下&#xff1a; #include <stdio.h> #include <time.h> #include <stdlib.h> int shenchen(int a[…

信息系统项目管理师0126:输入(8项目整合管理—8.6管理项目知识—8.6.1输入)

点击查看专栏目录 文章目录 8.6 管理项目知识8.6.1 输入8.6 管理项目知识 管理项目知识是使用现有知识并生成新知识,以实现项目目标并且帮助组织学习的过程。管理项目过程的主要作用: 利用已有的组织知识来创造或改进项目成果;使当前项目创造的知识可用于支持组织运营和未来…

解决Vscode打开新文件会覆盖旧文件

现象&原因 现象&#xff1a;Vscode左侧点击新文件&#xff0c;右侧重用预览编辑器&#xff0c;新文件会替换旧文件原因&#xff1a; 默认单击是预览编辑器显示&#xff0c;双击是保持打开状态 解决方案 以下两种都可以 设置里搜索 Enable Preview 默认是勾选状态&#x…

京东科技市场与平台运营中心PMO负责人徐雪娇受邀为第十三届中国PMO大会演讲嘉宾

全国PMO专业人士年度盛会 京东集团京东科技市场与平台运营中心PMO负责人徐雪娇女士受邀为PMO评论主办的2024第十三届中国PMO大会演讲嘉宾&#xff0c;演讲议题为“AI数字人项目全过程管理实践分享”。大会将于6月29-30日在北京举办&#xff0c;敬请关注&#xff01; 议题简要&…

springboot vue 开源 会员收银系统 (4) 分类及商品模块开发

前言 完整版演示 前面我们对会员系统 门店模块开发的开发 完成了门店的基础管理 并与会员相关联 下面我们将开发门店的分类及商品管理 我们分析以下几个重点 分类可以随时禁用不用单独下架某个商品便于管理商品添加应该有图片上传商品设置会员价和散客价便于营销商品应该参与…

解决updateByExample时属性值异常的问题(部分属性值没有使用占位符?进行占位,而是变成了属性的名称)

目录 场景简介代码片断实体类 报错信息排查原因解决测试过程解决方案 场景简介 1、程序将mybatis框架升级为3.5.9版本后执行updateByExample方法时报错 代码片断 Condition condition new Condition(MbCcsSessionConfig.class); condition.createCriteria().andEqualTo(&quo…

[STM32-HAL库]Flash库-HAL库-复杂数据读写-STM32CUBEMX开发-HAL库开发系列-主控STM32F103C6T6

目录 一、前言 二、实现步骤 1.STM32CUBEMX配置 2.导入Flash库 3.分析地址范围 4.找到可用的地址 5.写入读取普通数据 6.写入读取字符串 6.1 存储相关信息 6.2 存取多个参数 三、总结及源码 一、前言 在面对需要持久化存储的数据时&#xff0c;除了挂载TF卡&#xff0c;我们…

【线段图案】

描述 KiKi学习了循环&#xff0c;BoBo老师给他出了一系列打印图案的练习&#xff0c;该任务是打印用“*”组成的线段图案。 输入描述&#xff1a; 多组输入&#xff0c;一个整数&#xff08;1~100&#xff09;&#xff0c;表示线段长度&#xff0c;即“*”的数量。 输出描述…

.NET Core Web Api Swagger运行异常

遇到的问题 因为新增了一个控制器方法&#xff0c;从而导致在运行Swagger的时候直接报错&#xff0c;异常如下&#xff1a; SwaggerGeneratorException: Conflicting method/path combination "POST api/UserOperationExample" for actions - WebApi.Controllers.Us…

HCIP-Datacom-ARST自选题库__MPLS简答【4道题】

1.如图所示&#xff0c;R1、R2、R3、R4处于同一个MPLS域&#xff0c;且设备之间采用LDP分配MPLS标签&#xff0c;R4为4.4.4.0/24这条FEC的EgressLSR。若想实现R1访问4.4.4.0/24时&#xff0c;R4不需要查询标签表但能够了解该数据的转发优先级&#xff0c;则R3对于该FEC的出标签…