• 大小: 877B
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-09
  • 语言: Matlab
  • 标签: matlab  差分方程  

资源简介

matlab求解差分方程程序 %差分方程为: %y(n)-2y(n-1)+3y(n-2)=4u(n)-5u(n-1)+6u(n-2)-7u(n-3) %初始条件:x(-1)=1,x(-2)=-1,y(-1)=-1,y(-2)=1,求系统输出y(n) clear all; close all; clc; b=[4,-5,6,-7]; a=[1,-2,3]; x0=[1,-1,0]; y0=[-1,1]; xic=filtic(b,a,y0,x0)%filtic函数用于为filter函数选择初始条件 bxplus=1; axplus=[1,-1]; ayplus=conv(a,axplus)%计算多项式乘积的系数 byplus=conv(b,bxplus)+conv(xic,axplus) [R,P,K]=residuez(byplus,ayplus)%留数法求解z变换.R为留数,P为极点,K为直接项系数,b-分子,a-分母 Mp=abs(P) Ap=angle(P)*180/pi N=100; n=0:N-1; xn=ones(1,N); yn=filter(b,a,xn,xic); plot(n,yn)

资源截图

代码片段和文件信息

%差分方程为:
%y(n)-2y(n-1)+3y(n-2)=4u(n)-5u(n-1)+6u(n-2)-7u(n-3)
%初始条件:x(-1)=1x(-2)=-1y(-1)=-1y(-2)=1求系统输出y(n)
clear all;
close all;
clc;
b=[4-56-7];
a=[1-23];
x0=[1-10];
y0=[-11];
xic=filtic(bay0x0)%filtic函数用于为filter函数选择初始条件
bxplus=1;
axplus=[1-1];
ayplus=conv(aaxplus)%计算多项式乘积的系数
byplus=conv(bbxplus)+conv(xicaxplus)

评论

共有 条评论