yiquncw 发表于 2009-8-4 22:35

问:错误代码的解决方法

新手
在M文件中程序如下:
function ff=nc(x,y,flag,pr)
ff=;
y0=;
pr=0.7;
=ode45('nc',,y0,[],pr);
plot(eta,ff(:,1))

命令窗口中显示错误提示:
??? Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N)
to change the limit.Be aware that exceeding your available stack space can
crash MATLAB and/or your computer.
Error in ==> D:\matlab\toolbox\symbolic\@sym\sym.m (trim)
On line 577==> s=fliplr(deblank(fliplr(deblank(s))));
??? Input argument 'y' is undefined.
Error in ==> D:\matlab\work\nc.m
On line 2==> ff=;
该怎么解决?
其中,Input argument 'y' is undefined.这句提示在运行其他程序时也总是出现。
matlab版本是6.5

sogooda 发表于 2009-8-5 10:38

Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N)
to change the limit.Be aware that exceeding your available stack space can
crash MATLAB and/or your computer.

这个问题可能是由于方程刚性很大造成的,试试ode15s求解器。

yiquncw 发表于 2009-8-5 10:48

这个程序是教程上的例子,有程序有图,有没有其他的原因呢?

另外,Input argument 'y' is undefined,这个错误遇到的最多。
论坛里做分岔、混沌分析的源程序也是出这个错,运行不了,请指教。。。

ChaChing 发表于 2009-8-5 11:11

估计LZ的函数使用有问题, 请自行看下function的帮助文献!
LZ有将下列另存一档吗?
function ff=nc(x,y,flag,pr)
ff=;

图是这样吗!

[ 本帖最后由 ChaChing 于 2009-8-5 11:21 编辑 ]

yiquncw 发表于 2009-8-6 15:08

问题解决了,多谢

mustangyhz 发表于 2011-7-8 11:44

Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N)
to change the limit.
这个问题你是怎么解决的?能告诉我吗?如果可以请发 到32415684@qq.com,或直接加我qq联系,谢谢!
页: [1]
查看完整版本: 问:错误代码的解决方法