在MATLAB中利用filter函数在给定输入和差分方程时求差分方程的解。给出如下差分方程: 10

用matlab解决数字信号系统的问题... 用matlab解决数字信号系统的问题 展开
 我来答
lfg_0804
2010-12-01
知道答主
回答量:8
采纳率:0%
帮助的人:3.8万
展开全部
在MATLAB中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。
实现差分方程
先从简单的说起:
filter([1,2],1,[1,2,3,4,5])
实现 y[k]=x[k]+2*x[k-1]
y[1]=x[1]+2*0=1%(x[1]之前状态都用0)
y[2]=x[2]+2*x[1]=2+2*1=4

a. 下面程序是用来实现h和x的卷积得,分别用了filter和conv函数,两者函数得出的结果一样。

h = [3 2 1 -2 1 0 -4 0 3]; % impulse response

x = [1 -2 3 -4 3 2 1]; % input sequence

y = conv(h,x);

n = 0:14;

subplot(2,1,1);

stem(n,y);

xlabel('Time index n'); ylabel('Amplitude');

title('Output Obtained by Convolution'); grid;

x1 = [x zeros(1,8)];

y1 = filter(h,1,x1);

subplot(2,1,2);

stem(n,y1);

xlabel('Time index n'); ylabel('Amplitude');

title('Output Generated by Filtering'); grid;

要实现下式的冲击响应和阶跃响应,可以分别采用三种方法。

y[n]+0.75y[n-1]+0.125y[n-2]=x[n]-x[n-1]。

b. 单位冲激响应:

(1)用filter函数

a1=[1,0.75,0.125];

b1=[1,-1];

n=0:20;

x1=[1 zeros(1,20)];

y1filter=filter(b1,a1,x1);

stem(n,y1filter);

title('y1filter');

xlabel('x');

ylabel('y');

(2)用conv函数

a1=[1,0.75,0.125];

b1=[1,-1];

x1=[1 zeros(1,10)];

[h]=impz(b1,a1,10);

y1conv=conv(h,x1);

n=0:19;

stem(n,y1conv,'filled')

(3)用impz函数

a1=[1,0.75,0.125];

b1=[1,-1];

impz(b1,a1,21);

c. 单位阶跃响应:

(1)用filter函数

a1=[1,0.75,0.125];

b1=[1,-1];

n=0:20;

x2=ones(1,21);

y1filter=filter(b1,a1,x2);

stem(n,y1filter);

title('y1filter_step');

xlabel('x');

ylabel('y');

(2)用conv函数

a1=[1,0.75,0.125];

b1=[1,-1];

x2=ones(1,21);

[h]=impz(b1,a1,20);

y1=conv(h,x2);

y1conv=y1(1:21); %为何y1conv要取y1中1:21的值,解释见

n1=0:20; %y2à单位阶跃响应à用conv函数中注释

stem(n1,y1conv,'filled');

title('y1conv');

xlabel('n');

ylabel('y1[n]');

(3)用impz函数

a=[1,0.75,0.125];

b=1;

impz(b,a)

即y=filter(p,d,x)用来实现差分方程,d表示差分方程输出y的系数,p表示输入x的系数,而x表示输入序列。输出结果长度数等于x的长度。

而y=conv(x,h)是用来实现卷级的,对x序列和h序列进行卷积,输出的结果个数等于x的长度与h的长度之和减去1。

y=impz(p,d,N)是用来实现冲击响应的,d和p的定义见filter,N表示冲击响应输出的序列个数
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
善良还清馨的福音8
2012-12-14
知道答主
回答量:20
采纳率:0%
帮助的人:8.2万
展开全部
将Y(z)=A(z)/B(z)的形式,Y=filter(A,B,X);X为单位冲激函数,求单位冲击函数的单位冲击响应,我也在学,不知道理解的对不对
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-11-23
展开全部
这真不清楚 我也在上课 哪位仁兄或者姐姐啊
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
花溪水寂
2010-12-04
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
都是什么答案么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
礼可芬D
2010-12-02 · TA获得超过183个赞
知道小有建树答主
回答量:94
采纳率:0%
帮助的人:34.1万
展开全部
楼下的回答的很好,学习了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式