- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信号系统分析MATLAB实现
第五讲 信号系统分析的MATLAB实现 基于MATLAB的离散时间系统分析 基于MATLAB的连续时间系统分析 一、离散时间信号的表示 表示离散序列并将其可视化时: 用向量表示,无法用符号运算表示 无法表示无限序列 绘制图形时,用stem指令 单位脉冲序列 dwxulie(-5,5,0) 单位阶跃序列 jyxulie(-3,8,0) 二、序列的运算 1、信号加 数学描述: MATLAB描述:x=x1+x2 注意:x1和x2应该具有相同的长度,位置 对应,才能相加,否则,需要先通过函数补零后再相加 stem(k2,f2),axis([-3,3,-2.5,2.5]) [f,k]=lsxj(f1,f2,k1,k2) f = -2 0 1 2 2 k = -2 -1 0 1 2 2、离散序列的卷积MATLAB实现 三、差分方程 filter y = filter(b,a,x) a(1)*y(n) = b(1)*x(n) + b(2)*x(n-1) + ... + b(nb+1)*x(n-nb) - a(2)*y(n-1) - ... - a(na+1)*y(n-na) 例:y(n)-y(n-1)+0.9y(n-2)=x(n) a.计算并画出n=-20,……,100的脉冲响应 b.计算并画出n=-20…,100的单位阶跃响应 c.这个系统是稳定的吗? b=[1];a=[1,-1,0.9]; s=dwxulie(-20,120,0);n=[-20:120]; s=dwxulie(-20,120,0);n=[-20:120]; h=filter(b,a,s); subplot(2,1,1);stem(n,h); title(impulse response);xlabel(n);ylabel(h(n)) 四、Z变换 Z反变换 residuez [R,P,C]=residuez(b,a) 五、从差分方程表示系统函数 roots-可以对分子分母求零点、极点 zplane(b,a)-在已知分子行向量b和分母 行向量a下画出零点和极点 [H,W]=freqz(b,a,N)-b是由 分子多项式系数构成的数组,a是由 分母多项式系数构成的数组,h是返回的复数形式的频率响应数组,w是由对应于h的各个数字角频率构成的数组。 六、Fourier分析 abs-模 angle-相角 freqz-知道z变换,求频率特性。 freqs-知道s变换,求频率特性。 fft-快速离散Fourier变换 fft2-二维快速离散Fourier变换 fftn-高维快速离散Fourier变换 ifft-快速离散Fourier逆变换 ifft2-二维快速离散Fourier逆变换 Signal Processing Toolbox Filter Design Analysis Tool (FDATool) Signal Processing Tool(SPTool) abs 功能:求绝对值(幅值) 调用格式:y=abs(x) angle 功能:求相角 调用格式:p=angle(h) freqs 功能:模拟滤波器的频率响应 调用格式 h=freqs(b,a,w) [h,w]=freqs(b,a) [h,w]=freqs(b,a,n) * * X(n)={1,2,-1,3,2,4,-1} k=-3:3;f=[1,2,-1,3,2,4,-1]; stem(k,f),axis([-4,4,-1.5,4.5]) =1 n+n0=0 =0 其它 function dwxulie(k1,k2,k0) k=k1:k2; n=length(k); f=zeros(1,n); f(1,-k0-k1+1)=1; stem(k,f) axis([k1,k2,0,1.5]) title(‘单位序列’) function jyxulie(k1,k2,k0) k=k1:-k0-1 kk=-k0:k2; n=length(k); nn=length(kk) u=zeros(1,n); uu=ones(1,nn) stem(kk,uu) hold on stem(k,u) hold off title(‘单位阶跃序列’) axis([k1,k2,0,1.5]) function[f,k]=lsxj(f1,f2,k1,k2) k=min(min(k1),min(k2)):max(ma
文档评论(0)