matlab中m文件命名的问题

最近看到一个问题迷惑了
function z=my_fun(x)
z=x(1)^2-2*x(1)*x(2)+6*x(1);
然后在matlab界面输入my_fun([2,3])显示Undefined command/function 'myfun'.
请高手给菜鸟指点一下,谢谢。在线等

这是因为函数的文件没有保存到正确路径或者保存名称和函数名称不一致;
对于这个问题,解决方法就是讲文件名改为"my_fun.m"并放在工作路径下。

一般来说,matlab在调用函数时,会从工作路径(用来存放计算结果等的文件夹)搜索"(函数名称).m"这个文件,否则默认为未定义。而因为手动重命名或者其他原因更改了m文件名而没有同时修改函数名时,会出现这种情况。而用matlab保存时,如果文件名不一致,软件会提示更改。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-04
你所保存的函数,不在当前路径。请把你保存my_fun(x)函数的路径设为当前路径就可以了。程序我已经运行过了,没有问题。
第2个回答  2011-06-03
文件名写成my_fun,放到当前的matlab工作目录下追问

确实是这个问题,谢谢

本回答被提问者采纳
第3个回答  2011-06-09
需要吧.M文件放在matlab工作目录的文件夹里 如果没改运行环境的话就是在\matlab\work那个文件夹
第4个回答  2011-06-04
是不是不能用下划线丫

你改成这样试试
function z=myfun1(x)
z=x(1)^2-2*x(1)*x(2)+6*x(1);
相似回答