声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

楼主: zhangnan3509

[HHT] 《EMD程序中文详解及应用例子》精华贴的专题讨论贴

  [复制链接]
发表于 2009-2-16 12:13 | 显示全部楼层

我的问题

1.要emd 必须有时频工具箱,这个工具箱咋用啊?
2.我运行了s = randn(1,512);
imf = emd(s);出现下面的问题:
??? Undefined function or variable 'isvector'.

Error in ==> C:\MATLAB6p5\work\emd.m (init)
On line 744  ==> if ~isvector(x)

Error in ==> C:\MATLAB6p5\work\emd.m
On line 160  ==> [x,t,sd,sd2,tol,MODE_COMPLEX,ndirs,display_sifting,sdt,sd2t,r,imf,k,nbit,NbIt,MAXITERATIONS,FIXE,FIXE_H,MAXMODES,INTERP,mask] = init(varargin{:});
咋回事呢?
2个都是非常弱的问题,但我真的不知道:(
回复 支持 反对
分享到:

使用道具 举报

发表于 2009-2-16 16:12 | 显示全部楼层

回复 16楼 gsmaohj 的帖子

matlab6.5版本 help isvector    not found
所以没有用的,matlab7.1可以运行
发表于 2009-2-16 17:11 | 显示全部楼层

回复 17楼 chao0922 的帖子

好的 谢谢 我换个版本再试试。
第一个问题有谁知道啊
发表于 2009-3-20 09:28 | 显示全部楼层
感谢楼主的辛苦付出:@)
发表于 2010-3-2 10:13 | 显示全部楼层
??? Input argument "imf" is undefined.

Error in ==> hhspectrum at 22
  t=1:size(imf,2);
这个是怎么回事啊,谢谢
发表于 2010-3-2 10:28 | 显示全部楼层
我运行的时候出现
??? Error: File: toimage.m Line: 59 Column: 1
This statement is not inside any function.
(It follows the END that terminates the definition of the function "toimage".)

Error in ==> ex3 at 29
[E, tt1] = toimage(A,fa,tt,length(tt));
还请各位指点,非常感谢

评分

1

查看全部评分

发表于 2010-3-17 15:31 | 显示全部楼层

边际谱问题

回复xray:
你好,xray,我用我的数据运行hht程序时,当运行到
[E, tt1] = toimage(A,fa,tt,length(tt));   出错如下:
??? Out of memory. Type HELP MEMORY for your
options.
Error in ==> toimage at 64
im(splx,sply) = 0;
是因为我的数据太大吗?但我取[E, tt1] = toimage(A,fa);  时,程序运行正常,我看了toimage.m,是因为这时取了sply = DEFSPL;
  splx = length(t);但是,这样的话,我后面运行边际谱程序时,plot(f,bjp)会出现两个量长度大小不一致的情况。可以帮我一下吗?
谢谢了!
发表于 2010-4-16 18:28 | 显示全部楼层

matlab6.5版本下运行package_emd工具箱的方法

在matlab6.5版本下运行package_emd中的emd函数时会出现这个问题:
imf = emd(s);出现下面的问题:
??? Undefined function or variable 'isvector'.
Error in ==> C:\MATLAB6p5\work\emd.m (init)
On line 744  ==> if ~isvector(x)

这主要是matlab6.5版本下package_emd工具箱中找不到isvector函数,这个问题解决了就可以了。
方法如下:
(1) 首先在matlab6.5安装文件中的toolbox中搜索 isvector;
(2) 搜索完毕后,会出现三个 isvector函数搜索文件;
(3) 选择滤波器设计工具箱下的isvector函数,将其复制到package_emd工具箱下Utils文件夹中;
(4) 在set path中移除所有package_emd工具箱,在重新添加package_emd工具箱,并保存路径即可;
(5) 这样再运行package_emd工具箱中的emd函数就不会出现问题了
          说明:首先还得安装tftb_0.1工具箱,并在set path中保存路径。


如果时在matlab7.0 版本下运行的话,不需要搜索 isvector,但还得安装tftb_0.2工具箱,并在set path中保存路径。
发表于 2010-4-16 18:30 | 显示全部楼层

回复 17,18楼 的帖子

matlab6.5版本下运行package_emd工具箱的方法
在matlab6.5版本下运行package_emd中的emd函数时会出现这个问题:
imf = emd(s);出现下面的问题:
??? Undefined function or variable 'isvector'.
Error in ==> C:\MATLAB6p5\work\emd.m (init)
On line 744  ==> if ~isvector(x)
这主要是matlab6.5版本下package_emd工具箱中找不到isvector函数,这个问题解决了就可以了。
方法如下:
(1) 首先在matlab6.5安装文件中的toolbox中搜索 isvector;
(2) 搜索完毕后,会出现三个 isvector函数搜索文件;
(3) 选择滤波器设计工具箱下的isvector函数,将其复制到package_emd工具箱下Utils文件夹中;
(4) 在set path中移除所有package_emd工具箱,在重新添加package_emd工具箱,并保存路径即可;
(5) 这样再运行package_emd工具箱中的emd函数就不会出现问题了
          说明:首先还得安装tftb_0.1工具箱,并在set path中保存路径。

如果时在matlab7.0 版本下运行的话,不需要搜索 isvector,但还得安装tftb_0.2工具箱,并在set path中保存路径。

评分

1

查看全部评分

发表于 2010-5-27 10:42 | 显示全部楼层
:handshake
发表于 2011-2-21 20:55 | 显示全部楼层
要是都像楼主这样,还怕什么啊
发表于 2011-2-28 15:36 | 显示全部楼层
看后很受益,谢谢!
发表于 2011-3-19 22:26 | 显示全部楼层
很不错啊 啊
发表于 2011-3-28 11:03 | 显示全部楼层
好东西!!!!
发表于 2011-3-29 22:05 | 显示全部楼层
辛苦楼主
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-17 17:21 , Processed in 0.065396 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表