dongchao1207 发表于 2009-5-26 23:40

求助:工具箱问题

??? Undefined function or method 'dir2cas' for input
arguments of type 'double'.
程序写好后出现这个问题,是因为我的MATLAB没装相应的工具箱吗?如果是告诉我是哪个工具箱,怎么安装,谢谢:loveliness:

friendchj 发表于 2009-5-26 23:54

在网上找到了dir2cas的源码,感谢原作者
function =dir2cas(b,a);
%变直接形式为级联形式
%=dir2cas(b,a)
%b0=增益系数
%B=包含各因子系数bk的K行3列矩阵
%A=包含各因子系数ak的K行3列矩阵
%a=直接型分子多项式系数
%b=直接型分母多项式系数

%计算增益系数
b0=b(1);b=b/b0;
a0=a(1);a=a/a0;
b0=b0/a0;
%将分子、分母多项式系数的长度补齐进行计算
M=length(b);N=length(a);
if N>M
b=;
elseif M>N
a=;N=M;
else
NM=0;
end
%级联型系数矩阵初始化
K=floor(N/2);B=zeros(K,3);A=zeros(K,3);
if K*2==N
b=;
a=;
end
%根据多项式系数利用函数roots求出所有的根
%利用函数cplxpair进行按实部从小到大的成对排序
broots=cplxpair(roots(b));
aroots=cplxpair(roots(a));
%取出复共轭对的根变换成多项式系数即为所求
for i=1:2:2*K
Brow=broots(i:1:i+1,:);
Brow=real(poly(Brow));
B(fix(i+1)/2,:)=Brow;
Arow=aroots(i:1:i+1,:);
Arow=real(poly(Arow));
A(fix(i+1)/2,:)=Arow;
end

dongchao1207 发表于 2009-5-30 23:20

回复 沙发 friendchj 的帖子

谢谢主任:@D 我刚接触MATLAB源码怎么用还是不懂:@L 能再指点下吧:loveliness:

1011820111 发表于 2009-5-30 23:31

放在matlab的work目录下就可以了,.M文件都可以的,这样就可以直接调用了

dongchao1207 发表于 2009-5-30 23:34

回复 地板 1011820111 的帖子

:@L 麻烦问下怎么放。。。是编辑成。m文件放哪里就可以了吗?

dongchao1207 发表于 2009-5-30 23:38

回复 地板 1011820111 的帖子

我会了,谢谢两位了:kiss:

ChaChing 发表于 2009-5-31 12:25

回复 板凳 dongchao1207 的帖子

看看参考下
http://forum.vibunion.com/forum/thread-75501-1-1.html
页: [1]
查看完整版本: 求助:工具箱问题