当前位置:编程学习 > Matlab >>

帮忙看一下matlab程序,我相求一个符号函数的递归调用,但我在命令窗口输入是(3)的时候错误

function f=s(t) syms m n a k if t==1 f=500*m+35*n+m*a+n*a+(k-500*m-35*n-m*a-n*a)*(1-(k-500*m-35*n-m*a-n*a-a*(k-(500*m+35*n+m*a+n*a))/k)/(k-(500*m+35*n+m*a+n*a)))^(500*m+35*n+m*a+n*a); else f=s(t)+(480*m+15*n+20*s(t))*(k-s(t))/k+(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k)*(1-(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k-a*(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k)/k)/(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k))^((480*m+15*n+20*s(t))*(k-s(t))/k); end 错误提示: ??? 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 ==> fliplr at 605 我也不知道我变得函数对不?已知s(1),我是想用递归调用求是s(100) 他们之间的关系为:s(t+1)=s(t)+(480*m+15*n+20*s(t))*(k-s(t))/k+(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k)*(1-(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k-a*(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k)/k)/(k-s(t)-(480*m+15*n+20*s(t))*(k-s(t))/k))^((480*m+15*n+20*s(t))*(k-s(t))/k);
补充:补充一下 是在命令窗口中输入s(3)的时候提示错误
追问:
        	
				
可以帮我解决一下这个问题不?
http://zhidao.zzzyk.com/question/410835497.html?quesup2&oldq=1
答案:else
f=s(t)+(480*m+15*n+20*s(t))*(k-s
(t))/k+(k-s(t)-(480*m+15*n+20*s
(t))*(k-s(t))/k)*(1-(k-s(t)-(480*m
+15*n+20*s(t))*(k-s(t))/k-a*(k-s(t)-
(480*m+15*n+20*s(t))*(k-s(t))/k)/
k)/(k-s(t)-(480*m+15*n+20*s(t))*
(k-s(t))/k))^((480*m+15*n+20*s
(t))*(k-s(t))/k);
end
按照你得意思应该将else里面的s(t)改成s(t-1)要不就是死循环了

上一个:哪位朋友帮我看一下这个画函数图象的matlab变成有什么错误,感激不尽,在线等,急!
下一个:matlab中的vander函数是什么意思

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,