matlab学习006-使用matlab绘出系统的冲激响应和阶跃响应波形并求其冲激响应的数值解

目录

题目

1,绘出系统的冲激响应和阶跃响应波形

1)基础

2)效果

3)代码

2,求出t=0.5s,1s,1.5s,2s时系统冲激响应的数值解。

 1)基础

2)效果

​☀

3)代码


题目

已知描述某连续系统的微分方程为:y’’(t)+5y’(t)+6y(t)=3f’(t)+2f(t)


1,绘出系统的冲激响应和阶跃响应波形

1)基础

  • 冲激响应是在输入为单位冲激信号时的系统输出。
  • 阶跃响应是在输入为单位阶跃信号时的系统输出。
  • 传递函数 :​零初始条件下线性系统响应量(即输出y(t))的拉普拉斯变换Y(s)(或z变换)Y(z)与激励量(即输入x(t))的拉普拉斯变换X(s)之比。记作G(s)=Y(s)/X(s),传递函数是描述线性系统动态特性的基本数学工具之一。
  • MATLAB中的impulse函数可以得到冲激响应的时间序列数据

为了绘制连续系统的冲激响应和阶跃响应波形,需要先确定系统的传递函数。对于给定的微分方程y''(t) + 5y'(t) + 6y(t) = 3f'(t) + 2f(t)可以转化为传递函数的形式:

  1. 首先,对输入f(t)和输出y(t)进行拉普拉斯变换→F(s)和Y(s)。
  2. 将微风方程转换为:s^2Y(s) + 5sY(s) + 6Y(s) = 3sF(s) + 2*F(s)。
  3. 之后整理得:Y(s) = (3sF(s) + 2F(s)) / (s^2 + 5s + 6)。
  4. 然后,对分子和分母进行因式分解。
  5. 最后利用部分分式展开的方法得到系统的传递函数。(在MATLAB中,tf函数可以直接用来创建传递函数。)

impulse函数: 

 step函数:


 

2)效果

3)代码

% 定义系统的传递函数  
fenzi = [3 2]; % 分子多项式系数  
fenmu = [1 5 6]; % 分母多项式系数  
sys = tf(fenzi, fenmu); % 创建传递函数对象  
  
% 计算冲激响应  
[ y_impulse,t_impulse] = impulse(sys);  %时间向量t_impulse和响应向量y_impulse
  
% 绘制冲激响应波形  
figure;  
subplot(2,1,1);
plot(t_impulse, y_impulse);  
title('冲激响应波形');  
xlabel('时间 (t)');  
ylabel('响应 (y)');  
grid on;  
  
% 计算阶跃响应  
[ y_step,t_step] = step(sys);  
  
% 绘制阶跃响应波形 
subplot(2,1,2);
plot(t_step, y_step);  
title('阶跃响应波形');  
xlabel('时间 (t)');  
ylabel('响应 (y)');  
grid on;

2,求出t=0.5s,1s,1.5s,2s时系统冲激响应的数值解。

 1)基础

可以使用插值或者查找的方法来获取特定时间点的冲激响应值。由于impulse函数返回的时间向量和响应向量通常是等间隔的,我们可以直接通过索引来查找对应时间点的值。

步骤:

  1. 首先定义想要查询的时间点t_query,并使用interp1函数和'nearest'选项来查找这些时间点对应的最近冲激响应值。

注意点:

  1. 如果t_impulse的时间间隔不够小,使用'nearest'选项可能会导致一些误差。
  2. 在这种情况下,可能需要使用更精确的插值方法,如'linear''spline'
  3. 对于大多数控制系统分析,如果t_impulse的时间向量足够密集,'nearest'选项通常就足够了。

  interp1函数:(interp字母后面带着的是数字1)

 num2str函数:

 

2)效果

 

 

3)代码

 

% 定义系统的传递函数  
fenzi = [3 2]; % 分子多项式系数  
fenmu = [1 5 6]; % 分母多项式系数  
sys = tf(fenzi, fenmu); % 创建传递函数对象  
% 计算冲激响应  
[ y_impulse,t_impulse] = impulse(sys);  %响应向量y_impulse和时间向量t_impulse

% 定义想要查询的时间点
t_query = [0.5 1 1.5 2];
% 查找对应时间点的冲激响应值
% 由于t_impulse和y_impulse是等间隔的,可以使用插值或者查找最近点的方法
% 这里假设t_impulse的间隔足够小,可以直接查找最近点
y_query = interp1(t_impulse, y_impulse, t_query, 'nearest');

% 显示结果
disp(['在 t = 0.5s, 1s, 1.5s, 2s 时的冲激响应分别为: ' num2str(y_query)]);
  

有问题请在评论区留言,1天8h在线。 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python】Anaconda 使用笔记

文章目录 一、创建环境1.1 在任意磁盘中创建环境1.2 添加环境路径envs_dirs 二、安装和使用Python环境三、删除已有的Python环境 前言   笔者使用Python的目的主要是为了学习神经网络等深度学习算法。但是在学习之初配置环境的时候发现之前的环境配置一团乱麻,不仅…

Mybatis进阶(动态SQL)

文章目录 1.动态SQL1.基本介绍1.为什么需要动态SQL2.基本说明3.动态SQL常用标签 2.环境搭建1.新建子模块2.删除不必要的两个文件夹3.创建基本结构4.父模块的pom.xml5.jdbc.properties6.mybatis-config.xml7.MyBatisUtils.java8.MonsterMapper.java9.MonsterMapper.xml10.测试Mo…

第七篇:专家级指南:Python异常处理的艺术与策略

专家级指南:Python异常处理的艺术与策略 1 引言 在编程的世界中,异常处理是一门必修的艺术。它不仅涉及到程序的错误处理,更广泛地影响着软件的稳定性、健壮性和用户体验。本篇文章将深入探讨Python中的异常处理,展示如何通过精心…

Linux:服务器间同步文件的脚本(实用)

一、功能描述 比如有三台服务器,hadoop102、hadoop103、hadoop104,且都有atguigu账号 循环复制文件到所有节点的相同目录下,且脚本可以在任何路径下使用 二、脚本实现 1、查看环境变量 echo $PATH2、进入/home/atguigu/bin目录 在该目录下…

三. Django项目之电商购物商城 -- 校验用户名 , 数据入库

Django项目之电商购物商城 – 校验用户名 , 数据入库 需要开发文档和前端资料的可私聊 一. 路由匹配获得用户名 在注册时 , 用户输入用户名 , 通过ajax请求发送到服务器 , 在路由中设置对应url , 响应视图 , 将用户输入的用户名传入视图 , 与数据库进行校验检查用户名是否重…

信息技术内涵及意义

一、信息技术及其演进趋势 (一)信息技术概况概念 信息技术(Information Technology,IT)指“应用在信息加工和处理中的科学、技术与工程的训练方法与管理技巧;上述方法和技巧的应用;计算机及其…

linux高性能服务器--Ngix内存池简单实现

文章目录 内存模型:流程图内存对齐code 内存模型: 流程图 内存对齐 对齐计算 要分配一个以指定大小对齐的内存,可以使用如下公式: 假设要分配大小为n,对齐方式为x,那么 size(n(x-1)) & (~(x-1))。 举个…

【大模型系列】大模型的上下文长度解释与拓展

文章目录 1 什么是大模型的上下文长度?2 拓展大模型上下文长度的方式参考资料 1 什么是大模型的上下文长度? 大模型的上下文长度(Context Length)是指在自然语言处理(NLP)的大型语言模型(Large…

自动的异地组网工具?

越来越多的企业和个人对远程访问和异地组网需求日益增加。为了满足这一需求,各种技术和服务也不断涌现。其中一项备受关注的技术就是自动的异地组网。本文将介绍这一技术的优势和特点。 【天联】组网的优势 天联组网技术以其卓越的性能和稳定性备受用户称赞。它的优…

数据结构:实验七:数据查找

一、 实验目的 (1)领会各种查找算法的过程和算法设计。 (2)掌握查找算法解决实际问题。 二、 实验要求 (1)编写一个程序exp8-1.cpp, 按提示输入10个任意的整形数据(无序)&…

数字旅游引领未来智慧之旅:科技应用深度重塑旅游生态,智慧服务全面升级打造极致高品质旅游体验

随着信息技术的飞速发展,数字旅游作为旅游业与科技融合的新兴业态,正以其独特的魅力和优势,引领着旅游业迈向智慧之旅的新时代。数字旅游不仅通过科技应用重塑了旅游生态,更通过智慧服务为游客带来了高品质的旅游体验。本文将深入…

从键入网址到网页显示,期间发生了什么?

从键入网址到网页显示,期间发生了什么? 孤单小弟【HTTP】真实地址查询【DNS】指南帮手【协议栈】可靠传输【TCP】远程定位【IP】两点传输【MAC】出口【网卡】送别者【交换机】出境大门【路由器】互相扒皮【服务器与客户端】相关问答 不少小伙伴在面试过程…

浅谈Agent AI智能体的未来

Agent AI智能体的未来非常广阔和潜力巨大。随着技术的发展和应用场景的不断拓展,我们可以期待以下几个方面的发展: 更加智能化:Agent AI智能体将会变得越来越智能,具备更强大的学习、推理和决策能力。它们可以通过大数据和机器学习…

java序列化和反序列化基础学习

一、前言 前文分析了java的反序列化的DNSURL利用链,但是对于java反序列化的一些过程不是很了解,这篇主要记录下学习java反序列基础知识 二、原理 概念 1、什么是序列化和反序列化 (1)Java序列化是指把Java对象转换为字节序列…

【C++】一篇文章带你深入了解stack、queue 和 priority_queue

目录 一、stack的介绍和使用1.1 stack的介绍1.2 stack的使用1.2.1.1 [stack对象的构造](https://legacy.cplusplus.com/reference/stack/stack/stack/)1.2.1.2 stack对象的容量操作1.2.1.2.1 [empty()函数](https://legacy.cplusplus.com/reference/stack/stack/empty/)1.2.1.2…

周三多《管理学原理》第3版/考研真题/章节练习题

普通高等教育“十一五”国家级规划教材《管理学原理》(第3版,周三多、陈传明、龙静编著,南京大学出版社)是我国高校广泛采用的管理学权威教材之一,也被众多高校(包括科研机构)指定为考研考博专业…

UDP/TCP

udp/tcp特征 udp: 无连接不可靠传输面向数据包全双工 tcp: 有连接可靠传输面向字节流全双工 解释: 有连接/无连接:发送消息时,对方是否必须要在线 比如我们聊天程序,我们给对方发送消息,是不管现…

C++笔试练习笔记 【2】: 数字统计 BC153 两个数组的交集 NC313 点击消除 AB5

文章目录 数字统计分析题目代码部分 两个数组的交集题目分析代码部分 点击消除题目解析代码部分 数字统计 分析题目 这个题涉及到两个知识点,就是枚举和数字的拆分 那么我的思路是进行遍历,拆分数字判断二的个数,枚举进行计数 那么数字的拆分…

C++协程库封装

操作系统&#xff1a;ubuntu20.04LTS 头文件&#xff1a;<ucontext.h> 什么是协程 协程可以看作轻量级线程&#xff0c;相比于线程&#xff0c;协程的调度完全由用户控制。可以理解为程序员可以暂停执行或恢复执行的函数。将每个线程看作是一个子程序&#xff0c;或者…

java同步大量数据到本地数据库方法总结

最近在做一个需求&#xff0c;就是我需要对三方接口调用的数据存放到本地的数据库里的数据表里面。那么一开始我就是直接一条一条save&#xff0c;结果发现耗时非常严重&#xff0c;后面我就进行了改进。就是分批次去同步或者分批次去异步。 现在我直接贴出我写的代码&#xf…