MATLAB连续LTI系统的时域分析(十)

简介: MATLAB连续LTI系统的时域分析(十)

1、实验目的:

1)掌握利用MATLAB对系统进行时域分析的方法

2)掌握连续时间系统零输入响应的求解方法

3)掌握连续时间系统零状态响应、冲激响应和阶跃响应的求解方法

4)掌握利用计算机进行卷积积分和卷积和计算的方法

2、实验内容

2-1)、已知某系统可以由如下微分方程描述y′′(t)+ y′(t)+6y(t)=x(t)利用MATLAB绘出该系统冲激响应和阶跃响应的时域波形。(注:题中时域范围可取[0 10],参考函数tfimpulsestep

1. a = [1 1 6]; b = [1];      %微分方程左右两端多项式的系数矩阵
2. time = 0:0.01:10;          %时域范围[0 10]
3. sys = tf(b,a);
4. y1 = impulse(sys,time);    %系统的冲激响应
5. y2 = step(sys,time);       %系统的阶跃响应
6. subplot(1,2,1), plot(time,y1), xlabel('时间t'), title('冲激响应');
7. subplot(1,2,2), plot(time,y2), xlabel('时间t'), title('阶跃响应');

2-2)、编程实现如下图所示的两个波形的卷积,并绘制出卷积后的波形。(要求:先构建两信号卷积函数,而后通过调用该函数实现做题)

bffcfbce2636876e3122d8a78a1b6d39_68194aac7038422c9f5cc753110f943f.png

编写的卷积函数

1. function [t,x] = sss_conv(x1,x2,t1,t2,dt)
2. %文件名与函数名对应
3. %自写的卷积函数
4. x = conv(x1,x2)*dt;
5. t0 = t1(1) + t2(1);
6. L = length(x1) + length(x2)-2;
7. t = t0:dt:(t0+L*dt);
8. end

功能实现

1. dt = 0.01;
2. x1 = -1 : dt : 1; 
3. f1t = 2*(heaviside(x1+1) - heaviside(x1-1));
4. % plot(x1,f1t);
5. x2 = -2 : dt : 2; 
6. f2t = heaviside(x2+2) - heaviside(x2-2);
7. % plot(x2,f2t);
8. [t, f] = My_conv(f1t, f2t, x1, x2, dt);    %调用卷积函数
9. plot(t, f); 
10. axis([-4 4 -1 5]);

2-3)、已知系统的微分方程为:,x(t)为e-tu(t),用数值法求零状态响应y(t)并绘图。(注:题中时域范围可取[0 10]

8e10e7d067ea5be934dd75355b686a1e_b22ad8a7837c4f94bd03728b798a2de7.png

1. a = [1 4 4]; b = [1 3]; dt = 0.1; t = 0:dt:10; % 微分方程左侧系数向量a,微分方程右侧系数向量b
2. [r,p] = residue(b,a); % 用residue函数(参见12.1.2节)求出其特征根p1、p2和相应的留数r1、r2
3. 
4. h = r(1)*exp(p(1)*t)+r(2)*exp(p(2)*t);  %叠加各根分量
5. subplot(1,2,1), plot(t,h), title('冲激响应');
6. x = exp(-t);    % t已经大于0了
7. y = conv(x,h)*dt;   % 求x和h的卷积,长度为2*length(t)-1
8. subplot(1,2,2), plot(t,y(1:length(t))), title('零状态响应');

2-4)、分别用数值法和符号法求齐次微分方程在给定初始条件下的零输入响应波形,y′′(t)+2y(t)=0,y(0_)=3,y′(0_)=4。(注:题中时域范围可取[0 10],以实现方法作为图形标题名称)

1. % (1)数值法
2. a = [1 0 2];            % 方程左端系数向量
3. n=length(a)-1;          % 微分方程的阶数(即根的数量)
4. Y0 = [3 4];             % 初始条件向量
5. p=roots(a);            % 求特征方程的根
6. V=rot90(vander(p));     % 生成范德蒙特矩阵
7. C= V\Y0';              % 求对应于各特征根的系数   左除
8. dt = 0.1; tf = 10;      % 时域取值范围[0 10]
9. t = 0:dt:tf;            % 时域取值范围[0 10]
10. y = zeros(1,length(t));
11. for k=1:n  y = y + C(k)*exp(p(k)*t); end       % 将各分量叠加,得到零输入响应的通式
12. subplot(121);
13. plot(t, y), xlabel('t'), ylabel('real(y)');    %零输入响应的实部随时间变化的趋势
14. title('数值法');
15. 
16. % 符号法
17. eq='D2y+2*y=0'; con='y(0)=3, Dy(0)=4';
18. y = dsolve(eq, con); y=simplify(y);
19. subplot(122);
20. ezplot(y, t);       %一定要加参数t,限制时间的范围,保证波形正确
21. axis([0 10 -5 5]);  % 限制xy轴范围
22. title('符号法');

2-5)、求系统,y′(0+)=-1;y(0+)=0的全响应。(注:题中时域范围可取[0 10],参考函数tf2sslsim

6471c43c0654ad95c2f88441836ed3b5_ed8f1e22a18a44179489046a4e94811b.png

1. clear
2. b = [1]; a = [1 0 1];
3. t = 0:0.1:10; x = cos(t);
4. sys1 = tf(b,a);      %系统函数模型
5. y1 = lsim(sys1,x,t); %零状态响应
6. % subplot(1,2,1),plot(t,y1);
7. xlabel('时间');title('零状态响应');
8. [A B C D] = tf2ss(b,a); %系统函数模型转化成状态空间模型参数
9. sys2 = ss(A,B,C,D) ;zi = [-1 0]; %产生状态空间模型和初始状态矩阵
10. y2 = lsim(sys2,x,t,zi);          %全响应
11. % subplot(1,2,2);
12. plot(t,y2);
13. xlabel('时间t');title('全响应');

8f6d2696a91433b9be76031fe2468ff4_33c9d7e5df7145e393af5098e6cc6181.jpeg


相关文章
|
12天前
|
算法 Perl
【光波电子学】基于MATLAB的多模光纤模场分布的仿真分析
本文介绍了基于MATLAB的多模光纤模场分布仿真分析,详细阐述了多模光纤的概念、实现方法、仿真技术,并利用模式耦合方程分析方法,通过理论和仿真模型设计,展示了不同模式下的光场分布及其受光纤参数影响的分析结果。
15 4
【光波电子学】基于MATLAB的多模光纤模场分布的仿真分析
|
1天前
|
算法 数据安全/隐私保护
基于LS算法的OFDM+QPSK系统信道估计均衡matlab性能仿真
基于MATLAB 2022a的仿真展示了OFDM+QPSK系统中最小二乘(LS)算法的信道估计与均衡效果。OFDM利用多个低速率子载波提高频谱效率,通过循环前缀克服多径衰落。LS算法依据导频符号估计信道参数,进而设计均衡器以恢复数据符号。核心程序实现了OFDM信号处理流程,包括加性高斯白噪声的加入、保护间隔去除、快速傅立叶变换及信道估计与均衡等步骤,并最终计算误码率,验证了算法的有效性。
8 2
|
7天前
|
算法 测试技术 SoC
基于直流潮流的IEEE30电力系统停电分布及自组织临界性分析matlab仿真
本研究提出一种基于直流潮流的算法来分析电力系统的停电分布及自组织临界性。算法迭代更新参数并模拟线路随机断开,运用粒子群优化计算关键值,并评估线路接近容量极限的概率。通过改变参数β和μ,分析不同线路可靠性和容量增加方式下的停电分布,并探索系统趋向临界状态的过程及停电概率分布。该方法基于IEEE30测试系统,利用MATLAB2022a实现,简化处理有功功率流动,适用于评估电力系统稳定性及预防大规模停电事故。
|
10天前
|
存储 算法 Serverless
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
|
12天前
|
机器学习/深度学习 监控 算法
基于深度学习网络的人员行为视频检测系统matlab仿真,带GUI界面
本仿真展示了基于GoogLeNet的人员行为检测系统在Matlab 2022a上的实现效果,无水印。GoogLeNet采用创新的Inception模块,高效地提取视频中人员行为特征并进行分类。核心程序循环读取视频帧,每十帧执行一次分类,最终输出最频繁的行为类别如“乐队”、“乒乓球”等。此技术适用于智能监控等多个领域。
28 4
|
5天前
|
机器学习/深度学习
基于IEEE30电网系统的停电规模评价系统matlab仿真,对比IEEE118,输出停电规模,潮流分布和负载率等
本课题针对IEEE标准节点系统,通过移除特定线路模拟故障,计算其余线路的有功潮流分布系数及负载率变化。采用MATLAB2022a进行仿真,通过潮流计算确定电网运行状态,并以负载率评估负载能力。IEEE30与IEEE118系统对比显示,前者在故障下易过载,后者则因更好的拓扑结构拥有更高的负载裕度。
|
5天前
|
算法
蜂窝网络下行链路的覆盖率和速率性能matlab仿真分析
此程序在MATLAB2022a环境下运行,基于随机几何模型评估蜂窝网络的下行链路覆盖率和速率性能。通过模拟不同场景下的基站(BS)配置与噪声情况,计算并绘制了各种条件下的信号干扰加噪声比(SINR)阈值与覆盖率概率的关系图。结果显示,在考虑噪声和不同基站分布模型时,覆盖率有显著差异,提出的随机模型相较于传统网格模型更为保守但也更加贴合实际基站的分布情况。
|
6天前
|
运维 算法 C++
MATLAB - 系统辨识 - 在线估计 - Online Estimation
MATLAB - 系统辨识 - 在线估计 - Online Estimation
16 0
|
14天前
|
算法
基于matlab的风力发电系统建模与详细性能仿真分析
本研究介绍风力发电原理与系统模型,使用MATLAB 2022a进行性能仿真。风力通过风轮转化为电能,涉及贝努利定理及叶素理论。仿真展示了风速与输出功率间的关系,包括风电利用系数、切入切出控制与MPPT控制效果。当风速超过25m/s时,系统自动停机保护设备。MPPT算法确保了在变化风速下获得最大功率。
|
12天前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
31 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码

热门文章

最新文章