cohiba1966 发表于 2007-8-9 09:14

请教一下filter函数

由于工作原因,要搞清楚filter函数的内容,现有几个问题请教一下各位。
  1、滤波函数filter的形式为=filter(B,A,X), 从各种资料来看,他的路径应该是\toolbox\comm\comm\@gf\filter.m, 但是在命令窗口键入edit filter时,得到的不是这个函数,好像是一个入口函数,请问两者是什么关系?filter函数是怎样被调用的?2、filter函数中,flag ,~isa,B.m,B.prim_poly都没有定义或赋值,他们都是什么意义?3、 我如何监视函数中的中间变量的值呢?谢谢大家!

江湖夜雨 发表于 2007-8-9 09:31

回复 #1 cohiba1966 的帖子

用which filter就可以找到他的路径。另外不明白你所说的调用是什么意思?
是在你编写的主程序里调用,还是你把这个函数找出来,打开?

我理解的调用就是能使用这个函数,这个函数的使用有这么几种形式
y = filter(b,a,X)
= filter(b,a,X)
= filter(b,a,X,zi)
y = filter(b,a,X,zi,dim)
[...] = filter(b,a,X,[],dim)

我不明白为什么要研究这个函数为什么这么编写呢?是不是工作需要啊,需要另外编写在程序上改进呢?

cohiba1966 发表于 2007-8-9 09:39

1、用which filter,得到的路径是toolbox\matlab\datafun\filter.m, 可是内容是
if nargout == 0
builtin('filter', varargin{:});
else
= builtin('filter', varargin{:});
end
应该不是我找的函数。
2、之所以要研究这个函数,适应为我要转成C语言。

江湖夜雨 发表于 2007-8-9 10:07

回复 #3 cohiba1966 的帖子

在help里面显示有很多,在不同的工具箱里有不同的用处,你可以分别看看啊,找最合适自己用的

cohiba1966 发表于 2007-8-9 10:11

路径找到了呀 就是我一楼所说的toolbox\comm\comm\@gf\filter.m,可是他与命令窗口中edit filter 的filter函数有什么关系呢?

江湖夜雨 发表于 2007-8-9 10:19

回复 #5 cohiba1966 的帖子

我这里输入edit filter出现的是一个注释文件,应该是对filter几种用法的简单解释

cohiba1966 发表于 2007-8-9 10:52

有没有什么好办法将filter转成C呢,我用mcc -m filter.m 不太好用. 另外如何调试此函数呢(我想知道中间变量的值,比如flag)?谢谢

江湖夜雨 发表于 2007-8-9 11:03

:handshake 这我就不明白了,期待高手回答
页: [1]
查看完整版本: 请教一下filter函数