利用filter()求解差分方程

函数说明(建议参考官方文档)

  • 利用matlab求解差分方程的解,调用函数filter
y = filter(p,d,x)
[y,sf] = filter(p,d,x,si)
  • 第一种形式假定在零初始条件下,用系数向量p和d描述的系统处理输入向量x,从而得到输出向量y
  • 第二种形式允许在向量si中包含内部向量si[n]的非零初始条件

y [ n ] + 0.6 y [ n − 1 ] − 0.5 y [ n − 2 ] − 0.6 y [ n − 3 ] = 0.9 x [ n ] − 0.5 x [ n − 1 ] + 0.4 x [ n − 2 ] + 0.3 x [ n − 3 ] 当 输 入 序 列 x [ n ] = δ [ n ] 时 的 输 出 结 果 为 y [ n ] , n ∈ [ 0 , 50 ] y[n] + 0.6y[n-1] - 0.5y[n-2] - 0.6y[n-3] = \\ 0.9x[n] - 0.5x[n-1] + 0.4x[n-2] + 0.3x[n-3]\\ 当输入序列 x[n]=\delta[n]时的输出结果为y[n],n\in[0,50] y[n]+0.6y[n1]0.5y[n2]0.6y[n3]=0.9x[n]0.5x[n1]+0.4x[n2]+0.3x[n3]x[n]=δ[n]y[n],n[0,50]

N = 51;
a = [0.9 -0.5 0.4 0.3];
b = [1 0.6 -0.5 -0.6];
x = [1 zeros(1,N-1)];
k = 0:1:N-1;
y = filter(b,a,x);
stem(k,y);
xlabel('n');
ylabel('幅度');

在这里插入图片描述

代码来自南京邮电大学《数字信号处理》,仅做学习使用

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值