phfb.net
当前位置:首页 >> mAtlAB中EvAl函数用法 >>

mAtlAB中EvAl函数用法

eval()函数的功能就是将括号内的字符串视为语句并运行 比如 eval('y1=sin(2)')和语句y1=sin(2)等价 多在循环中使用,可以对多个名字有规则的变量或文件进行操作,比如 for x=1:5 eval(['y',num2str(x),'=',num2str(x^2),';']) end

单引号的地方改成两个单引号就可以了: eval( 'fid=fopen(''a10.txt'',''w'');' )

title(',,'代替\,3);IMFi'例二;subplot(7;IMF5']););':subplot(711);subplot(7;);IMF 看做一个字符串2; eval_r([':)),')就是相当于在matlab命令窗口输入了y1=sin(2)这条命令,y),1;IMF1'.把i (i=1; 看做一个字符串以上三部分整合起来就是 输出

eval 是运行用字符串表示的命令eval要求输入一个字符串作为参数然后把这个字符串的内容当作命令来运行当k=1的时候CEM{k}='cos'num2str(theta) 将theta的值变为字符串,这个字符串是 '0.7854'用 [ ] 括起起来 是将字符串合拼[CEM{k},'(',num2str(theta),')'] 得到的字符串内容是 'cos(0.7854)'然后eval这个字符串,就想当于在命令行输入了这个字符串的内容cos(0.7854)也就是计算0.7854的余弦值所以,程序的结果是得到一个变量y2, 大小是1x3里面三个数分别是 0.7854的 余弦 正弦 和 正切的结果

这个原因很简单啊.就是因为有时候需要根据前边的结果进行操作,尤其是涉及到变量名的时候.给你出个题,你就明白了:请产生f1,f2,f3,f4……f100,其中f1中随机放1个元素,f2中随机放2个元素,f3中随机放三个元素…… 这时候使用eval就很简单了 for index=1:100 eval(['f' num2str(index) '=rand(1,' num2str(index) ');']); end 你想想用什么命令可以直接得到这个结果呢?

feval就是把已知的数据或符号带入到一个定义好的函数句柄中,你看看下面的例子syms tf=@(x,y) x^2+y^2k1=feval(f,1,t)k2=f(1,t)k3=feval(f,1,1)k4=f(1,1)k1 =t^2 + 1k2 =t^2 + 1k3 = 2k4 = 2

eval()函数的功能就是将括号内的字符串视为语句并运行 比如 eval('y1=sin(2)')和语句y1=sin(2)等价 多在循环中使用,可以对多个名字有规则的变量或文件进行操作,比如 for x=1:5 eval(['y',num2str(x),'=',num2str(x^2),';']) end

Matlab中feval函数是计算函数值的,用法有两种,如:a=pi/4; b=feval(@sin,a) c=feval('sin',a) 结果是:b =0.7071 c =0.7071

eval函数是字符串执行函数你所给的代码含义是:cluster1_index =a,其中a为U矩阵第一列中等于U最大值的下标号,如果U的最大值不在第一列中,那么a=0;在的话返回其所在的行号;至于cluster2_index、cluster3_index.就是从2、3列开始找最大值下标了

最好的用法是别用这两个函数.我只能这么说.

网站首页 | 网站地图
All rights reserved Powered by www.phfb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com