还是不行啊
追答不好意思,我忘了sign是个内置函数。你完全可以把后面那个function II=sign(x)删了。而且这种嵌套式的(nested)函数结构有些特殊,不熟悉的话,建议尽量使用function .... end function ... end 这种不进行嵌套的结构。matlab的帮助 “nested functions”里有详细说明
追问恩,谢谢这位大神了!我把程序改成上面这样的确可以了,不过我还是想知道刚才那样哪里错了!
实现这一目的,可以用:
function tt=grad_ddd(x,t)
tt = sum(x(xt)));
end
最后的“end”加不加都行。所以实际有用的就一行。。。
至于那个错误,我没有试验,纯粹猜测可能是因为nested functions 在一些情况下,变量不需要传递就能实现共享。具体的建议你看help,我解释的不一定准确。