怎么用matlab求差分

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 15:11:46

怎么用matlab求差分
怎么用matlab求差分

怎么用matlab求差分
调用filter函数解差分方程.
1)yn=filter(B,A,xn)是计算输入向量xn的零状态响应输出信号yn,yn与xn长度相等,
其中B=[b0,b1,……bn],A=[a0,a1,……an].其中a0=1.
2)yn=filter(B,A,xn,xi)是计算全响应的函数.xi是等效初始条件的输入序列,xi能由初始条件确定.此时需要调用filtic函数.xi=filtic(B,A,ys,xs).其中ys,xs是初始条件向量.
其中ys=[y(-1),y(-2)……y(-N)],xs=[x(-1),x(-2),……x(-M)]
另外若xn为因果序列xs=0可缺省.
举个例子若y(n)-0.8y(n-1)=x(n),初始条件y(-1)=1.
a=0.8,ys=1;
xn=[1,zeros(1,30)];
B=1,A=[1,-a];
xi=filtic(B,A,ys);
yn=filter(B,A,xn,xi);
%以下是解出来的yn图像
n=0:length(yn)-1;
stem(n,yn,'.');