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


相关文章
|
15天前
|
供应链 算法 新能源
高比例可再生能源电力系统的调峰成本量化与分摊模型(Matlab代码实现)
高比例可再生能源电力系统的调峰成本量化与分摊模型(Matlab代码实现)
|
14天前
|
数据采集 算法 安全
多接地配电系统的基于PMU的系统状态估计(Matlab代码实现)
多接地配电系统的基于PMU的系统状态估计(Matlab代码实现)
100 0
|
14天前
|
数据采集 算法 前端开发
MATLAB|基于3D FDTD的微带线馈矩形天线分析[用于模拟超宽带脉冲通过线馈矩形天线的传播,以计算微带结构的回波损耗参数]
MATLAB|基于3D FDTD的微带线馈矩形天线分析[用于模拟超宽带脉冲通过线馈矩形天线的传播,以计算微带结构的回波损耗参数]
100 2
|
7天前
|
监控
基于MATLAB/Simulink的单机带负荷仿真系统搭建
使用MATLAB/Simulink平台搭建一个单机带负荷的电力系统仿真模型。该系统包括同步发电机、励磁系统、调速系统、变压器、输电线路以及不同类型的负荷模型。
153 5
|
10天前
|
机器学习/深度学习 算法 决策智能
MATLAB中双馈发电机与无刷双馈发电机低电压穿越的异同分析
MATLAB中双馈发电机与无刷双馈发电机低电压穿越的异同分析
|
15天前
|
机器学习/深度学习 算法 新能源
【无功优化】“碳中和”目标下电气互联系统有功-无功协同优化模型(Matlab代码实现)
【无功优化】“碳中和”目标下电气互联系统有功-无功协同优化模型(Matlab代码实现)
|
16天前
|
供应链 算法 安全
考虑电能交互的冷热电区域多微网系统双层多场景协同优化配置(Matlab代码实现)
考虑电能交互的冷热电区域多微网系统双层多场景协同优化配置(Matlab代码实现)
|
16天前
|
算法
【电力系统潮流】5节点系统潮流计算-牛拉法和PQ分解法(Matlab代代码实现)
【电力系统潮流】5节点系统潮流计算-牛拉法和PQ分解法(Matlab代代码实现)
151 3
|
14天前
|
人工智能 供应链 新能源
电动汽车参与运行备用的能力评估及其仿真分析(Matlab代码实现)
电动汽车参与运行备用的能力评估及其仿真分析(Matlab代码实现)
|
14天前
|
存储 供应链 新能源
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)

热门文章

最新文章