24小时热门版块排行榜    

查看: 3426  |  回复: 23

燕子。

铁虫 (小有名气)

[求助] 有个matlab程序,但是运行不下来,求高手 已有2人参与

.m程序已经有,但是输入X后无法运行,总是提示说
At least one input must be given in EEMSCAT

ps:X为一个矩阵集合。如
x1=[1 2 3 4 5 6
        11 12 13 14 15 16
        21 22 23 24 25 26];
x2=[5 6 7 8 9 10
       15 16 17 18 19 20
       25 26 27 28 29 30];
x3=[2 3 4 5 6 7
        32 33 34 35 36 37
        42 43 44 45 46 47];
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : eemscat.m
  • 2013-08-08 09:18:43, 7.14 K

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

MATLAB好辛苦啊
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ydlcsu

木虫 (小有名气)

给出完整的调用程序。估计是你函数调用错误。好好看看那个函数的使用说明啊
2楼2013-08-08 10:36:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yangyangq

铜虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
楼主你是怎么运行这个程序的啊? 不会是 直接F5吧
至少看看程序嘛  

现在我看到的是 你貌似是直接f5 可是没给 程序运行的参数
这个是程序给出的调用方法 NewEEM = eemscat( X,  [20 20],   [10 10],   [10 10]);
BTW 貌似你的那个什么参数 整列不符合这个程序的调用规范哇
3楼2013-08-08 16:32:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fpheonixes

金虫 (小有名气)

程序里面的X.axisscale这个好像没有定义啊?是不是在别的m文件里面??
没懂
4楼2013-08-09 12:48:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

燕子。

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by yangyangq at 2013-08-08 16:32:29
楼主你是怎么运行这个程序的啊? 不会是 直接F5吧
至少看看程序嘛  

现在我看到的是 你貌似是直接f5 可是没给 程序运行的参数
这个是程序给出的调用方法 NewEEM = eemscat( X,  ,   ,   );
BTW 貌 ...

上面举出的x1 x2 x3组合在一起就是X啊!!所以我输入的就是X的数据
MATLAB好辛苦啊
5楼2013-08-27 09:34:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

燕子。

铁虫 (小有名气)

引用回帖:
4楼: Originally posted by fpheonixes at 2013-08-09 12:48:08
程序里面的X.axisscale这个好像没有定义啊?是不是在别的m文件里面??
没懂

这个是给他赋值的,就是已知的矩阵啊!
激发波长,发射波长
MATLAB好辛苦啊
6楼2013-08-27 09:54:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yangyangq

铜虫 (初入文坛)

引用回帖:
5楼: Originally posted by 燕子。 at 2013-08-27 09:34:33
上面举出的x1 x2 x3组合在一起就是X啊!!所以我输入的就是X的数据...

其他参数呢?
7楼2013-08-27 13:24:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yangyangq

铜虫 (初入文坛)


jjdg: 金币+1, 感谢参与 2013-08-27 17:12:24
引用回帖:
6楼: Originally posted by 燕子。 at 2013-08-27 09:54:49
这个是给他赋值的,就是已知的矩阵啊!
激发波长,发射波长...

貌似你就是没有定义好这两个参数
下面是程序给的范例
%           X = dataset(X);  //这儿时你的数据集合
//这而是你需要定义的 激发波长,发射波长
%           X.axisscale{2} = EmAx; % The emission wavelengths (nm)
%           X.axisscale{3} = ExAx; % The excitation wavelengths (nm)
最后再调用函数来得到结果
NewEEM = eemscat( X,  [20 20],   [10 10],   [10 10]);
后面的三个参数是可选的  也就是说你可以像下面这样来调用
NewEEM = eemscat( X)
8楼2013-08-27 14:10:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

燕子。

铁虫 (小有名气)

引用回帖:
8楼: Originally posted by yangyangq at 2013-08-27 14:10:10
貌似你就是没有定义好这两个参数
下面是程序给的范例
%           X = dataset(X);  //这儿时你的数据集合
//这而是你需要定义的 激发波长,发射波长
%           X.axisscale{2} = EmAx; % The emission wave ...

大侠,您好啊!
按照您说的我是这么做的,之前那个问题避免了,不过在88行处又出问题了。

X=[x1 x2 x3 x4];
X.axisscale{2}=530:2:630;
X.axisscale{3}=490:5:585;
NewEEM = eemscatori( X)



后面就出现了这个问题:

Undefined function 'isnan' for input arguments of type 'struct'.

Error in eemscatori (line 88)
Q=isnan(X.data);  %%% NaN element at the original data due to emission out

不知道这是啥情况,求大侠帮帮忙啊!!
MATLAB好辛苦啊
9楼2013-08-27 16:19:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

燕子。

铁虫 (小有名气)

引用回帖:
9楼: Originally posted by 燕子。 at 2013-08-27 16:19:23
大侠,您好啊!
按照您说的我是这么做的,之前那个问题避免了,不过在88行处又出问题了。

X=;
X.axisscale{2}=530:2:630;
X.axisscale{3}=490:5:585;
NewEEM = eemscatori( X)



后面就出现了这个问 ...

上面这个  
NewEEM = eemscatori( X)

实际上是:
NewEEM = eemscat( X)

因为文件改过名字
MATLAB好辛苦啊
10楼2013-08-27 16:20:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 燕子。 的主题更新
信息提示
请填处理意见