MATLAB信号与系统分析(三)——连续信号与系统的复频域分析及MATLAB实现
一、系统的拉普拉斯变换和反变换
1、MATLAB函数
F=laplace(f) %求拉氏变换
f=ilaplace(F) %求拉氏反变换
2、例子

clear all;clc;close all
f=sym('exp(-t)*sin(a*t)*heaviside(t)')
F=laplace(f) %求拉氏变换
F=sym('s^2/(s^2+1)')
f=ilaplace(F) %求拉氏反变换
二、利用部分分式展开求解拉氏反变换(数学表达式):
1、MATLAB函数
[r,p,k]=residue(num,den)
%r为所得部分分式展开式的系数向量
%p为极点
%k为直流分量

2、例子

%shiyan3_2 用部分分式展开法求解拉氏反变换
clear all;clc;close all
num=[1 2];%分母多项式的系数向量,从高次幂往低次幂排列
den=[1 4 3 0];%分子多项式的系数向量,从高次幂往低次幂排列,不要忘记该补零的补零值
[r,p,k]=residue(num,den); %用esidue函数进行展开%
f=0;
syms t;
for i=1:length(p)
f=f+r(i)*exp(p(i)*t);
end
f
三、 系统的零极点分布及其稳定性
1、稳定性的条件,系统的极点位于零极点图的左半平面。
2、利用matlab计算h(s)的零极点并分析系统稳定性。
3、画极点的例子

%shiyan3_3 求H(s)=(s-1)/(s^2+2s+2)的零极点及其分布图 %采用roots和plot函数
clear all ; clc; close all;
b=[1,-1];
a=[1 2 2];
zs=roots(b);ps=roots(a);
figure(1)
plot(real(zs),imag(zs),'o',real(ps),imag(ps),'kx','markersize',12);
axis([-2,2,-2,2]);grid on;legend('零点','极点') %利用pole和zero函数
num=[1,-1];
den=[1,2,2];
H = tf(num,den);%采用tf函数获得LTI系统模型sys
zs=zero(H);ps=pole(H);
figure(2)
plot(real(zs),imag(zs),'o',real(ps),imag(ps),'kx','markersize',12);
axis([-2,2,-2,2]);grid on;legend('零点','极点') %采用pzmap函数
num=[1,-1];
den=[1,2,2];
H = tf(num,den);%采用tf函数获得LTI系统模型sys
figure(3)
pzmap(H); %采用tf2zp和zplane函数
A=[1,2,2];
B=[1,-1];
figure(4)
[z,p]=tf2zp(B,A)
zplane(z,p)
4、计算h(s)的零极点并分析系统稳定性


四、系统的零极点分布与系统冲激响应时域特性(P294)
1、例子

clear all;clc;close all; a=[1,1,16.25];
b=[1];
impulse(b,a,5)
五、连续系统的频率响应
1、MATLAB提供了专门对连续系统频率响应H(jw)进行分析的函数freqs(),该函数可以求出系统频率响应的数值解,并可绘出系统的幅频和相频响应曲线

2、例子:

clear all;clc;close all; b=[1];
a=[0.08 0.4 1];
[h,w]=freqs(b,a,100)
h1=abs(h); %求幅频
h2=angle(h); %求相频
figure(1)
subplot(211);
plot(w,h1);grid,xlabel('角频率(W)');ylabel('幅度');title('H(jw)的幅频特性');
subplot(212);
plot(w,h2*180/pi);grid,xlabel('角频率(w)');ylabel('相位(度)');title('H(jw)的相频特性');
figure(2)
freqs(b,a)
3、由连续系统零极点分布分析系统的频率特性

由连续系统零极点分布求系统的频率特性的步骤:
定义包含系统所有零点&极点的行向量z&列向量y
定义绘制系统频率响应曲线的频率起始值f1&终止值f2、频率取样间隔k(频率的变化步长),并产生频率等分点向量f;
求出系统所有零点&极点到这些等分点的距离;
l求出系统所有零点&极点到这些等分点的矢量的相角;
根据(1)式&(2)式求出f1到f2频率范围内各频率等分点的 & 的值
绘制f1到f2频率范围内的幅频响应&相频响应曲线
function pz_plxy(f1,f2,k,p,z) %根据系统零极点分布绘制系统频率响应曲线程序
%f1、f2:绘制频率响应曲线的频率范围(即频率起始和终止点,单位为赫兹)
%p、z:系统函数极点和零点位置行向量
%k:绘制频率响应曲线的频率取样间隔 p=p'; %变成列向量
z=z'; f=f1:k:f2; %定义绘制系统频率响应曲线的频率范围
w=f*(2*pi);
y=i*w; %虚数轴上 n=length(p);
m=length(z); if n==0 %如果系统无极点
yq=ones(m,1)*y;
vq=yq-z*ones(1,length(w));
bj=abs(vq);
bw=angle(vq);
ai=1;
aw=0;
elseif m==0 %如果系统无零点
yp=ones(n,1)*y;
vp=yp-p*ones(1,length(w));
aw=angle(vp);
ai=abs(vp);
bj=1;
bw=0;
else
yp=ones(n,1)*y;
yq=ones(m,1)*y;
vp=yp-p*ones(1,length(w));
vq=yq-z*ones(1,length(w));
ai=abs(vp);
aw=angle(vp);
bj=abs(vq);
bw=angle(vq)
end figure(1)
Hw=prod(bj,1)./prod(ai,1);
plot(f,Hw);
title(' 系统幅频响应曲线')
xlabel(' 频率w(单位:赫兹)')
ylabel('H(jw)') figure(2)
Anglew=sum(bw,1)-sum(aw,1);
plot(f,Anglew);
title(' 系统相频响应曲线')
xlabel(' 频率w(单位:rad)')
ylabel('angle(jw)')
MATLAB信号与系统分析(三)——连续信号与系统的复频域分析及MATLAB实现的更多相关文章
- MATLAB信号与系统分析(四)——离散信号与系统的复频域分析及MATLAB实现
		
一.系统的z变换和反变换 1.利用部分分式展开求解逆Z变换: 2.例子 3.Z变换的MATLAB函数 clear all f=sym('cos(a*k)'); F=ztrans(f) F=sym('z ...
 - MATLAB信号与系统分析(一)——连续时间信号与系统的时域分析
		
一.连续时间信号的表示: 1.向量表示法: 在MATLAB中,是用连续信号在等时间间隔点的样值来近似表示连续信号,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号. 对于连续时间信号f( ...
 - MATLAB信号与系统分析(二)——离散时间信号与系统的时域分析
		
一.离散信号的表示 1.一个离散信号需要用两个向量来表示: (1)离散信号的幅值 (2)离散信号的位置信息 2.用MATLAB实现离散信号的可视化 (1)不能利用符号运算来表示 (2)绘制离散信号一般 ...
 - MATLAB信号与系统分析(五)——连续时间信号的频谱分析
		
一.实验目的: 1.掌握傅立叶级数(FS),学会分析连续时间周期信号的频谱分析及MATLAB实现: 2.掌握傅立叶变换(FT),了解傅立叶变换的性质以及MATLAB实现. 二.利用符号运算求傅里叶级数 ...
 - Matlab 信号与系统课设 - BiRadio仿真电台
		
BiRadio Matlab 信号与系统课设 - BiRadio仿真电台 Author : Benjamin142857 Date : 2018-12 Video : BiliBili Github ...
 - 信号与系统实验序章0——MATLAB基础命令入门
		
本次开启新的系列,关于用Matlab实现常见信号和函数的生成和变换. 同时如果没有MATLAB基础,那么可以跟着本文一步一步学习Matlab的相关操作,本文旨在记录在信号与系统课程中MATLAB的学习 ...
 - 车牌识别LPR(三)-- LPR系统整体结构
		
第三篇:系统的整体架构 LPR系统大体上可由图像采集系统,图像处理系统,数据库管理系统三个子系统组成.它综合了通讯.信息.控制.传感.计算机等各种先进技术,构成一个智能电子系统. 图像采集系统:图像采 ...
 - MATLAB中多行注释的三种方法
		
MATLAB中多行注释的三种方法 A. %{ 若干语句 %} B. 多行注释: 选中要注释的若干语句, 编辑器菜单Text->Comment, 或者快捷键Ctrl+R 取消注释: 选中要取消注释 ...
 - 第三章——使用系统函数、存储过程和DBCC SQLPERF命令来监控SQLServer(3)
		
原文:第三章--使用系统函数.存储过程和DBCC SQLPERF命令来监控SQLServer(3) 本文为这个系列最后一篇.将是如何使用DBCC命令来监控SQLServer日志空间的使用情况. 前言: ...
 
随机推荐
- IOS开发/iphone开发多线程
			
有时候可能有很多功能要同时实现,例如每隔多长时间就会检测程序网络连接,又或者有时候需要从服务器下载一个不小的文件,如果用单线程几乎是不可想的事情,程序将会卡的无法使用,用到多线程和不用多线程,给用户的 ...
 - UICollectionViewController用法
			
在iOS 6 发布前,开发人员习惯使用UITableView来展示几乎所有类型的数据集合.ios 6 为 IOS 引入了全新的控制器,用来显示数据集合,集合视图控制器是与表视图控制器类似的全新UI框架 ...
 - emmet-vim
			
最近啊,我投奔了网页的开发,看了一本<head first HTML and CSS>的书,感觉非常不错,然后又配置了一些vim里面用到的插件,现在我把学习到的东西记录下来! 首先,我不会 ...
 - webexam项目杂记
			
sql 语句 数据库 本身 有数据类型的区分,对于mysql的字符串默认的用单引号''来表示,因此,整个sql 语句就要用双引号来括. 如: $sql = "SELECT * FROM us ...
 - vsftpd的安装
			
好像linux下的服务的配置和文件分布都差不多, 如httpd, vsftpd, named. 都是: 在/etc/???下面进行配置???.conf, 然后在/var/???放置实际要处理的文件/目 ...
 - centos6.4.yum-lamp环境设置
			
首先防火墙开启mysql:3306 apache 80 and 81端口: vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tc ...
 - PHP:  Local 和 Global 作用域
			
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问. 函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问. 下面的例子测试了带有局部和全局作用域的变量: 在上例中,有 ...
 - 获取并设置ListView高度的方法
			
01 public void setListViewHeightBasedOnChildren(ListView listView) { 02 ListAdapter listAdapter ...
 - [Effective JavaScript 笔记]第29条:避免使用非标准的栈检查属性
			
许多js环境都提供检查调用栈的功能.调用栈是指当前正在执行的活动函数链.在某些旧的宿主环境中,每个arguments对象含有两个额外的属性:arguments.callee和arguments.cal ...
 - 学习windows内核书籍推荐  ----------转自http://tieshow.iteye.com/blog/1565926
			
虽然,多年java,正在java,看样子还得继续java.(IT小城,还是整java随意点)应用程序 运行于操作系统之上, 晓操作系统,方更晓应用程序. 主看windows,因为可玩性高,闭源才 ...