iloveyinuo 发表于 2010-4-20 09:29

求助 matlab中函数 matcom编译

在用matcom编译matlab的chebwin()函数时,
nn=280;
wn=;%1400
nn=nn+1;
window=chebwin(nn,200);

有这样的报错
Error D:\Program Files\MATLAB71\toolbox\signal\signal\chebwin.m 30: 'w = chebwinx(n,r);'
'chebwinx' was not found. Please debug the code.

我看了看
在调用的chebwin.m文件中最后一行程序是'w = chebwinx(n,r);'
我在matlab里试了一下打开chebwinx.m或者是用help chebwinx 都说没有找到。



请问这是为什么呢?如果没有的话matlab的脚本文件里是怎么编译通过的呢?
同样的还有一个‘xlate’也是not found
初次使用matcom,碰到很多头疼的问题,请大侠们指教

iloveyinuo 发表于 2010-4-20 09:49

chebwin.m的源文件是下面这样的。他的最后一行是w = chebwinx(n,r);我单步运行后,通过这一步,感觉像是一个赋值语句,本来是空值的w得到了一个281*1的赋值。可是并没有chebwinx.m这个文件。
function w = chebwin(n_est, r)
%CHEBWIN Chebyshev window.
%   CHEBWIN(N) returns an N-point Chebyshev window in a column vector.
%
%   CHEBWIN(N,R) returns the N-point Chebyshev window with R decibels of
%   relative sidelobe attenuation. If omitted, R is set to 100 decibels.
%
%   See also GAUSSWIN, KAISER, TUKEYWIN, WINDOW.

%   Author: James Montanaro
%   Reference: E. Brigham, "The Fast Fourier Transform and its Applications"

%   Copyright 1988-2005 The MathWorks, Inc.
%   $Revision: 1.19.4.1 $$Date: 2005/06/30 17:36:33 $

error(nargchk(1,2,nargin));

% Default value for R parameter.
if nargin < 2 || isempty(r),
    r = 100.0;
end

= check_order(n_est);
if trivialwin, return, end;

if r < 0,
    error('Attenuation must be specified as a positive number.');
end

w = chebwinx(n,r);

% chebwin.m

iloveyinuo 发表于 2010-4-20 11:03

我在matlab的文件夹下找到了这样的一个文件是:chebwinx.mexw32
在网上搜索说是matlab与c混合编程获得的文件。
请问这个在matcom中怎么用呢?我把他放在了编译的文件夹下,还是出现no found的提示

[ 本帖最后由 iloveyinuo 于 2010-4-20 11:04 编辑 ]

ChaChing 发表于 2010-4-21 00:40

我找了下, 有此函数(2009a)
>> which -all chebwinx
C:\Program Files\MATLAB\R2009a\toolbox\signal\signal\private\chebwinx.mexw32% Private to signal
>>
页: [1]
查看完整版本: 求助 matlab中函数 matcom编译