matlab中的函数句柄

Posted

技术标签:

【中文标题】matlab中的函数句柄【英文标题】:Functions handles in matlab 【发布时间】:2011-01-27 16:01:17 【问题描述】:

我很难理解这段 sn-p 代码

output=lsqnonlin(@(argn) fun(arg1,arg2,argn),X0);

我的想法是 lsqnonlin 会递归调用 argn->fun 函数,但我不确定。 对吗?

【问题讨论】:

【参考方案1】:

如果没有函数的代码,就不可能说lsqnonlin 会做什么。但是,您的问题中的函数调用本质上没有递归。

lsqnonlin 的第一个参数是函数句柄,在您问题的函数调用中,您传递了一个匿名函数句柄:

@(argn) fun(arg1,arg2,argn)

这是一个函数,该函数有一个参数argn,以及两个参数(是预设参数)arg1arg2lsqnonlin 使用您传递给它的函数句柄来计算特定点或点向量中的函数值。

您可以在此处阅读有关匿名函数句柄的更多信息:http://www.mathworks.com/help/techdoc/matlab_prog/f4-70115.html#f4-70133

【讨论】:

供您参考:lsqnonlin

以上是关于matlab中的函数句柄的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB 的函数句柄

如何在 Matlab 中测试变量是不是是函数句柄

Matlab:如何获取图形句柄中的所有轴句柄?

matlab中的GUI,轴中的图像循环

MATLAB---fopenfprintf函数

MATLAB中的nargin的用法